Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: revert "chore: don't strip bb wasm" #6068

Closed
wants to merge 2 commits into from

Conversation

ludamad
Copy link
Collaborator

@ludamad ludamad commented Apr 26, 2024

Reverts #5743

This proved too big

@AztecBot
Copy link
Collaborator

AztecBot commented Apr 26, 2024

Benchmark results

No metrics with a significant change found.

Detailed results

All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.

This benchmark source data is available in JSON format on S3 here.

L2 block published to L1

Each column represents the number of txs on an L2 block published to L1.

Metric 8 txs 32 txs 64 txs
l1_rollup_calldata_size_in_bytes 772 772 772
l1_rollup_calldata_gas 6,808 6,832 6,820
l1_rollup_execution_gas 587,289 587,313 587,301
l2_block_processing_time_in_ms 1,473 (-2%) 5,380 10,357 (-2%)
l2_block_building_time_in_ms 19,559 76,354 152,395
l2_block_rollup_simulation_time_in_ms 19,354 75,597 150,915
l2_block_public_tx_process_time_in_ms 8,915 34,904 69,851

L2 chain processing

Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric 5 blocks 10 blocks
node_history_sync_time_in_ms 16,484 (+1%) 31,121 (+1%)
node_database_size_in_bytes 20,799,568 37,412,944
pxe_database_size_in_bytes 29,868 59,425

Circuits stats

Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit circuit_simulation_time_in_ms circuit_input_size_in_bytes circuit_output_size_in_bytes
private-kernel-init 163 (-1%) 47,763 32,254
private-kernel-inner 187 81,070 32,254
private-kernel-ordering 176 (+1%) 58,008 49,589
base-parity 9.06 (-2%) 128 64.0
root-parity 101 27,064 64.0
base-rollup 12,146 111,202 957
root-rollup 60.2 (-1%) 11,518 821
public-kernel-app-logic 1,615 62,569 26,341
public-kernel-tail 4,485 168,842 3,953
merge-rollup 3,180 2,760 957
public-kernel-teardown 133 (-3%) 62,569 34,895
public-kernel-setup 143 (-3%) 62,569 34,895

Tree insertion stats

The duration to insert a fixed batch of leaves into each tree type.

Metric 1 leaves 16 leaves 64 leaves 128 leaves 512 leaves 1024 leaves 2048 leaves 4096 leaves 32 leaves
batch_insert_into_append_only_tree_16_depth_ms 11.0 (-1%) 17.7 (-1%) N/A N/A N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_16_depth_hash_count 16.7 31.8 N/A N/A N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_16_depth_hash_ms 0.640 (-1%) 0.546 (-1%) N/A N/A N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_32_depth_ms N/A N/A 51.7 (-1%) 80.0 259 502 (-1%) 977 1,935 N/A
batch_insert_into_append_only_tree_32_depth_hash_count N/A N/A 95.9 159 543 1,055 2,079 4,127 N/A
batch_insert_into_append_only_tree_32_depth_hash_ms N/A N/A 0.530 (-1%) 0.494 0.473 0.469 (-1%) 0.464 0.463 N/A
batch_insert_into_indexed_tree_20_depth_ms N/A N/A 60.6 119 (-1%) 373 739 (-1%) 1,468 2,901 N/A
batch_insert_into_indexed_tree_20_depth_hash_count N/A N/A 105 208 692 1,363 2,707 5,395 N/A
batch_insert_into_indexed_tree_20_depth_hash_ms N/A N/A 0.534 0.536 (-1%) 0.509 0.509 (-1%) 0.505 0.505 N/A
batch_insert_into_indexed_tree_40_depth_ms N/A N/A N/A N/A N/A N/A N/A N/A 66.7 (-1%)
batch_insert_into_indexed_tree_40_depth_hash_count N/A N/A N/A N/A N/A N/A N/A N/A 108
batch_insert_into_indexed_tree_40_depth_hash_ms N/A N/A N/A N/A N/A N/A N/A N/A 0.587

Miscellaneous

Transaction sizes based on how many contract classes are registered in the tx.

Metric 0 registered classes 1 registered classes
tx_size_in_bytes 51,687 537,196

Transaction size based on fee payment method

Metric native fee payment method fpc_public fee payment method fpc_private fee payment method
tx_with_fee_size_in_bytes 897 1,145 1,345

Transaction processing duration by data writes.

Metric 0 new note hashes 1 new note hashes 2 new note hashes
tx_pxe_processing_time_ms 1,290 (-1%) 927 3,574 (-4%)
Metric 1 public data writes 2 public data writes 3 public data writes 4 public data writes 5 public data writes 8 public data writes
tx_sequencer_processing_time_ms 887 799 (-1%) 1,452 (-1%) 941 (-1%) 2,227 (-2%) 1,124 (-2%)

@Savio-Sou
Copy link
Member

Would be great to get a non-stripped version published separately (#5647) instead of / following a revert.

Bb's stack traces are great for easing both Noir users and us (Noir Dev Rel + engineering) to gather insights on bb-related Issues.

@ludamad
Copy link
Collaborator Author

ludamad commented Apr 30, 2024

I can revisit that with cycles, but per Charlie we'd just prefer to keep this as-is if no one is complaining about the uncompressed size (compressed is just +2MB)

@ludamad ludamad closed this Apr 30, 2024
@ludamad ludamad reopened this May 21, 2024
@ludamad ludamad closed this May 23, 2024
@ludamad ludamad deleted the revert-5743-ad/dont-strip-bb-wasm branch August 22, 2024 15:01
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.

3 participants