Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Switches only
txEffectsTreeNodeHashto the existing synchronous Poseidon helper through the initializedcrypto/syncentrypoint.TX_EFFECTS_TREEdomain separator, input serialization, and outputBenchmark methodology and the reusable harness are in #260. The harness files and raw output are intentionally absent from this PR.
Same-revision transport benchmark
Measured on this PR's
origin/mainbase and toolchain in two focused runs: old production UDS hashing versus UDS leaves with the new sync-SHM internal hasher. Each scenario reports the median of 15 samples after three warmups. Times are milliseconds per complete operation.The earlier 5–8% expectation was a hypothesis. The measured complete-commitment result is workload- and tree-size-dependent: 7.5% for the 64-transaction small-category case, 11.8% for sparse/64, and no detectable change when large leaf hashes dominate.
Internal tree and membership
These 64-leaf cases use precomputed leaves, isolating the shared internal-node path.
Checkpoint benchmark
Before and after runs used the same current-main revision and toolchain. Each case has three warmups and 15 measured samples; every sample creates a fresh builder and world-state fork. Mixed direction and small differences make these checkpoint-level results inconclusive.
Responsiveness
Median of three saturated probe rounds with four concurrent 64-transaction small-category commitment loops. This is synthetic saturation, not a node RPC latency prediction.
Throughput and latency differences in this probe are within run-to-run noise; importantly, selectively synchronous internal hashing does not reproduce the roughly one-second starvation seen when all category and leaf hashing is synchronous.
Validation
./bootstrap.shfromyarn-projectpassed after updating to current main.BB_BINARY_PATHforced to a nonexistent path, exercising the synchronous WASM fallback.Raw samples remain in ignored local output. Blob accumulator batching, block-header trees, and the full sequencer benchmark are out of scope.