Skip to content

Comments

test: benchmark parity-base with 48-core concurrency#20703

Draft
ludamad wants to merge 2 commits intomerge-train/barretenbergfrom
ad/test/benchmark-parity-base-concurrency
Draft

test: benchmark parity-base with 48-core concurrency#20703
ludamad wants to merge 2 commits intomerge-train/barretenbergfrom
ad/test/benchmark-parity-base-concurrency

Conversation

@ludamad
Copy link
Collaborator

@ludamad ludamad commented Feb 19, 2026

Profile single-threaded operations in parity-base using HARDWARE_CONCURRENCY=48 and chonk_bench with bootstrap.sh build_bench. Identify long-running operations that could benefit from parallelization or optimization.

@ludamad ludamad added ci-draft Run CI on draft PRs. ci-full Run all master checks. labels Feb 19, 2026
Parallelize six serial bottlenecks identified by BB_BENCH profiling:

1. construct_trace_data (trace_to_polynomials.cpp): Parallelize wire writes
   and selector writes per-block. Stage copy cycle entries per-thread to
   avoid races, merge sequentially after all blocks.

2. compute_permutation_mapping cycle loop (permutation_lib.hpp): Each cycle
   writes to disjoint (row, col) positions — wrap in parallel_for_heuristic.

3. construct_lookup_read_counts (composer_lib.hpp): Pre-compute table offsets,
   process tables in parallel via parallel_for.

4. construct_lookup_table_polynomials (composer_lib.hpp): Same offset
   pre-computation pattern, parallel table data copy.

5. construct_databus_polynomials (prover_instance.cpp): Parallelize all four
   databus column loops (calldata, secondary_calldata, return_data, databus_id).

6. add_ram_rom_memory_records_to_wire_4 (oink_prover.cpp): Parallelize both
   read and write record loops — each gate_idx is unique.
@ludamad ludamad force-pushed the ad/test/benchmark-parity-base-concurrency branch from 36ecb65 to a4fe074 Compare February 20, 2026 01:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-draft Run CI on draft PRs. ci-full Run all master checks.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant