refactor: reduce note and nullifier constants#7255
Conversation
|
This stack of pull requests is managed by Graphite. Learn more about stacking. Join @LHerskind and the rest of your teammates on |
Changes to circuit sizes
🧾 Summary (100% most significant diffs)
Full diff report 👇
|
6051624 to
a992701
Compare
a992701 to
0697924
Compare
Benchmark resultsMetrics with a significant change:
Detailed resultsAll benchmarks are run on txs on the This benchmark source data is available in JSON format on S3 here. Proof generationEach column represents the number of threads used in proof generation.
L2 block published to L1Each column represents the number of txs on an L2 block published to L1.
L2 chain processingEach column represents the number of blocks on the L2 chain where each block has 8 txs.
Circuits statsStats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.
Stats on running time collected for app circuits
AVM SimulationTime to simulate various public functions in the AVM.
Public DB AccessTime to access various public DBs.
Tree insertion statsThe duration to insert a fixed batch of leaves into each tree type.
MiscellaneousTransaction sizes based on how many contract classes are registered in the tx.
Transaction size based on fee payment method | Metric | | |

Reduces the
MAX_NOTE_HASH_READ_REQUESTS_PER_CALL,MAX_NULLIFIER_READ_REQUESTS_PER_CALL,MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALLto16to align better what is possible, e.g., we should not allow doing more read requests than what you would be able to "read" and check is up to date. Also updating the TX versions.Note, there might be a slight edge case, namely that if doing
MAX_NOTE_HASH_READ_REQUESTS_PER_TXyou might not be able to really emit MAX nulliifier because one of them was used for the tx hash.