Generated: 2026-02-20
| Property | Value |
|---|---|
| Model | MacBook Pro (Mac16,6) |
| Chip | Apple M4 Max |
| CPU Cores | 16 (12 performance + 4 efficiency) |
| Memory | 128 GB |
| Architecture | ARM64 (aarch64-apple-darwin) |
| OS | Darwin 24.6.0 |
| Firmware | 11881.140.96 |
| Property | Value |
|---|---|
| Commit Hash | 0904e2c610ab49bf6ee13cf349c05c8621f23cd2 |
| Commit Message | feat: account builder helper for schema commitment (#2419) |
| Author | igamigo (ignacio.amigo@lambdaclass.com) |
| Date | Wed Feb 18 15:51:16 2026 -0300 |
| Branch | next |
| Property | Value |
|---|---|
| Rust Version | rustc 1.93.1 (stable) |
| Cargo Version | cargo 1.93.0 |
| Features | concurrent |
| Build Profile | release (for benchmarks) |
These benchmarks measure the number of VM cycles consumed by each transaction stage.
| Stage | Cycles |
|---|---|
| Prologue | 3,104 |
| Notes Processing | 1,690 |
| Note Execution | 1,650 (1 note) |
| Transaction Script Processing | 42 |
| Epilogue | 63,938 |
| ├─ Auth Procedure | 62,641 |
| └─ After TX Cycles Obtained | 571 |
| Total Cycles | 70,424 |
| Trace Length | 131,072 (next power of 2) |
| Stage | Cycles |
|---|---|
| Prologue | 4,096 |
| Notes Processing | 3,383 |
| Note Execution | 3,334 (2 notes: 1,684 + 1,650) |
| Transaction Script Processing | 42 |
| Epilogue | 63,910 |
| ├─ Auth Procedure | 62,627 |
| └─ After TX Cycles Obtained | 571 |
| Total Cycles | 74,765 |
| Trace Length | 131,072 (next power of 2) |
| Stage | Cycles |
|---|---|
| Prologue | 1,646 |
| Notes Processing | 32 |
| Note Execution | 0 (no input notes) |
| Transaction Script Processing | 1,502 |
| Epilogue | 64,764 |
| ├─ Auth Procedure | 62,873 |
| └─ After TX Cycles Obtained | 571 |
| Total Cycles | 67,944 |
| Trace Length | 131,072 (next power of 2) |
These benchmarks measure wall-clock time using Criterion.
| Transaction Type | Mean Time | Range |
|---|---|---|
| Consume single P2ID note | 6.25 ms | [6.24 ms - 6.26 ms] |
| Consume two P2ID notes | 7.88 ms | [7.86 ms - 7.90 ms] |
| Transaction Type | Mean Time | Range |
|---|---|---|
| Consume single P2ID note | 460.35 ms | [456.95 ms - 463.73 ms] |
| Consume two P2ID notes | 467.18 ms | [463.09 ms - 472.08 ms] |
-
Epilogue Dominance: The epilogue (specifically the auth procedure) accounts for approximately 90% of total cycles in all transaction types.
-
Note Processing Scaling: Consuming two P2ID notes roughly doubles the notes processing and note execution cycles compared to a single note, as expected.
-
Proving Time: Transaction proving takes approximately 74x longer than execution alone (460ms vs 6.2ms for single P2ID consumption).
-
Trace Length Consistency: All transactions fit within a 131,072 cycle trace length (2^17), indicating consistent proof generation requirements.
-
Minimal Script Overhead: Transaction script processing is negligible (42-1502 cycles) compared to the epilogue overhead.
The full cycle counting results are available in bin/bench-transaction/bench-tx.json.