Skip to content

[121] Bench: crossover point for batch vs individual send#140

Merged
truthixify merged 2 commits into
wraith-protocol:developfrom
Max-Owolabi:fix/121-bench-crossover-point-for-batch-vs-individual-send
Jul 26, 2026
Merged

[121] Bench: crossover point for batch vs individual send#140
truthixify merged 2 commits into
wraith-protocol:developfrom
Max-Owolabi:fix/121-bench-crossover-point-for-batch-vs-individual-send

Conversation

@Max-Owolabi

@Max-Owolabi Max-Owolabi commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Closes #121


Summary

  • Adds stellar/bench-crossover cargo-bench harness comparing N individual stealth-sender::send calls vs one stealth-batch-sender::batch_send for N in {1, 2, 5, 10, 15, 20}.
  • Records Soroban instruction gas and wall-clock (total + per-entry), writes chart data to stellar/bench/data/, and embeds the crossover in PERF.md.
  • Wires the bench into CI; enables testutils features on sender/announcer/batch-sender so the harness links cleanly; wires batch-sender unit tests.

Results

Instruction crossover at N = 1 — batch stays cheaper through N=20 (batch skips the cross-contract announce path).

Test plan

  • cargo bench -p wraith-stellar-bench-crossover --bench crossover
  • cargo test -p stealth-batch-sender (host, rlib)
  • cargo check -p stealth-batch-sender --target wasm32-unknown-unknown
  • CI stellar job green

Closes 121

Max-Owolabi and others added 2 commits July 24, 2026 13:33
Add a cargo-bench harness that compares N stealth-sender::send calls against
one stealth-batch-sender::batch_send for N in {1,2,5,10,15,20}, records
instruction gas and wall-clock, and documents the N=1 crossover in PERF.md.

Closes 121

Co-authored-by: Cursor <cursoragent@cursor.com>
Keep crossover cargo-bench CI steps alongside non-blocking WASM build, and
retain batch-sender unit test module wiring.

Co-authored-by: Cursor <cursoragent@cursor.com>
@drips-wave

drips-wave Bot commented Jul 24, 2026

Copy link
Copy Markdown

@Max-Owolabi Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@Max-Owolabi

Copy link
Copy Markdown
Contributor Author

CI is waiting on first-time contributor workflow approval for this fork PR. Once approved, the stellar job will run cargo test --workspace and cargo bench -p wraith-stellar-bench-crossover --bench crossover. Thanks!

@truthixify
truthixify merged commit c0ffee3 into wraith-protocol:develop Jul 26, 2026
6 checks passed
@truthixify

Copy link
Copy Markdown
Contributor

In, thanks. Now we have the answer for when batch beats individual, useful for both docs and tuning.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bench: crossover point for batch vs individual send

2 participants