Last active
April 5, 2026 14:44
-
-
Save huitseeker/293b39274bd521bbbbd703f36fc624f7 to your computer and use it in GitHub Desktop.
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
| { | |
| "consume single P2ID note": { | |
| "prologue": 3501, | |
| "notes_processing": 1761, | |
| "note_execution": { | |
| "0x62e6fe0d5f649b395b5c3f63736fd7b469fd1e0e867c441696d1a70324d3f9a2": 1721 | |
| }, | |
| "tx_script_processing": 42, | |
| "epilogue": { | |
| "total": 72351, | |
| "auth_procedure": 70846, | |
| "after_tx_cycles_obtained": 612 | |
| }, | |
| "poseidon2": { | |
| "hash_chiplet_rows": 120352, | |
| "deduplicated_hash_chiplet_rows": 103072, | |
| "rows_per_permutation": 32, | |
| "total_permutations": 3761, | |
| "deduplicated_permutations": 3221, | |
| "duplicate_permutations": 540, | |
| "sampled_work": [ | |
| { | |
| "op": "HPERM", | |
| "counting_rule": "each invocation contributes 1 Poseidon2 permutation" | |
| }, | |
| { | |
| "op": "MPVERIFY", | |
| "counting_rule": "each Merkle path node contributes 1 Poseidon2 permutation" | |
| }, | |
| { | |
| "op": "MRUPDATE", | |
| "counting_rule": "each Merkle path node contributes 2 Poseidon2 permutations" | |
| }, | |
| { | |
| "op": "VM control-block hashing", | |
| "counting_rule": "included when the VM routes the work through the hash chiplet" | |
| }, | |
| { | |
| "op": "Duplicate-cycle filter", | |
| "counting_rule": "deduplicated counts keep one copy of each distinct 32-row hash-chiplet cycle" | |
| } | |
| ], | |
| "deduplication_rule": "two permutations are considered duplicates when all 32 rows match across selector columns, 12-limb hasher state, and node index", | |
| "duplicate_source": [ | |
| { | |
| "source": "Memoized control-block hashing", | |
| "why_it_repeats": "the VM can reuse an already-built control-block hash trace by copying the prior 32-row cycle" | |
| }, | |
| { | |
| "source": "Memoized basic-block hashing", | |
| "why_it_repeats": "the VM can reuse an already-built basic-block hash trace by copying the prior 32-row cycle" | |
| } | |
| ], | |
| "excluded_work": "host-side Rust Poseidon2 calls outside VM execution are not counted" | |
| } | |
| }, | |
| "consume two P2ID notes": { | |
| "prologue": 4537, | |
| "notes_processing": 3600, | |
| "note_execution": { | |
| "0x51e09a95d1aa86daa64a59ce960c7a6baba576decf870aa4500e9847c3740bf9": 1721, | |
| "0xf11434d602ac1f69b171c08d5b3352c59c57ecec02e191c61b2a6599269a12c3": 1830 | |
| }, | |
| "tx_script_processing": 42, | |
| "epilogue": { | |
| "total": 72299, | |
| "auth_procedure": 70820, | |
| "after_tx_cycles_obtained": 612 | |
| }, | |
| "poseidon2": { | |
| "hash_chiplet_rows": 138208, | |
| "deduplicated_hash_chiplet_rows": 104960, | |
| "rows_per_permutation": 32, | |
| "total_permutations": 4319, | |
| "deduplicated_permutations": 3280, | |
| "duplicate_permutations": 1039, | |
| "sampled_work": [ | |
| { | |
| "op": "HPERM", | |
| "counting_rule": "each invocation contributes 1 Poseidon2 permutation" | |
| }, | |
| { | |
| "op": "MPVERIFY", | |
| "counting_rule": "each Merkle path node contributes 1 Poseidon2 permutation" | |
| }, | |
| { | |
| "op": "MRUPDATE", | |
| "counting_rule": "each Merkle path node contributes 2 Poseidon2 permutations" | |
| }, | |
| { | |
| "op": "VM control-block hashing", | |
| "counting_rule": "included when the VM routes the work through the hash chiplet" | |
| }, | |
| { | |
| "op": "Duplicate-cycle filter", | |
| "counting_rule": "deduplicated counts keep one copy of each distinct 32-row hash-chiplet cycle" | |
| } | |
| ], | |
| "deduplication_rule": "two permutations are considered duplicates when all 32 rows match across selector columns, 12-limb hasher state, and node index", | |
| "duplicate_source": [ | |
| { | |
| "source": "Memoized control-block hashing", | |
| "why_it_repeats": "the VM can reuse an already-built control-block hash trace by copying the prior 32-row cycle" | |
| }, | |
| { | |
| "source": "Memoized basic-block hashing", | |
| "why_it_repeats": "the VM can reuse an already-built basic-block hash trace by copying the prior 32-row cycle" | |
| } | |
| ], | |
| "excluded_work": "host-side Rust Poseidon2 calls outside VM execution are not counted" | |
| } | |
| }, | |
| "create single P2ID note": { | |
| "prologue": 1766, | |
| "notes_processing": 32, | |
| "note_execution": {}, | |
| "tx_script_processing": 1673, | |
| "epilogue": { | |
| "total": 73243, | |
| "auth_procedure": 71058, | |
| "after_tx_cycles_obtained": 612 | |
| }, | |
| "poseidon2": { | |
| "hash_chiplet_rows": 116000, | |
| "deduplicated_hash_chiplet_rows": 100448, | |
| "rows_per_permutation": 32, | |
| "total_permutations": 3625, | |
| "deduplicated_permutations": 3139, | |
| "duplicate_permutations": 486, | |
| "sampled_work": [ | |
| { | |
| "op": "HPERM", | |
| "counting_rule": "each invocation contributes 1 Poseidon2 permutation" | |
| }, | |
| { | |
| "op": "MPVERIFY", | |
| "counting_rule": "each Merkle path node contributes 1 Poseidon2 permutation" | |
| }, | |
| { | |
| "op": "MRUPDATE", | |
| "counting_rule": "each Merkle path node contributes 2 Poseidon2 permutations" | |
| }, | |
| { | |
| "op": "VM control-block hashing", | |
| "counting_rule": "included when the VM routes the work through the hash chiplet" | |
| }, | |
| { | |
| "op": "Duplicate-cycle filter", | |
| "counting_rule": "deduplicated counts keep one copy of each distinct 32-row hash-chiplet cycle" | |
| } | |
| ], | |
| "deduplication_rule": "two permutations are considered duplicates when all 32 rows match across selector columns, 12-limb hasher state, and node index", | |
| "duplicate_source": [ | |
| { | |
| "source": "Memoized control-block hashing", | |
| "why_it_repeats": "the VM can reuse an already-built control-block hash trace by copying the prior 32-row cycle" | |
| }, | |
| { | |
| "source": "Memoized basic-block hashing", | |
| "why_it_repeats": "the VM can reuse an already-built basic-block hash trace by copying the prior 32-row cycle" | |
| } | |
| ], | |
| "excluded_work": "host-side Rust Poseidon2 calls outside VM execution are not counted" | |
| } | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment