Skip to content

Bind every PCS opening to an immutable commitment-time anchor - #600

Open
kevaundray wants to merge 42 commits into
leanEthereum:riscv-explorationfrom
kevaundray:kw/whir-anchor-20261010
Open

kevaundray wants to merge 42 commits into
leanEthereum:riscv-explorationfrom
kevaundray:kw/whir-anchor-20261010

Conversation

@kevaundray

@kevaundray kevaundray commented Oct 10, 2026 •

Copy link
Copy Markdown
Collaborator

This PR was created with Claude Code, prompted by @kevaundray.

Summary

Bind every public PCS opening to a complete immutable commitment record: Merkle root, public shape, exact original logical duplex context, the commitment-time extension-field point and its advertised MLE value. The original commitment binds whir-anchor-v1, shape and occupied lanes before its root and anchor draw. The point is derived once, not transmitted or resampled.

The normal merge 15a733d integrates upstream riscv-exploration at 37c1525: zero-knowledge leaves (#619 to #624: one-time-padded transcript messages, the hiding PCS commitment and opening, the zk outer proof, ZK leaf proofs and aggregation trees over ZK leaves), flock bit-pass tasks (#631), and the module layout and API cleanup of #633 and #634. The anchored record now lives on the new layout: pcs::whir::commit builds the anchored record over upstream's BaseCommitment, pcs::stack::{CommittedStack, StackCommitment, Statement} carry it (StackWeight in stack/weight.rs adds the occupied-prefix anchor), leanvm_core/src/commitment.rs reads it, and the WHIR verifier is upstream's, with this branch's check_config_shape guard, WeightAt terminal weight and named verifier stages. c5acc61 is a clippy-only follow-up. The earlier normal merge cdb3423 integrated upstream at dfb7570, #630's reordering: the commitment, then flock's reductions, the bus, the table sumcheck and the opening, in the CPU prover and verifier and in the recursion machine's prover and TableArgument::verify_core, which every node circuit runs. Flock's reductions now follow the completed anchored commitment record (marker, shape, raw root, anchor point and value), and the bus and table challenges follow flock's messages; every opening still checks its whir-opening-v1 frame against that unchanged record before gamma, the ring map and lambda, with flock's ring-switched claims among the claims it binds. The pinned test offsets that locate flock's first message start past the complete record. The earlier normal merges bbeb1ba and 39ec6aa integrated upstream at 392e187, including program-owned signer sets (#611, #612, #615), claim sets and their union in rows (#613), claim-set trees (#614), height tiers (#618), the union binding fix (#626), lone children and absent places at claim-set nodes (#627) and the stacked-opening lint (#609). The earlier merge 75d4562 of #607's spongefish-style transcript and #608's claim-width checks, and the merges of #599's typed PCS rewrite, #555's scalar/batched Merkle hashing, #604's aligned AVX-512 loads and Aeneas preparation 7de1b28 remain intact. The public entry points are pcs::stack::CommittedStack, StackCommitment and Statement. WHIR kernels and dense-weight interfaces remain crate-private, not public root-only bypasses.

The #607 migration preserves session-IV derivation, public-instance absorption, raw-byte root messages, codec/session APIs, zero-work no-op and positive-work nonce framing, hint framing and squeezed final digests. Native and constrained Rows use identical anchor framing. The commitment header is four F192 messages and one raw 32-byte root. An opening checks its whir-opening-v1 frame after metadata/configuration/statement/point guards and before gamma, the ring map and lambda. Its root and original context CV are raw 32-byte messages, not the historical two-scalar encodings. The remaining fields retain their order: shape, pending-byte count/first/previous, current squeeze cursor, normalized pending words, original point and value. The frame is 6 + log_n + ceil(pending_bytes / 24) F192 messages plus 64 raw bytes. Pending words use canonical zero padding in the final partial word and scalar.

Context capture does not flush, hash, sample, allocate or emit recursion rows. Cached output is excluded only because it is derivable for valid privately constructed duplex states; there is no arbitrary restore API. Openings can retain the original record across genuinely separate sessions. Anchor weights are restricted to occupied lanes, including non-power-of-two prefixes and omitted zero-tail lanes.

Every tree circuit reads each child's commitment through the same anchored record and verifies its opening in the same framing as the native verifier: first-level nodes, nodes of a tree of outputs, claim-set nodes of either tier (absent places included) and the wrap of a large proof. The pinned leanvm-tree-12 session tags in the tree and claim-set layout tests were refreshed for this branch's program digest domain; that domain is unchanged by the merge of dfb7570, so they still pass as pinned, with unchanged heights and statement layouts.

Zero-knowledge leaves: hiding commitments are not anchored

This branch refuses anchoring for hiding commitments rather than covering them. A plain commitment publishes its anchor value, the stack's multilinear extension at a point drawn right after the root. On the hiding commitment of #621 that value would be one more evaluation of the hidden witness, which the PCS annex's zero-knowledge argument (sec:pcs-zk: padding of q_0 + 2 coefficients per lane, the uniform group reserved for the lane fold) does not account for; sending it under a one-time pad is impossible for the zk key commitment, whose keys are the pads. So both hiding commitments, the ZK stack's and the key commitment's, keep upstream's root-only commitment and opening, and a zero-knowledge proof's core, its outer proof and the rows of a tree over ZK leaves run upstream's unanchored protocol unchanged:

  • CommittedStack::new(ps, ..) (anchored) asserts a configuration without padding; CommittedStack::new_hiding stays root-only.
  • StackCommitment::receive refuses a padding configuration and the new StackCommitment::hiding(root, ..) refuses a plain one, both with WhirError::Anchoring; leanvm's Commitment::read picks by the announced shape's hiding flag.
  • Weighted openings (open_weighted, verify_weighted), which only the key commitment takes, are refused on anchored commitments.
  • The zk Recorder forwards the new verifier methods (context, zero_k, ensure_root_eq, begin_scope, end_scope) and implements PublicMle for any inner verifier that does.

Annex B gains a "No anchor" paragraph in sec:pcs-zk; Annex F and section 8 say the ZK stack's commitment carries no anchor.

Reserved protocol identities

CPU envelope LVMP 18, zero-knowledge envelope LVMZ 2, tree envelope LVMT 20, program digest domain leanvm-rv64im-14, tree transcript domain leanvm-tree-17. Version checks compare only with upstream riscv-exploration at 37c1525. These identities are above upstream's LVMP 17, LVMZ 1, LVMT 19, rv64im-13 and tree-16 respectively. LVMZ moves because a zero-knowledge proof's session names the program digest, whose domain this branch changes; its wire format is otherwise upstream's. The CPU session tags are upstream's (v2, and v1 for zero knowledge), and the claim-union and reduction tags are unchanged. Legacy and foreign envelopes reject before interpreting their bodies.

Security and correspondence boundary

Proof PR #551's checked anchor mathematics covers the ideal interactive model: a root-fixed supported list precedes a fresh uniform extension-field point, and arbitrary advertised values select at most one candidate outside a separately bounded ambiguity event. The 2^-124 anchor ambiguity term is not a whole-protocol security level.

PR #551's existing DuplexRefinement/Framing/WHIRNativeSecurity chain models the historical pre-#607 #552 transcript, with the #552 byte-identity audit pinned to its historical commit. Its corrected adaptive ideal-compression coupling loss is min(1,(2Q^2-Q)/2^256). Its conditional 2^-42 endpoint concerns the modeled historical unanchored event under explicit experiment/resource premises. It does not currently apply to #607's session-IV, raw-byte roots, new proof-of-work or squeezed digest, or to this branch's new anchor frames. The source adapter and anchored Fiat-Shamir composition are open proof gaps. The completed original-statement reset extractor is interactive only, with exact joint failure 1/2^50 + 2^-s and checked round/attempt/resource bounds; it is not a Fiat-Shamir knowledge theorem.

No whole-system 128-bit security level, complete deployed knowledge-soundness theorem, unconditional BLAKE2s security or universal Rust-to-Lean equivalence is claimed. Aeneas extraction is a separate source-pinned project. The ordinary full-public-view replacement shortcut for deterministic BLAKE2s cannot justify a small loss when efficient known-answer observers are allowed.

The complete caller statement must be fixed before opening gamma/lambda: values must already be observed or public and seeded; coordinates must be public constants or earlier verifier challenges; addressing and shape must follow that bound layout. Record identity binding does not bind arbitrary external claims. The production CPU and recursion callers retain their earlier Flock/bus/table observations and seeded layouts. #609's disallowed-methods lint on CommittedStack::open and StackCommitment::verify applies here too: the anchored Commitment::verify keeps its expectation, and this branch's test callers with fixed public statements carry one.

Exercised verification

On c5acc61 (the clippy-only follow-up of the merge 15a733d): Rust 1.99 formatting check; complete-workspace all-target release Clippy under Rust 1.97 and 1.99 with the haswell pin, Rust 1.99 native, the Rust 1.99 AVX-512 leg, AVX2 with VPCLMULQDQ and with GFNI/AES, the system-allocator CLI leg and the ARM64 neoverse-n2 cross leg (compiled, not executed); release rustdoc. On 15a733d: the complete Rust 1.97 release workspace suite with four test threads (536 tests). A separate public API caller built in release proved, serialized, decoded and verified CPU LVMP18 proofs, first-level and node LVMT20 proofs of a tree of outputs, a two-tier claim-set tree (small first levels, a large node, a wrapped large child under a large node and under a narrowing small node), zero-knowledge LVMZ2 proofs and a first-level LVMT20 proof over zero-knowledge leaves. It rejected every legacy CPU, zero-knowledge and tree envelope version, foreign envelopes, foreign programs and tree shapes, wrong outputs, wrong claim sets and truncation. New unit tests cover the refusals between anchored and hiding commitments and the anchor in the stack weight's fill and lane folds alongside an unanchored weight.

CI completed for c5acc61, on GitHub's merge with upstream 37c1525. Counts is the sole failing check, as detailed below. Every other non-skipped check passed, including Test, MSRV, Rustdoc, Rustfmt, Clippy on x86-64, ARM64 and RISC-V guests, Miri, the AVX2/GFNI, AVX2/VPCLMULQDQ and NEON jobs, ACT4, check-pdf, Cargo deny, unused dependencies, the Android and iOS release builds, the mobile benchmark source validation and the benchmark jobs. The workflow's build-pdf check was skipped.

Counts

The gate and baseline are unchanged. The completed Counts run compares c5acc61 with upstream at 37c1525 and fails on exactly these four row increases, the same rows as before the merge:

Aggregation Base rows Anchored rows Increase Proven rows, unchanged Committed words, unchanged
leanxmss-400 2-to-1 first 138529 138941 412 231424 5981184
leanxmss-400 2-to-1 node 119413 119792 379 231424 5981184
leanxmss-400 4-to-1 first 275681 276497 816 461824 11962368
leanxmss-400 4-to-1 node 250195 250973 778 461824 11962368

Every other program's cycles, proven rows and committed words equal the base's. The added work checks the immutable commitment record and evaluates the supported anchor weights inside the recursion verifier. A bounded duplicate-work review found each frame field checked once against its distinct expected record field; removing those comparisons would weaken identity binding. No reduction was landed merely to satisfy the gate. These measurements do not increase proven rows or committed words, so the added rows fit the existing padded tables. The row gate failure is expected for the added protocol work; cost acceptance remains a review decision.

# Conflicts:
#	crates/leanvm_core/src/cpu/reduce.rs
#	crates/pcs/src/stack_open/mod.rs
# Conflicts:
#	crates/fiat_shamir/src/lib.rs
#	crates/fiat_shamir/src/transcript.rs
#	crates/leanvm_core/src/cpu/program.rs
#	crates/leanvm_core/src/cpu/proof.rs
#	crates/leanvm_core/src/rec/transcript.rs
#	crates/leanvm_core/src/rec/tree/design.rs
#	crates/leanvm_core/src/rec/tree/mod.rs
#	doc/leanvm/body/08-end-to-end-protocol.tex
#	doc/leanvm/body/e-recursion.tex
@github-actions

github-actions Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

Exact counts

cargo leanvm bench --cycles-only, the counts that changed: c5acc61 merged into its base, against the base 37c1525. Any increase fails the Counts check.

program measure base this PR change
aggregate-leanxmss-400-2to1-first rows 138,529 138,941 +412 (+0.30%)
aggregate-leanxmss-400-2to1-node rows 119,413 119,792 +379 (+0.32%)
aggregate-leanxmss-400-4to1-first rows 275,681 276,497 +816 (+0.30%)
aggregate-leanxmss-400-4to1-node rows 250,195 250,973 +778 (+0.31%)

@github-actions

github-actions Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

Benchmarks: base against this PR, on one runner

c5acc61 merged into its base, against the base 37c1525: each benchmark run in turns on one runner, base and PR 5 times each. A size is shown when it changed; a time or a peak memory when it moved the same way in every round and its median by at least 1% (the change is the median ratio, with the rounds' range).

Threads shows the named configuration; default means no thread count is encoded in the benchmark ID.

BLAKE2s

benchmark threads runner measure base this PR change
hash-50000 16 arm64 Proving time 519.95 ms 535.47 ms +3.15% (+2.73% to +3.19%)
hash-50000 16 x86-64 Proving time 350.26 ms 357.29 ms +3.80% (+1.12% to +7.23%)
hash-50000 16 arm64 Proof size 322,698 B 324,066 B +1,368 B (+0.42%)
hash-50000 16 x86-64 Proof size 322,698 B 324,066 B +1,368 B (+0.42%)
Prover stages
benchmark threads runner base this PR change
hash-50000 16 arm64 519.95 ms 535.47 ms +3.15% (+2.73% to +3.19%)
 ↳ build-witness 19.76 ms 19.71 ms -0.21% (-0.51% to +0.29%)
 ↳ commit 81.86 ms 84.56 ms +3.37% (+2.68% to +3.69%)
 ↳ execute-program 24.03 ms 23.69 ms -1.42% (-6.58% to +2.26%)
 ↳ flock-reductions 169.81 ms 170.41 ms +0.39% (+0.18% to +1.03%)
 ↳ pcs-open 187.17 ms 199.95 ms +6.88% (+6.40% to +7.23%)
 ↳ prove-bus 29.83 ms 29.84 ms +0.03% (-0.28% to +0.17%)
 ↳ prove-constraints 6.99 ms 7.05 ms +0.91% (-2.08% to +1.89%)
hash-50000 16 x86-64 350.26 ms 357.29 ms +3.80% (+1.12% to +7.23%)
 ↳ build-witness 25.25 ms 24.65 ms -2.48% (-5.98% to +2.05%)
 ↳ commit 49.89 ms 51.56 ms +4.67% (-11.07% to +7.29%)
 ↳ execute-program 29.06 ms 29.64 ms +1.99% (+0.51% to +6.27%)
 ↳ flock-reductions 91.78 ms 89.74 ms -0.25% (-4.23% to +1.64%)
 ↳ pcs-open 122.04 ms 133.02 ms +9.13% (+5.97% to +13.97%)
 ↳ prove-bus 21.45 ms 21.06 ms -0.27% (-4.48% to +6.46%)
 ↳ prove-constraints 9.04 ms 9.40 ms +1.41% (-1.28% to +4.18%)

Fibonacci

benchmark threads runner measure base this PR change
fibonacci-asm-2000000 16 arm64 Proving time 824.10 ms 845.12 ms +2.54% (+2.00% to +4.25%)
fibonacci-asm-2000000 16 arm64 Proof size 364,138 B 364,674 B +536 B (+0.15%)
fibonacci-asm-2000000 16 x86-64 Proof size 364,138 B 364,674 B +536 B (+0.15%)
fibonacci-asm-2000000 16 arm64 Allocations 11,644 11,875 +1.98% (+1.98% to +1.98%)
fibonacci-asm-2000000 16 x86-64 Allocations 12,281 12,512 +1.88% (+1.88% to +1.89%)
Prover stages
benchmark threads runner base this PR change
fibonacci-asm-2000000 16 arm64 824.10 ms 845.12 ms +2.54% (+2.00% to +4.25%)
 ↳ build-witness 29.46 ms 29.60 ms +0.19% (-2.94% to +4.54%)
 ↳ commit 127.17 ms 129.56 ms +3.07% (+1.67% to +6.37%)
 ↳ execute-program 65.20 ms 65.28 ms +0.54% (-3.31% to +8.48%)
 ↳ flock-reductions 295.01 ms 296.79 ms +0.60% (-2.78% to +1.05%)
 ↳ pcs-open 234.66 ms 252.16 ms +7.46% (+6.98% to +8.28%)
 ↳ prove-bus 60.18 ms 59.83 ms -0.71% (-1.69% to +2.23%)
 ↳ prove-constraints 10.75 ms 10.88 ms +0.46% (-0.79% to +11.54%)
fibonacci-asm-2000000 16 x86-64 492.31 ms 511.14 ms +2.45% (-2.91% to +10.86%)
 ↳ build-witness 39.93 ms 39.13 ms -2.00% (-4.38% to +4.98%)
 ↳ commit 71.52 ms 72.03 ms -1.06% (-4.47% to +16.11%)
 ↳ execute-program 66.12 ms 67.48 ms +0.42% (-1.08% to +6.62%)
 ↳ flock-reductions 134.13 ms 130.17 ms -4.32% (-13.94% to +14.24%)
 ↳ pcs-open 131.47 ms 147.14 ms +11.32% (+4.94% to +12.72%)
 ↳ prove-bus 35.59 ms 36.00 ms +0.58% (-6.70% to +11.86%)
 ↳ prove-constraints 14.77 ms 14.88 ms -1.75% (-5.04% to +7.37%)

Flock

benchmark threads runner measure base this PR change
flock-alu-batch-262144 16 arm64 Proving time 51.57 ms 54.42 ms +5.68% (+4.87% to +6.16%)
flock-div-batch-262144 16 arm64 Proving time 367.99 ms 382.43 ms +3.96% (+3.39% to +4.13%)
flock-div-batch-262144 16 x86-64 Proving time 169.22 ms 181.73 ms +6.32% (+3.61% to +8.82%)
flock-hash-batch-262144 16 arm64 Proving time 764.62 ms 791.94 ms +3.75% (+3.03% to +5.36%)
flock-hash-batch-262144 16 x86-64 Proving time 353.18 ms 374.94 ms +6.57% (+4.13% to +13.78%)
flock-ld-batch-262144 16 arm64 Proving time 15.74 ms 16.32 ms +3.71% (+2.17% to +6.04%)
flock-ld-batch-262144 16 x86-64 Proving time 9.59 ms 10.99 ms +11.04% (+8.38% to +35.06%)
flock-mul-batch-262144 16 arm64 Proving time 187.68 ms 195.13 ms +3.54% (+2.88% to +4.31%)
flock-mul-batch-262144 16 x86-64 Proving time 90.48 ms 100.31 ms +7.27% (+6.05% to +16.10%)
flock-mulh-batch-262144 16 arm64 Proving time 360.47 ms 374.26 ms +3.72% (+3.19% to +4.14%)
flock-mulh-batch-262144 16 x86-64 Proving time 166.44 ms 177.44 ms +6.67% (+5.20% to +11.26%)
flock-sd-batch-262144 16 arm64 Proving time 16.35 ms 18.38 ms +12.32% (+11.96% to +13.48%)
flock-sd-batch-262144 16 x86-64 Proving time 9.82 ms 11.53 ms +16.26% (+0.04% to +39.19%)
flock-shift-batch-262144 16 arm64 Proving time 50.28 ms 52.78 ms +4.75% (+4.35% to +5.78%)
flock-store-batch-262144 16 arm64 Proving time 50.06 ms 53.28 ms +6.58% (+6.09% to +9.44%)
flock-store-batch-262144 16 x86-64 Proving time 27.88 ms 31.29 ms +10.43% (+3.84% to +25.71%)

PCS

benchmark threads runner measure base this PR change
pcs-commit-22 16 arm64 Proving time 7.20 ms 8.13 ms +12.94% (+5.74% to +25.99%)
pcs-commit-22 16 x86-64 Proving time 4.81 ms 5.78 ms +20.14% (+15.16% to +33.45%)

leanSPHINCS

benchmark threads runner measure base this PR change
leansphincs-26 16 arm64 Proving time 181.05 ms 186.01 ms +2.98% (+2.31% to +4.55%)
leansphincs-26 16 arm64 Proof size 316,466 B 317,114 B +648 B (+0.20%)
leansphincs-26 16 x86-64 Proof size 316,466 B 317,114 B +648 B (+0.20%)
Prover stages
benchmark threads runner base this PR change
leansphincs-26 16 arm64 181.05 ms 186.01 ms +2.98% (+2.31% to +4.55%)
 ↳ build-witness 5.63 ms 5.63 ms -0.11% (-0.56% to +0.04%)
 ↳ commit 23.65 ms 25.16 ms +6.44% (+4.65% to +6.57%)
 ↳ execute-program 12.23 ms 12.24 ms -2.38% (-7.00% to +3.79%)
 ↳ flock-reductions 62.16 ms 62.33 ms +0.47% (+0.23% to +5.04%)
 ↳ pcs-open 58.04 ms 61.80 ms +6.22% (+4.85% to +8.22%)
 ↳ prove-bus 14.95 ms 14.96 ms -0.09% (-2.13% to +8.27%)
 ↳ prove-constraints 4.15 ms 4.16 ms +0.27% (-0.10% to +0.94%)
leansphincs-26 16 x86-64 143.31 ms 148.86 ms +2.81% (-0.93% to +7.02%)
 ↳ build-witness 9.89 ms 9.99 ms +0.66% (-1.67% to +3.97%)
 ↳ commit 16.35 ms 18.95 ms +13.59% (+3.55% to +22.33%)
 ↳ execute-program 14.75 ms 14.44 ms -0.50% (-4.94% to +2.33%)
 ↳ flock-reductions 38.42 ms 38.45 ms -0.74% (-4.18% to +4.10%)
 ↳ pcs-open 46.22 ms 49.08 ms +4.65% (+0.21% to +10.17%)
 ↳ prove-bus 13.05 ms 13.01 ms -1.84% (-4.22% to +0.68%)
 ↳ prove-constraints 5.87 ms 5.73 ms -2.12% (-4.32% to +2.89%)

leanXMSS

benchmark threads runner measure base this PR change
aggregate-leanxmss-100-2to1-first 1 arm64 Proving time 954.03 ms 990.55 ms +3.95% (+3.66% to +4.18%)
aggregate-leanxmss-100-2to1-first 4 arm64 Proving time 267.53 ms 277.57 ms +3.63% (+3.50% to +4.02%)
aggregate-leanxmss-100-2to1-first 8 arm64 Proving time 156.77 ms 162.27 ms +3.70% (+3.38% to +3.80%)
aggregate-leanxmss-100-2to1-first 16 arm64 Proving time 103.58 ms 107.59 ms +3.74% (+0.73% to +5.53%)
aggregate-leanxmss-100-2to1-first 1 x86-64 Proving time 571.68 ms 604.57 ms +6.01% (+4.29% to +6.78%)
aggregate-leanxmss-100-2to1-first 4 x86-64 Proving time 182.86 ms 191.96 ms +4.96% (+3.94% to +6.89%)
aggregate-leanxmss-100-2to1-first 8 x86-64 Proving time 118.49 ms 123.04 ms +3.11% (+2.51% to +4.45%)
aggregate-leanxmss-100-2to1-node 4 arm64 Proving time 282.88 ms 290.91 ms +2.75% (+2.52% to +2.99%)
aggregate-leanxmss-100-2to1-node 8 arm64 Proving time 165.49 ms 169.84 ms +2.77% (+1.97% to +2.92%)
aggregate-leanxmss-100-2to1-node 16 arm64 Proving time 108.33 ms 111.71 ms +3.58% (+2.25% to +3.87%)
aggregate-leanxmss-100-2to1-node 1 x86-64 Proving time 609.57 ms 637.15 ms +4.52% (+4.21% to +5.13%)
aggregate-leanxmss-100-2to1-node 4 x86-64 Proving time 192.99 ms 200.12 ms +4.07% (+2.26% to +5.47%)
aggregate-leanxmss-100-2to1-node 8 x86-64 Proving time 123.44 ms 128.11 ms +3.76% (+2.49% to +5.33%)
aggregate-leanxmss-100-4to1-first 1 arm64 Proving time 1.88 s 1.95 s +3.54% (+3.11% to +3.89%)
aggregate-leanxmss-100-4to1-first 4 arm64 Proving time 522.52 ms 540.27 ms +3.28% (+3.01% to +3.61%)
aggregate-leanxmss-100-4to1-first 8 arm64 Proving time 299.85 ms 309.12 ms +3.11% (+2.85% to +3.25%)
aggregate-leanxmss-100-4to1-first 16 arm64 Proving time 191.84 ms 197.16 ms +2.57% (+2.08% to +3.67%)
aggregate-leanxmss-100-4to1-first 1 x86-64 Proving time 1.03 s 1.06 s +3.40% (+1.61% to +3.83%)
aggregate-leanxmss-100-4to1-first 4 x86-64 Proving time 357.10 ms 373.26 ms +4.20% (+3.64% to +5.21%)
aggregate-leanxmss-100-4to1-first 8 x86-64 Proving time 222.38 ms 228.97 ms +3.30% (+2.14% to +3.72%)
aggregate-leanxmss-100-4to1-node 1 arm64 Proving time 2.06 s 2.15 s +4.96% (+4.56% to +5.04%)
aggregate-leanxmss-100-4to1-node 4 arm64 Proving time 566.56 ms 592.92 ms +4.50% (+4.38% to +4.77%)
aggregate-leanxmss-100-4to1-node 8 arm64 Proving time 324.34 ms 338.92 ms +4.35% (+4.11% to +4.80%)
aggregate-leanxmss-100-4to1-node 16 arm64 Proving time 208.93 ms 216.05 ms +3.43% (+2.88% to +3.71%)
aggregate-leanxmss-100-4to1-node 1 x86-64 Proving time 1.12 s 1.17 s +4.13% (+2.02% to +5.46%)
aggregate-leanxmss-100-4to1-node 4 x86-64 Proving time 389.60 ms 404.89 ms +3.91% (+2.83% to +4.51%)
aggregate-leanxmss-100-4to1-node 8 x86-64 Proving time 241.17 ms 250.89 ms +4.03% (+2.84% to +4.56%)
aggregate-leanxmss-100-4to1-node 16 x86-64 Proving time 173.38 ms 181.62 ms +3.25% (+1.36% to +11.09%)
leanxmss-100 1 arm64 Proving time 1.77 s 1.84 s +3.89% (+3.60% to +4.17%)
leanxmss-100 4 arm64 Proving time 473.85 ms 489.85 ms +3.45% (+3.24% to +3.70%)
leanxmss-100 8 arm64 Proving time 265.79 ms 274.83 ms +3.40% (+3.17% to +3.78%)
leanxmss-100 16 arm64 Proving time 163.29 ms 170.60 ms +3.88% (+0.04% to +7.08%)
leanxmss-100 1 x86-64 Proving time 1.05 s 1.11 s +5.00% (+3.28% to +6.07%)
leanxmss-100 4 x86-64 Proving time 280.79 ms 290.98 ms +3.46% (+2.70% to +6.99%)
leanxmss-100 8 x86-64 Proving time 172.61 ms 179.88 ms +4.21% (+3.66% to +9.63%)
aggregate-leanxmss-100-2to1-first 1 arm64 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 4 arm64 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 8 arm64 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 16 arm64 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 1 x86-64 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 4 x86-64 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 8 x86-64 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 16 x86-64 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-node 1 arm64 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 4 arm64 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 8 arm64 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 16 arm64 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 1 x86-64 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 4 x86-64 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 8 x86-64 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 16 x86-64 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-4to1-first 1 arm64 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 4 arm64 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 8 arm64 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 16 arm64 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 1 x86-64 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 4 x86-64 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 8 x86-64 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 16 x86-64 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-node 1 arm64 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 4 arm64 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 8 arm64 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 16 arm64 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 1 x86-64 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 4 x86-64 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 8 x86-64 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 16 x86-64 Proof size 280,863 B 281,727 B +864 B (+0.31%)
leanxmss-100 1 arm64 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 4 arm64 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 8 arm64 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 16 arm64 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 1 x86-64 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 4 x86-64 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 8 x86-64 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 16 x86-64 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
aggregate-leanxmss-100-2to1-first 1 arm64 Allocations 16,785 16,959 +1.04% (+1.04% to +1.04%)
aggregate-leanxmss-100-2to1-first 4 arm64 Allocations 16,911 17,085 +1.03% (+1.03% to +1.03%)
aggregate-leanxmss-100-2to1-first 8 arm64 Allocations 17,055 17,229 +1.02% (+1.02% to +1.02%)
aggregate-leanxmss-100-2to1-first 16 arm64 Allocations 17,343 17,517 +1.00% (+0.99% to +1.00%)
aggregate-leanxmss-100-2to1-first 1 x86-64 Allocations 16,887 17,061 +1.03% (+1.03% to +1.03%)
aggregate-leanxmss-100-2to1-first 4 x86-64 Allocations 17,016 17,190 +1.02% (+1.02% to +1.02%)
aggregate-leanxmss-100-2to1-first 8 x86-64 Allocations 17,164 17,338 +1.01% (+1.01% to +1.02%)
Prover stages
benchmark threads runner base this PR change
aggregate-leanxmss-100-2to1-first 1 arm64 954.03 ms 990.55 ms +3.95% (+3.66% to +4.18%)
 ↳ build-circuit 12.57 ms 12.49 ms +0.07% (-1.19% to +0.79%)
 ↳ prove-recursion 918.41 ms 955.48 ms +4.03% (+3.86% to +4.34%)
 ↳ reduce-claims 15.74 ms 15.32 ms -2.68% (-3.34% to +3.06%)
 ↳ reduce-in-rows 1.40 ms 1.37 ms -2.64% (-6.76% to +4.55%)
 ↳ verify 5.82 ms 5.86 ms +0.67% (+0.30% to +1.22%)
aggregate-leanxmss-100-2to1-first 4 arm64 267.53 ms 277.57 ms +3.63% (+3.50% to +4.02%)
 ↳ build-circuit 10.57 ms 10.76 ms +1.67% (+0.75% to +2.16%)
 ↳ prove-recursion 244.45 ms 254.15 ms +3.94% (+3.80% to +4.35%)
 ↳ reduce-claims 5.42 ms 5.41 ms +0.02% (-5.44% to +5.20%)
 ↳ reduce-in-rows 1.48 ms 1.47 ms -0.26% (-5.35% to +0.56%)
 ↳ verify 5.72 ms 5.76 ms +0.64% (+0.03% to +0.81%)
aggregate-leanxmss-100-2to1-first 8 arm64 156.77 ms 162.27 ms +3.70% (+3.38% to +3.80%)
 ↳ build-circuit 10.36 ms 10.32 ms -0.42% (-0.79% to +1.29%)
 ↳ prove-recursion 134.81 ms 140.30 ms +4.07% (+3.89% to +4.29%)
 ↳ reduce-claims 4.04 ms 4.28 ms +7.25% (+1.50% to +10.98%)
 ↳ reduce-in-rows 1.48 ms 1.43 ms -2.66% (-4.71% to -1.69%)
 ↳ verify 5.89 ms 5.91 ms +0.18% (-0.21% to +0.70%)
aggregate-leanxmss-100-2to1-first 16 arm64 103.58 ms 107.59 ms +3.74% (+0.73% to +5.53%)
 ↳ build-circuit 10.47 ms 10.76 ms +3.15% (-2.72% to +4.97%)
 ↳ prove-recursion 81.35 ms 84.92 ms +4.43% (+0.94% to +6.13%)
 ↳ reduce-claims 3.97 ms 3.94 ms +2.50% (-1.65% to +4.74%)
 ↳ reduce-in-rows 1.47 ms 1.51 ms +1.20% (-2.40% to +6.29%)
 ↳ verify 6.30 ms 6.35 ms +0.23% (+0.11% to +1.80%)
aggregate-leanxmss-100-2to1-first 1 x86-64 571.68 ms 604.57 ms +6.01% (+4.29% to +6.78%)
 ↳ build-circuit 14.10 ms 14.69 ms +4.13% (-4.70% to +5.69%)
 ↳ prove-recursion 531.47 ms 563.50 ms +6.33% (+4.87% to +7.13%)
 ↳ reduce-claims 18.05 ms 18.03 ms -0.14% (-2.92% to +0.94%)
 ↳ reduce-in-rows 1.58 ms 1.67 ms +3.86% (-3.56% to +10.93%)
 ↳ verify 6.86 ms 6.86 ms +0.49% (-1.60% to +2.63%)
aggregate-leanxmss-100-2to1-first 4 x86-64 182.86 ms 191.96 ms +4.96% (+3.94% to +6.89%)
 ↳ build-circuit 14.20 ms 14.19 ms -0.53% (-1.97% to +10.40%)
 ↳ prove-recursion 153.49 ms 161.86 ms +5.23% (+4.56% to +6.67%)
 ↳ reduce-claims 6.74 ms 6.82 ms +6.53% (-5.49% to +41.88%)
 ↳ reduce-in-rows 1.70 ms 1.72 ms +0.26% (-4.33% to +13.37%)
 ↳ verify 6.74 ms 6.60 ms -2.07% (-2.95% to +0.53%)
aggregate-leanxmss-100-2to1-first 8 x86-64 118.49 ms 123.04 ms +3.11% (+2.51% to +4.45%)
 ↳ build-circuit 14.26 ms 14.11 ms -1.02% (-4.19% to -0.01%)
 ↳ prove-recursion 88.68 ms 93.27 ms +4.57% (+3.28% to +6.28%)
 ↳ reduce-claims 6.15 ms 6.20 ms -5.11% (-6.71% to +17.36%)
 ↳ reduce-in-rows 1.91 ms 1.82 ms -4.72% (-9.08% to +1.86%)
 ↳ verify 6.95 ms 6.82 ms -2.36% (-4.76% to +1.18%)
aggregate-leanxmss-100-2to1-first 16 x86-64 94.12 ms 96.53 ms +4.12% (-0.42% to +10.15%)
 ↳ build-circuit 13.94 ms 14.02 ms +0.15% (-3.28% to +10.05%)
 ↳ prove-recursion 63.53 ms 67.84 ms +5.12% (+1.11% to +10.71%)
 ↳ reduce-claims 7.47 ms 7.93 ms -12.32% (-20.70% to +24.45%)
 ↳ reduce-in-rows 1.75 ms 1.81 ms +3.01% (-2.33% to +10.57%)
 ↳ verify 7.18 ms 7.21 ms -0.22% (-0.76% to +5.08%)
aggregate-leanxmss-100-2to1-node 4 arm64 282.88 ms 290.91 ms +2.75% (+2.52% to +2.99%)
 ↳ build-circuit 11.44 ms 11.51 ms +0.99% (-0.35% to +2.93%)
 ↳ prove-recursion 254.88 ms 262.44 ms +2.98% (+2.64% to +3.19%)
 ↳ reduce-claims 10.28 ms 10.41 ms +1.06% (-2.02% to +3.32%)
 ↳ reduce-in-rows 1.54 ms 1.47 ms -4.84% (-7.02% to -0.41%)
aggregate-leanxmss-100-2to1-node 8 arm64 165.49 ms 169.84 ms +2.77% (+1.97% to +2.92%)
 ↳ build-circuit 11.23 ms 11.25 ms +0.37% (-1.50% to +1.01%)
 ↳ prove-recursion 140.31 ms 144.70 ms +3.11% (+2.35% to +3.72%)
 ↳ reduce-claims 7.63 ms 7.81 ms +2.67% (-5.24% to +6.37%)
 ↳ reduce-in-rows 1.55 ms 1.46 ms -5.07% (-7.23% to -3.02%)
aggregate-leanxmss-100-2to1-node 16 arm64 108.33 ms 111.71 ms +3.58% (+2.25% to +3.87%)
 ↳ build-circuit 11.43 ms 11.70 ms +1.11% (-2.04% to +4.40%)
 ↳ prove-recursion 83.89 ms 87.03 ms +4.23% (+2.81% to +5.16%)
 ↳ reduce-claims 6.67 ms 6.66 ms +1.11% (-4.96% to +3.58%)
 ↳ reduce-in-rows 1.54 ms 1.49 ms -3.80% (-4.62% to +1.72%)
aggregate-leanxmss-100-2to1-node 1 x86-64 609.57 ms 637.15 ms +4.52% (+4.21% to +5.13%)
 ↳ build-circuit 15.21 ms 15.26 ms +2.74% (-4.02% to +6.75%)
 ↳ prove-recursion 553.00 ms 580.47 ms +4.97% (+4.84% to +5.41%)
 ↳ reduce-claims 32.76 ms 32.91 ms +0.45% (-1.74% to +1.23%)
 ↳ reduce-in-rows 1.67 ms 1.67 ms +0.12% (-7.01% to +8.39%)
aggregate-leanxmss-100-2to1-node 4 x86-64 192.99 ms 200.12 ms +4.07% (+2.26% to +5.47%)
 ↳ build-circuit 14.86 ms 15.03 ms +2.60% (-1.31% to +4.63%)
 ↳ prove-recursion 157.46 ms 165.20 ms +5.12% (+3.68% to +5.96%)
 ↳ reduce-claims 12.57 ms 11.95 ms +0.96% (-13.29% to +17.52%)
 ↳ reduce-in-rows 1.83 ms 1.73 ms -3.26% (-8.74% to +5.10%)
aggregate-leanxmss-100-2to1-node 8 x86-64 123.44 ms 128.11 ms +3.76% (+2.49% to +5.33%)
 ↳ build-circuit 14.87 ms 15.59 ms +2.43% (-7.59% to +5.66%)
 ↳ prove-recursion 91.02 ms 95.74 ms +5.13% (+4.39% to +5.82%)
 ↳ reduce-claims 9.73 ms 9.46 ms +1.44% (-11.39% to +2.93%)
 ↳ reduce-in-rows 1.89 ms 1.88 ms +0.31% (-5.48% to +3.35%)
aggregate-leanxmss-100-4to1-first 1 arm64 1.88 s 1.95 s +3.54% (+3.11% to +3.89%)
 ↳ build-circuit 25.17 ms 25.32 ms +0.75% (-0.26% to +2.33%)
 ↳ prove-recursion 1.82 s 1.89 s +3.68% (+3.20% to +4.05%)
 ↳ reduce-claims 21.39 ms 21.11 ms -1.07% (-2.56% to -0.66%)
 ↳ reduce-in-rows 2.86 ms 2.82 ms -0.86% (-4.85% to +1.22%)
 ↳ verify 11.47 ms 11.49 ms +0.39% (-0.17% to +0.49%)
aggregate-leanxmss-100-4to1-first 4 arm64 522.52 ms 540.27 ms +3.28% (+3.01% to +3.61%)
 ↳ build-circuit 22.01 ms 22.11 ms +0.65% (+0.14% to +1.00%)
 ↳ prove-recursion 479.10 ms 496.70 ms +3.56% (+3.26% to +3.88%)
 ↳ reduce-claims 6.96 ms 6.98 ms +0.53% (-1.04% to +1.34%)
 ↳ reduce-in-rows 2.88 ms 2.89 ms +1.40% (-0.46% to +3.16%)
 ↳ verify 11.46 ms 11.46 ms +0.35% (-0.71% to +0.78%)
aggregate-leanxmss-100-4to1-first 8 arm64 299.85 ms 309.12 ms +3.11% (+2.85% to +3.25%)
 ↳ build-circuit 20.82 ms 20.98 ms +0.76% (+0.28% to +1.27%)
 ↳ prove-recursion 259.46 ms 268.46 ms +3.49% (+3.14% to +3.76%)
 ↳ reduce-claims 5.10 ms 5.09 ms +0.18% (-1.37% to +3.91%)
 ↳ reduce-in-rows 2.80 ms 2.85 ms +0.03% (-0.56% to +4.37%)
 ↳ verify 11.55 ms 11.61 ms +0.33% (-1.19% to +1.52%)
aggregate-leanxmss-100-4to1-first 16 arm64 191.84 ms 197.16 ms +2.57% (+2.08% to +3.67%)
 ↳ build-circuit 20.94 ms 21.21 ms +1.15% (-1.25% to +2.20%)
 ↳ prove-recursion 151.09 ms 156.08 ms +3.12% (+2.86% to +4.06%)
 ↳ reduce-claims 4.78 ms 4.62 ms -3.19% (-4.99% to +4.83%)
 ↳ reduce-in-rows 2.88 ms 2.85 ms +1.02% (-1.77% to +1.65%)
 ↳ verify 12.20 ms 12.34 ms +0.51% (-0.33% to +1.45%)
aggregate-leanxmss-100-4to1-first 1 x86-64 1.03 s 1.06 s +3.40% (+1.61% to +3.83%)
 ↳ build-circuit 30.13 ms 29.56 ms -1.46% (-9.62% to +1.93%)
 ↳ prove-recursion 956.44 ms 991.05 ms +4.12% (+1.62% to +4.32%)
 ↳ reduce-claims 24.04 ms 23.28 ms -3.79% (-7.22% to +1.80%)
 ↳ reduce-in-rows 3.37 ms 3.40 ms +1.60% (-4.20% to +4.37%)
 ↳ verify 11.89 ms 11.42 ms -2.58% (-11.21% to -0.64%)
aggregate-leanxmss-100-4to1-first 4 x86-64 357.10 ms 373.26 ms +4.20% (+3.64% to +5.21%)
 ↳ build-circuit 31.88 ms 32.01 ms +0.82% (-1.22% to +5.61%)
 ↳ prove-recursion 299.73 ms 313.80 ms +4.69% (+4.45% to +6.10%)
 ↳ reduce-claims 9.57 ms 8.95 ms -4.48% (-8.69% to -0.22%)
 ↳ reduce-in-rows 3.84 ms 3.88 ms +2.57% (-2.95% to +6.74%)
 ↳ verify 12.69 ms 12.82 ms +0.13% (-0.63% to +1.43%)
aggregate-leanxmss-100-4to1-first 8 x86-64 222.38 ms 228.97 ms +3.30% (+2.14% to +3.72%)
 ↳ build-circuit 31.43 ms 31.47 ms -1.00% (-3.91% to +2.43%)
 ↳ prove-recursion 166.52 ms 174.14 ms +4.68% (+3.89% to +5.26%)
 ↳ reduce-claims 7.07 ms 6.65 ms -7.47% (-17.49% to +9.56%)
 ↳ reduce-in-rows 3.80 ms 3.76 ms -1.67% (-2.41% to +0.44%)
 ↳ verify 12.99 ms 13.12 ms -0.33% (-0.78% to +1.54%)
aggregate-leanxmss-100-4to1-node 1 arm64 2.06 s 2.15 s +4.96% (+4.56% to +5.04%)
 ↳ build-circuit 29.61 ms 29.29 ms -1.28% (-2.04% to +1.49%)
 ↳ prove-recursion 1.95 s 2.05 s +5.25% (+4.88% to +5.28%)
 ↳ reduce-claims 56.60 ms 56.87 ms +0.09% (-1.06% to +0.81%)
 ↳ reduce-in-rows 3.09 ms 2.96 ms -2.04% (-5.86% to +0.94%)
aggregate-leanxmss-100-4to1-node 4 arm64 566.56 ms 592.92 ms +4.50% (+4.38% to +4.77%)
 ↳ build-circuit 26.38 ms 26.12 ms -0.32% (-1.33% to +0.02%)
 ↳ prove-recursion 508.76 ms 534.99 ms +5.05% (+4.91% to +5.35%)
 ↳ reduce-claims 17.45 ms 17.58 ms +0.24% (-0.54% to +1.25%)
 ↳ reduce-in-rows 3.03 ms 3.01 ms +0.29% (-1.41% to +0.78%)
aggregate-leanxmss-100-4to1-node 8 arm64 324.34 ms 338.92 ms +4.35% (+4.11% to +4.80%)
 ↳ build-circuit 24.99 ms 24.85 ms -0.66% (-0.84% to +0.02%)
 ↳ prove-recursion 274.54 ms 289.11 ms +5.20% (+4.88% to +5.67%)
 ↳ reduce-claims 11.78 ms 11.84 ms +0.34% (+0.18% to +2.38%)
 ↳ reduce-in-rows 2.99 ms 2.97 ms -1.33% (-2.08% to +0.17%)
aggregate-leanxmss-100-4to1-node 16 arm64 208.93 ms 216.05 ms +3.43% (+2.88% to +3.71%)
 ↳ build-circuit 25.14 ms 24.88 ms -0.36% (-1.57% to +0.89%)
 ↳ prove-recursion 160.79 ms 168.28 ms +4.46% (+3.99% to +5.06%)
 ↳ reduce-claims 9.58 ms 9.57 ms -0.32% (-6.82% to +1.64%)
 ↳ reduce-in-rows 3.02 ms 2.95 ms -0.38% (-2.55% to +0.06%)
aggregate-leanxmss-100-4to1-node 1 x86-64 1.12 s 1.17 s +4.13% (+2.02% to +5.46%)
 ↳ build-circuit 37.43 ms 37.65 ms +0.14% (-1.46% to +2.72%)
 ↳ prove-recursion 1.01 s 1.05 s +4.64% (+2.48% to +5.67%)
 ↳ reduce-claims 58.38 ms 60.08 ms +0.38% (-4.23% to +6.40%)
 ↳ reduce-in-rows 3.48 ms 3.54 ms -2.47% (-5.15% to +6.70%)
aggregate-leanxmss-100-4to1-node 4 x86-64 389.60 ms 404.89 ms +3.91% (+2.83% to +4.51%)
 ↳ build-circuit 37.59 ms 38.05 ms +2.36% (+0.87% to +3.24%)
 ↳ prove-recursion 315.88 ms 331.06 ms +4.81% (+4.31% to +5.50%)
 ↳ reduce-claims 20.51 ms 20.07 ms -2.65% (-15.85% to +0.86%)
 ↳ reduce-in-rows 4.18 ms 4.15 ms -1.66% (-4.38% to +3.84%)
aggregate-leanxmss-100-4to1-node 8 x86-64 241.17 ms 250.89 ms +4.03% (+2.84% to +4.56%)
 ↳ build-circuit 36.36 ms 36.49 ms +1.13% (-2.15% to +7.24%)
 ↳ prove-recursion 174.38 ms 182.85 ms +4.61% (+4.23% to +5.53%)
 ↳ reduce-claims 14.63 ms 14.83 ms -0.86% (-8.79% to +10.09%)
 ↳ reduce-in-rows 4.16 ms 4.20 ms +0.10% (-0.77% to +6.47%)
aggregate-leanxmss-100-4to1-node 16 x86-64 173.38 ms 181.62 ms +3.25% (+1.36% to +11.09%)
 ↳ build-circuit 34.93 ms 34.46 ms -1.34% (-6.32% to +2.03%)
 ↳ prove-recursion 113.31 ms 120.00 ms +4.47% (+2.85% to +17.90%)
 ↳ reduce-claims 12.07 ms 12.17 ms +1.08% (-1.28% to +5.12%)
 ↳ reduce-in-rows 4.06 ms 4.02 ms -1.92% (-2.20% to +1.34%)
leanxmss-100 1 arm64 1.77 s 1.84 s +3.89% (+3.60% to +4.17%)
 ↳ build-witness 46.53 ms 46.18 ms -0.11% (-1.68% to +1.28%)
 ↳ commit 295.60 ms 300.65 ms +1.55% (+1.47% to +2.28%)
 ↳ execute-program 10.23 ms 10.28 ms +0.17% (-5.29% to +1.95%)
 ↳ flock-reductions 648.29 ms 649.62 ms +0.30% (-0.58% to +1.16%)
 ↳ pcs-open 628.16 ms 689.17 ms +9.71% (+9.27% to +9.96%)
 ↳ prove-bus 131.50 ms 131.80 ms +0.31% (-0.21% to +0.74%)
 ↳ prove-constraints 14.39 ms 14.56 ms -0.02% (-0.93% to +2.82%)
leanxmss-100 4 arm64 473.85 ms 489.85 ms +3.45% (+3.24% to +3.70%)
 ↳ build-witness 12.82 ms 12.82 ms -0.00% (-0.44% to +0.98%)
 ↳ commit 74.48 ms 76.67 ms +2.68% (+2.11% to +3.55%)
 ↳ execute-program 10.49 ms 10.13 ms -3.41% (-5.79% to -0.14%)
 ↳ flock-reductions 169.48 ms 169.73 ms -0.14% (-0.41% to +0.89%)
 ↳ pcs-open 165.03 ms 179.48 ms +8.70% (+8.34% to +9.46%)
 ↳ prove-bus 35.41 ms 35.35 ms -0.23% (-1.17% to +0.27%)
 ↳ prove-constraints 5.43 ms 5.52 ms +0.68% (-0.65% to +2.98%)
leanxmss-100 8 arm64 265.79 ms 274.83 ms +3.40% (+3.17% to +3.78%)
 ↳ build-witness 7.55 ms 7.45 ms -0.56% (-1.83% to +0.67%)
 ↳ commit 38.52 ms 39.88 ms +3.55% (+3.47% to +4.13%)
 ↳ execute-program 10.63 ms 10.40 ms -1.82% (-9.21% to +1.02%)
 ↳ flock-reductions 94.03 ms 94.26 ms +0.31% (-0.03% to +0.49%)
 ↳ pcs-open 89.99 ms 97.89 ms +8.69% (+8.39% to +9.07%)
 ↳ prove-bus 20.68 ms 20.66 ms -0.10% (-0.34% to +0.17%)
 ↳ prove-constraints 4.20 ms 4.22 ms +0.68% (-0.09% to +2.24%)
leanxmss-100 16 arm64 163.29 ms 170.60 ms +3.88% (+0.04% to +7.08%)
 ↳ build-witness 4.85 ms 4.85 ms +0.66% (-0.32% to +1.74%)
 ↳ commit 20.44 ms 21.72 ms +6.24% (+5.47% to +6.64%)
 ↳ execute-program 10.34 ms 10.36 ms +0.21% (-5.51% to +2.60%)
 ↳ flock-reductions 56.83 ms 56.71 ms -0.24% (-5.59% to +2.93%)
 ↳ pcs-open 53.36 ms 57.52 ms +7.56% (+7.04% to +16.23%)
 ↳ prove-bus 13.37 ms 14.11 ms +5.55% (-6.70% to +15.45%)
 ↳ prove-constraints 3.95 ms 3.98 ms +0.87% (-0.68% to +5.19%)
leanxmss-100 1 x86-64 1.05 s 1.11 s +5.00% (+3.28% to +6.07%)
 ↳ build-witness 70.72 ms 70.94 ms +0.30% (-1.85% to +1.78%)
 ↳ commit 191.71 ms 197.00 ms +2.09% (+0.43% to +5.58%)
 ↳ execute-program 13.08 ms 12.83 ms -1.37% (-3.43% to +5.39%)
 ↳ flock-reductions 310.07 ms 310.98 ms +0.40% (-1.32% to +1.41%)
 ↳ pcs-open 364.96 ms 407.89 ms +11.76% (+11.13% to +13.82%)
 ↳ prove-bus 83.25 ms 84.73 ms +2.57% (-1.71% to +3.52%)
 ↳ prove-constraints 19.62 ms 19.61 ms -0.31% (-0.57% to +2.60%)
leanxmss-100 4 x86-64 280.79 ms 290.98 ms +3.46% (+2.70% to +6.99%)
 ↳ build-witness 18.32 ms 18.42 ms +0.52% (+0.02% to +4.51%)
 ↳ commit 43.91 ms 46.19 ms +5.41% (+2.23% to +7.51%)
 ↳ execute-program 11.79 ms 11.39 ms -3.33% (-6.85% to +4.64%)
 ↳ flock-reductions 79.96 ms 77.48 ms -3.10% (-6.63% to +4.74%)
 ↳ pcs-open 96.34 ms 106.57 ms +11.33% (+8.07% to +13.93%)
 ↳ prove-bus 23.10 ms 22.92 ms +0.30% (-2.28% to +5.83%)
 ↳ prove-constraints 7.10 ms 7.12 ms -0.41% (-1.85% to +1.63%)
leanxmss-100 8 x86-64 172.61 ms 179.88 ms +4.21% (+3.66% to +9.63%)
 ↳ build-witness 10.85 ms 10.86 ms -0.09% (-0.60% to +1.32%)
 ↳ commit 23.96 ms 25.66 ms +6.77% (+6.73% to +7.38%)
 ↳ execute-program 12.19 ms 12.32 ms -0.17% (-2.80% to +4.24%)
 ↳ flock-reductions 47.41 ms 47.14 ms -0.57% (-1.10% to +0.01%)
 ↳ pcs-open 58.25 ms 63.96 ms +9.55% (+8.97% to +23.26%)
 ↳ prove-bus 14.43 ms 14.54 ms +0.91% (-0.60% to +10.98%)
 ↳ prove-constraints 5.26 ms 5.25 ms +0.91% (-1.08% to +6.22%)
leanxmss-100 16 x86-64 119.96 ms 126.38 ms +3.27% (-2.05% to +5.59%)
 ↳ build-witness 7.18 ms 7.07 ms +0.22% (-5.10% to +1.71%)
 ↳ commit 14.08 ms 14.75 ms +7.85% (-1.42% to +14.49%)
 ↳ execute-program 11.87 ms 12.02 ms +0.25% (-2.08% to +4.44%)
 ↳ flock-reductions 32.28 ms 31.82 ms -1.44% (-7.79% to +2.85%)
 ↳ pcs-open 39.61 ms 44.34 ms +5.92% (+4.31% to +11.94%)
 ↳ prove-bus 10.84 ms 10.89 ms +0.35% (-6.64% to +4.86%)
 ↳ prove-constraints 4.57 ms 4.57 ms +1.09% (-5.82% to +12.43%)
Every result

BLAKE2s

benchmark threads runner CPU measure base this PR change
hash-50000 16 arm64 Neoverse-V2 Proving time 519.95 ms 535.47 ms +3.15% (+2.73% to +3.19%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 350.26 ms 357.29 ms +3.80% (+1.12% to +7.23%)
hash-50000 16 arm64 Neoverse-V2 Verifying time 3.20 ms 3.21 ms +0.11% (-0.24% to +0.57%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.39 ms 3.44 ms +1.73% (-2.74% to +2.51%)
blake2s-batch 16 arm64 Neoverse-V2 Time per operation 2.92 ns 2.91 ns -0.44% (-2.35% to -0.24%)
blake2s-batch 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 0.97 ns 1.03 ns +0.49% (-7.61% to +15.10%)
hash-50000 16 arm64 Neoverse-V2 Proof size 322,698 B 324,066 B +1,368 B (+0.42%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 322,698 B 324,066 B +1,368 B (+0.42%)
hash-50000 16 arm64 Neoverse-V2 Peak memory 4976.77 MiB 4981.77 MiB +0.06% (-0.09% to +0.23%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 2017.95 MiB 2021.18 MiB +0.09% (+0.05% to +0.26%)
hash-50000 16 arm64 Neoverse-V2 Peak heap 4400.28 MiB 4400.34 MiB +0.00% (-0.00% to +0.00%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 1823.98 MiB 1823.99 MiB -0.00% (-0.01% to +0.01%)
hash-50000 16 arm64 Neoverse-V2 Allocations 16,708 16,854 +0.87% (+0.87% to +0.87%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 17,346 17,496 +0.86% (+0.81% to +0.92%)
Prover stages
benchmark threads runner CPU base this PR change
hash-50000 16 arm64 Neoverse-V2 519.95 ms 535.47 ms +3.15% (+2.73% to +3.19%)
 ↳ build-witness 19.76 ms 19.71 ms -0.21% (-0.51% to +0.29%)
 ↳ commit 81.86 ms 84.56 ms +3.37% (+2.68% to +3.69%)
 ↳ execute-program 24.03 ms 23.69 ms -1.42% (-6.58% to +2.26%)
 ↳ flock-reductions 169.81 ms 170.41 ms +0.39% (+0.18% to +1.03%)
 ↳ pcs-open 187.17 ms 199.95 ms +6.88% (+6.40% to +7.23%)
 ↳ prove-bus 29.83 ms 29.84 ms +0.03% (-0.28% to +0.17%)
 ↳ prove-constraints 6.99 ms 7.05 ms +0.91% (-2.08% to +1.89%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 350.26 ms 357.29 ms +3.80% (+1.12% to +7.23%)
 ↳ build-witness 25.25 ms 24.65 ms -2.48% (-5.98% to +2.05%)
 ↳ commit 49.89 ms 51.56 ms +4.67% (-11.07% to +7.29%)
 ↳ execute-program 29.06 ms 29.64 ms +1.99% (+0.51% to +6.27%)
 ↳ flock-reductions 91.78 ms 89.74 ms -0.25% (-4.23% to +1.64%)
 ↳ pcs-open 122.04 ms 133.02 ms +9.13% (+5.97% to +13.97%)
 ↳ prove-bus 21.45 ms 21.06 ms -0.27% (-4.48% to +6.46%)
 ↳ prove-constraints 9.04 ms 9.40 ms +1.41% (-1.28% to +4.18%)

Fibonacci

benchmark threads runner CPU measure base this PR change
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Proving time 824.10 ms 845.12 ms +2.54% (+2.00% to +4.25%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 492.31 ms 511.14 ms +2.45% (-2.91% to +10.86%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Verifying time 3.31 ms 3.29 ms -0.67% (-5.13% to +11.45%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.42 ms 3.43 ms +0.30% (-0.12% to +1.58%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Proof size 364,138 B 364,674 B +536 B (+0.15%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 364,138 B 364,674 B +536 B (+0.15%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Peak memory 7451.69 MiB 7448.13 MiB -0.04% (-0.16% to +0.10%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 3254.46 MiB 3253.70 MiB +0.06% (-0.06% to +0.14%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Peak heap 7049.82 MiB 7049.88 MiB +0.00% (+0.00% to +0.00%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 2998.65 MiB 2998.70 MiB -0.00% (-0.00% to +0.00%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Allocations 11,644 11,875 +1.98% (+1.98% to +1.98%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 12,281 12,512 +1.88% (+1.88% to +1.89%)
Prover stages
benchmark threads runner CPU base this PR change
fibonacci-asm-2000000 16 arm64 Neoverse-V2 824.10 ms 845.12 ms +2.54% (+2.00% to +4.25%)
 ↳ build-witness 29.46 ms 29.60 ms +0.19% (-2.94% to +4.54%)
 ↳ commit 127.17 ms 129.56 ms +3.07% (+1.67% to +6.37%)
 ↳ execute-program 65.20 ms 65.28 ms +0.54% (-3.31% to +8.48%)
 ↳ flock-reductions 295.01 ms 296.79 ms +0.60% (-2.78% to +1.05%)
 ↳ pcs-open 234.66 ms 252.16 ms +7.46% (+6.98% to +8.28%)
 ↳ prove-bus 60.18 ms 59.83 ms -0.71% (-1.69% to +2.23%)
 ↳ prove-constraints 10.75 ms 10.88 ms +0.46% (-0.79% to +11.54%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 492.31 ms 511.14 ms +2.45% (-2.91% to +10.86%)
 ↳ build-witness 39.93 ms 39.13 ms -2.00% (-4.38% to +4.98%)
 ↳ commit 71.52 ms 72.03 ms -1.06% (-4.47% to +16.11%)
 ↳ execute-program 66.12 ms 67.48 ms +0.42% (-1.08% to +6.62%)
 ↳ flock-reductions 134.13 ms 130.17 ms -4.32% (-13.94% to +14.24%)
 ↳ pcs-open 131.47 ms 147.14 ms +11.32% (+4.94% to +12.72%)
 ↳ prove-bus 35.59 ms 36.00 ms +0.58% (-6.70% to +11.86%)
 ↳ prove-constraints 14.77 ms 14.88 ms -1.75% (-5.04% to +7.37%)

Field and transpose kernels

benchmark threads runner CPU measure base this PR change
f192-inv default arm64 Neoverse-V2 Time per operation 244.97 ns 245.00 ns +0.01% (-0.04% to +0.02%)
f192-inv default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 246.29 ns 240.73 ns -1.59% (-6.79% to +0.71%)
f192-mul-latency default arm64 Neoverse-V2 Time per operation 8.00 ns 8.02 ns +0.11% (+0.06% to +0.89%)
f192-mul-latency default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 7.32 ns 6.93 ns -1.80% (-8.44% to +1.24%)
f192-mul-throughput default arm64 Neoverse-V2 Time per operation 2.94 ns 2.94 ns +0.00% (-0.07% to +0.03%)
f192-mul-throughput default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 3.94 ns 4.00 ns +0.75% (-9.98% to +3.12%)
f192-mul4-latency default arm64 Neoverse-V2 Time per operation 12.79 ns 12.71 ns -0.88% (-3.51% to +2.52%)
f192-mul4-latency default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 9.32 ns 9.07 ns -3.23% (-5.36% to +3.62%)
f192-mul4-throughput default arm64 Neoverse-V2 Time per operation 10.76 ns 10.76 ns -0.04% (-0.19% to +0.08%)
f192-mul4-throughput default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 13.94 ns 14.55 ns +0.00% (-6.12% to +7.16%)
f192-square default arm64 Neoverse-V2 Time per operation 1.56 ns 1.56 ns -0.26% (-0.45% to +0.13%)
f192-square default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 2.93 ns 3.06 ns +2.76% (-2.98% to +6.33%)
f64-inv default arm64 Neoverse-V2 Time per operation 211.68 ns 211.72 ns -0.02% (-0.05% to +0.09%)
f64-inv default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 212.72 ns 212.81 ns -0.56% (-5.97% to +1.05%)
f64-mul default arm64 Neoverse-V2 Time per operation 0.56 ns 0.56 ns +0.18% (+0.00% to +0.36%)
f64-mul default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 0.78 ns 0.81 ns +1.26% (-8.06% to +12.89%)
f64-square default arm64 Neoverse-V2 Time per operation 0.56 ns 0.55 ns -0.18% (-1.26% to +0.91%)
f64-square default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 0.97 ns 0.95 ns -0.64% (-7.09% to +2.25%)
transpose-64bytes default arm64 Neoverse-V2 Time per operation 12.00 ns 12.00 ns +0.02% (-0.01% to +0.07%)
transpose-64bytes default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 0.79 ns 0.77 ns -1.94% (-17.36% to +6.23%)
transpose-64x64 default arm64 Neoverse-V2 Time per operation 96.62 ns 96.66 ns +0.05% (+0.01% to +0.06%)
transpose-64x64 default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 65.42 ns 66.21 ns +1.04% (-12.35% to +12.01%)

Flock

benchmark threads runner CPU measure base this PR change
flock-alu-batch-262144 16 arm64 Neoverse-V2 Proving time 51.57 ms 54.42 ms +5.68% (+4.87% to +6.16%)
flock-alu-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 30.48 ms 31.42 ms +2.26% (-0.24% to +26.83%)
flock-div-batch-262144 16 arm64 Neoverse-V2 Proving time 367.99 ms 382.43 ms +3.96% (+3.39% to +4.13%)
flock-div-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 169.22 ms 181.73 ms +6.32% (+3.61% to +8.82%)
flock-hash-batch-262144 16 arm64 Neoverse-V2 Proving time 764.62 ms 791.94 ms +3.75% (+3.03% to +5.36%)
flock-hash-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 353.18 ms 374.94 ms +6.57% (+4.13% to +13.78%)
flock-ld-batch-262144 16 arm64 Neoverse-V2 Proving time 15.74 ms 16.32 ms +3.71% (+2.17% to +6.04%)
flock-ld-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 9.59 ms 10.99 ms +11.04% (+8.38% to +35.06%)
flock-load-batch-262144 16 arm64 Neoverse-V2 Proving time 50.36 ms 53.10 ms +5.33% (-10.96% to +6.33%)
flock-load-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 28.18 ms 31.04 ms +3.79% (-0.85% to +25.48%)
flock-mul-batch-262144 16 arm64 Neoverse-V2 Proving time 187.68 ms 195.13 ms +3.54% (+2.88% to +4.31%)
flock-mul-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 90.48 ms 100.31 ms +7.27% (+6.05% to +16.10%)
flock-mulh-batch-262144 16 arm64 Neoverse-V2 Proving time 360.47 ms 374.26 ms +3.72% (+3.19% to +4.14%)
flock-mulh-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 166.44 ms 177.44 ms +6.67% (+5.20% to +11.26%)
flock-sd-batch-262144 16 arm64 Neoverse-V2 Proving time 16.35 ms 18.38 ms +12.32% (+11.96% to +13.48%)
flock-sd-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 9.82 ms 11.53 ms +16.26% (+0.04% to +39.19%)
flock-shift-batch-262144 16 arm64 Neoverse-V2 Proving time 50.28 ms 52.78 ms +4.75% (+4.35% to +5.78%)
flock-shift-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 27.51 ms 30.63 ms +7.10% (-10.30% to +23.96%)
flock-store-batch-262144 16 arm64 Neoverse-V2 Proving time 50.06 ms 53.28 ms +6.58% (+6.09% to +9.44%)
flock-store-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 27.88 ms 31.29 ms +10.43% (+3.84% to +25.71%)

PCS

benchmark threads runner CPU measure base this PR change
pcs-commit-22 16 arm64 Neoverse-V2 Proving time 7.20 ms 8.13 ms +12.94% (+5.74% to +25.99%)
pcs-commit-22 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 4.81 ms 5.78 ms +20.14% (+15.16% to +33.45%)
pcs-open-22 16 arm64 Neoverse-V2 Proving time 21.77 ms 23.07 ms +5.76% (-5.73% to +22.63%)
pcs-open-22 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 14.17 ms 15.06 ms +6.30% (-9.14% to +17.43%)
ntt-forward-22 16 arm64 Neoverse-V2 Time per operation 3.68 ms 3.67 ms -0.38% (-5.94% to +0.17%)
ntt-forward-22 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 2.82 ms 2.55 ms -7.87% (-12.54% to +3.77%)

leanSPHINCS

benchmark threads runner CPU measure base this PR change
leansphincs-26 16 arm64 Neoverse-V2 Proving time 181.05 ms 186.01 ms +2.98% (+2.31% to +4.55%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 143.31 ms 148.86 ms +2.81% (-0.93% to +7.02%)
leansphincs-26 16 arm64 Neoverse-V2 Verifying time 3.25 ms 3.26 ms +0.36% (+0.05% to +0.56%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.53 ms 3.54 ms +0.23% (-0.56% to +1.43%)
leansphincs-26 16 arm64 Neoverse-V2 Proof size 316,466 B 317,114 B +648 B (+0.20%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 316,466 B 317,114 B +648 B (+0.20%)
leansphincs-26 16 arm64 Neoverse-V2 Peak memory 1734.29 MiB 1736.69 MiB +0.02% (-0.15% to +0.42%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 707.54 MiB 708.54 MiB +0.30% (-0.34% to +0.54%)
leansphincs-26 16 arm64 Neoverse-V2 Peak heap 1395.16 MiB 1395.18 MiB +0.00% (-0.01% to +0.01%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 587.80 MiB 587.77 MiB -0.01% (-0.02% to +0.01%)
leansphincs-26 16 arm64 Neoverse-V2 Allocations 25,211 25,399 +0.75% (+0.75% to +0.75%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 25,910 26,097 +0.72% (+0.71% to +0.73%)
Prover stages
benchmark threads runner CPU base this PR change
leansphincs-26 16 arm64 Neoverse-V2 181.05 ms 186.01 ms +2.98% (+2.31% to +4.55%)
 ↳ build-witness 5.63 ms 5.63 ms -0.11% (-0.56% to +0.04%)
 ↳ commit 23.65 ms 25.16 ms +6.44% (+4.65% to +6.57%)
 ↳ execute-program 12.23 ms 12.24 ms -2.38% (-7.00% to +3.79%)
 ↳ flock-reductions 62.16 ms 62.33 ms +0.47% (+0.23% to +5.04%)
 ↳ pcs-open 58.04 ms 61.80 ms +6.22% (+4.85% to +8.22%)
 ↳ prove-bus 14.95 ms 14.96 ms -0.09% (-2.13% to +8.27%)
 ↳ prove-constraints 4.15 ms 4.16 ms +0.27% (-0.10% to +0.94%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 143.31 ms 148.86 ms +2.81% (-0.93% to +7.02%)
 ↳ build-witness 9.89 ms 9.99 ms +0.66% (-1.67% to +3.97%)
 ↳ commit 16.35 ms 18.95 ms +13.59% (+3.55% to +22.33%)
 ↳ execute-program 14.75 ms 14.44 ms -0.50% (-4.94% to +2.33%)
 ↳ flock-reductions 38.42 ms 38.45 ms -0.74% (-4.18% to +4.10%)
 ↳ pcs-open 46.22 ms 49.08 ms +4.65% (+0.21% to +10.17%)
 ↳ prove-bus 13.05 ms 13.01 ms -1.84% (-4.22% to +0.68%)
 ↳ prove-constraints 5.87 ms 5.73 ms -2.12% (-4.32% to +2.89%)

leanXMSS

benchmark threads runner CPU measure base this PR change
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Proving time 954.03 ms 990.55 ms +3.95% (+3.66% to +4.18%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Proving time 267.53 ms 277.57 ms +3.63% (+3.50% to +4.02%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Proving time 156.77 ms 162.27 ms +3.70% (+3.38% to +3.80%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Proving time 103.58 ms 107.59 ms +3.74% (+0.73% to +5.53%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 571.68 ms 604.57 ms +6.01% (+4.29% to +6.78%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 182.86 ms 191.96 ms +4.96% (+3.94% to +6.89%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 118.49 ms 123.04 ms +3.11% (+2.51% to +4.45%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 94.12 ms 96.53 ms +4.12% (-0.42% to +10.15%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Proving time 1.01 s 1.04 s +2.39% (-11.29% to +2.90%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Proving time 282.88 ms 290.91 ms +2.75% (+2.52% to +2.99%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Proving time 165.49 ms 169.84 ms +2.77% (+1.97% to +2.92%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Proving time 108.33 ms 111.71 ms +3.58% (+2.25% to +3.87%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 609.57 ms 637.15 ms +4.52% (+4.21% to +5.13%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 192.99 ms 200.12 ms +4.07% (+2.26% to +5.47%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 123.44 ms 128.11 ms +3.76% (+2.49% to +5.33%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 93.41 ms 96.61 ms -0.31% (-4.71% to +10.57%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Proving time 1.88 s 1.95 s +3.54% (+3.11% to +3.89%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Proving time 522.52 ms 540.27 ms +3.28% (+3.01% to +3.61%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Proving time 299.85 ms 309.12 ms +3.11% (+2.85% to +3.25%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Proving time 191.84 ms 197.16 ms +2.57% (+2.08% to +3.67%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 1.03 s 1.06 s +3.40% (+1.61% to +3.83%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 357.10 ms 373.26 ms +4.20% (+3.64% to +5.21%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 222.38 ms 228.97 ms +3.30% (+2.14% to +3.72%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 166.13 ms 168.68 ms +1.14% (-4.90% to +8.64%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Proving time 2.06 s 2.15 s +4.96% (+4.56% to +5.04%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Proving time 566.56 ms 592.92 ms +4.50% (+4.38% to +4.77%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Proving time 324.34 ms 338.92 ms +4.35% (+4.11% to +4.80%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Proving time 208.93 ms 216.05 ms +3.43% (+2.88% to +3.71%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 1.12 s 1.17 s +4.13% (+2.02% to +5.46%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 389.60 ms 404.89 ms +3.91% (+2.83% to +4.51%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 241.17 ms 250.89 ms +4.03% (+2.84% to +4.56%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 173.38 ms 181.62 ms +3.25% (+1.36% to +11.09%)
leanxmss-100 1 arm64 Neoverse-V2 Proving time 1.77 s 1.84 s +3.89% (+3.60% to +4.17%)
leanxmss-100 4 arm64 Neoverse-V2 Proving time 473.85 ms 489.85 ms +3.45% (+3.24% to +3.70%)
leanxmss-100 8 arm64 Neoverse-V2 Proving time 265.79 ms 274.83 ms +3.40% (+3.17% to +3.78%)
leanxmss-100 16 arm64 Neoverse-V2 Proving time 163.29 ms 170.60 ms +3.88% (+0.04% to +7.08%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 1.05 s 1.11 s +5.00% (+3.28% to +6.07%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 280.79 ms 290.98 ms +3.46% (+2.70% to +6.99%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 172.61 ms 179.88 ms +4.21% (+3.66% to +9.63%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 119.96 ms 126.38 ms +3.27% (-2.05% to +5.59%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Verifying time 4.00 ms 4.02 ms +0.10% (-0.12% to +0.97%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Verifying time 2.82 ms 2.82 ms -0.10% (-0.73% to +1.23%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Verifying time 2.72 ms 2.73 ms +0.26% (-0.54% to +0.76%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Verifying time 2.83 ms 2.86 ms +1.09% (-2.42% to +3.20%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.82 ms 3.78 ms -0.65% (-1.97% to +2.67%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.00 ms 2.96 ms -1.29% (-5.28% to +1.61%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.19 ms 3.18 ms -1.18% (-2.73% to +5.11%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.18 ms 3.24 ms +1.66% (-6.48% to +3.51%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Verifying time 6.72 ms 6.56 ms -1.50% (-2.67% to +0.38%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Verifying time 3.54 ms 3.57 ms +0.19% (+0.03% to +1.18%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Verifying time 3.17 ms 3.18 ms +0.18% (-0.32% to +0.83%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Verifying time 3.07 ms 3.15 ms +2.98% (-3.22% to +3.52%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 7.14 ms 7.06 ms -0.85% (-14.96% to +3.27%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.73 ms 3.75 ms +1.16% (-0.63% to +8.77%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.61 ms 3.66 ms +0.84% (-0.01% to +2.47%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.28 ms 3.24 ms -0.39% (-4.53% to +1.21%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Verifying time 4.87 ms 4.87 ms -0.17% (-2.16% to +0.56%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Verifying time 3.27 ms 3.28 ms -0.08% (-0.35% to +0.66%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Verifying time 3.00 ms 2.99 ms -0.08% (-0.65% to +0.81%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Verifying time 2.99 ms 3.00 ms -0.18% (-1.21% to +3.01%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 4.67 ms 4.79 ms +2.46% (-5.22% to +9.68%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.33 ms 3.28 ms -1.49% (-2.20% to +1.07%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.20 ms 3.21 ms +1.82% (-1.10% to +2.57%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.21 ms 3.15 ms -0.74% (-4.29% to +1.08%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Verifying time 10.18 ms 10.27 ms +2.04% (-0.62% to +3.35%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Verifying time 4.68 ms 4.70 ms +0.11% (-1.10% to +1.61%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Verifying time 3.76 ms 3.81 ms +0.29% (-0.33% to +1.22%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Verifying time 3.49 ms 3.51 ms +0.58% (-0.67% to +1.76%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 10.55 ms 10.81 ms +2.13% (-1.58% to +5.53%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 5.30 ms 5.24 ms -0.48% (-3.18% to +2.95%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 4.33 ms 4.30 ms -0.64% (-2.81% to +3.18%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.72 ms 3.72 ms -0.20% (-1.61% to +1.38%)
leanxmss-100 1 arm64 Neoverse-V2 Verifying time 3.08 ms 3.11 ms +0.84% (-0.27% to +2.69%)
leanxmss-100 4 arm64 Neoverse-V2 Verifying time 3.02 ms 3.02 ms -0.14% (-0.81% to +0.53%)
leanxmss-100 8 arm64 Neoverse-V2 Verifying time 3.13 ms 3.13 ms +0.17% (+0.04% to +0.46%)
leanxmss-100 16 arm64 Neoverse-V2 Verifying time 3.29 ms 3.30 ms +0.20% (-0.83% to +0.79%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.28 ms 3.29 ms +0.90% (-0.81% to +1.89%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.05 ms 3.06 ms +1.04% (-3.90% to +6.94%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.20 ms 3.20 ms -0.31% (-1.28% to +1.84%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.37 ms 3.34 ms -0.52% (-1.89% to -0.00%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,731 B 257,771 B +1,040 B (+0.41%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,379 B 257,739 B +1,360 B (+0.53%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 280,703 B 282,207 B +1,504 B (+0.54%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 280,863 B 281,727 B +864 B (+0.31%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 280,863 B 281,727 B +864 B (+0.31%)
leanxmss-100 1 arm64 Neoverse-V2 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 4 arm64 Neoverse-V2 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 8 arm64 Neoverse-V2 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 16 arm64 Neoverse-V2 Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 303,762 B 305,242 B +1,480 B (+0.49%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Peak memory 1586.87 MiB 1586.98 MiB +0.01% (-0.11% to +0.14%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Peak memory 1605.32 MiB 1607.67 MiB +0.18% (-0.03% to +0.23%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Peak memory 1633.84 MiB 1633.50 MiB -0.02% (-0.40% to +0.36%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Peak memory 1709.99 MiB 1718.75 MiB +0.59% (-0.32% to +0.64%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 775.12 MiB 775.62 MiB +0.06% (+0.03% to +0.29%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 804.15 MiB 807.99 MiB +0.48% (-0.89% to +1.15%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 830.63 MiB 832.98 MiB +0.14% (-0.36% to +1.20%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 871.69 MiB 874.81 MiB +0.34% (-0.43% to +0.60%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Peak memory 1587.12 MiB 1587.23 MiB +0.01% (-0.11% to +0.14%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Peak memory 1606.86 MiB 1609.09 MiB +0.15% (-0.01% to +0.23%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Peak memory 1637.59 MiB 1638.00 MiB +0.03% (-0.42% to +0.33%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Peak memory 1727.68 MiB 1735.67 MiB +0.47% (-0.87% to +0.53%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 775.12 MiB 775.62 MiB +0.06% (+0.03% to +0.29%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 813.55 MiB 814.21 MiB +0.09% (-0.67% to +0.26%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 849.97 MiB 850.90 MiB -0.00% (-0.64% to +0.26%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 908.36 MiB 909.59 MiB +0.20% (-0.79% to +0.99%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Peak memory 1781.01 MiB 1781.11 MiB +0.01% (-0.01% to +0.10%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Peak memory 1802.35 MiB 1802.20 MiB +0.00% (-0.13% to +0.13%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Peak memory 1830.71 MiB 1833.29 MiB +0.08% (-0.14% to +0.56%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Peak memory 1918.98 MiB 1916.24 MiB -0.12% (-0.47% to +0.83%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 963.12 MiB 961.38 MiB -0.00% (-0.18% to +0.23%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 996.09 MiB 996.52 MiB +0.13% (-0.49% to +0.32%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1024.43 MiB 1023.64 MiB -0.04% (-0.10% to +0.20%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1070.04 MiB 1076.60 MiB +0.26% (-0.42% to +0.95%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Peak memory 1781.76 MiB 1782.00 MiB +0.11% (+0.00% to +0.32%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Peak memory 1803.69 MiB 1803.52 MiB +0.11% (-0.11% to +0.13%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Peak memory 1834.59 MiB 1835.39 MiB +0.08% (-0.45% to +0.50%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Peak memory 1932.00 MiB 1929.86 MiB -0.05% (-0.28% to +0.39%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 987.38 MiB 987.38 MiB -0.00% (-0.18% to +1.05%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1012.72 MiB 1008.95 MiB -0.18% (-0.55% to +0.08%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1046.55 MiB 1046.03 MiB +0.14% (-0.11% to +0.40%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1112.33 MiB 1111.27 MiB +0.34% (-0.48% to +0.68%)
leanxmss-100 1 arm64 Neoverse-V2 Peak memory 1405.03 MiB 1404.84 MiB -0.01% (-0.15% to +0.13%)
leanxmss-100 4 arm64 Neoverse-V2 Peak memory 1429.69 MiB 1431.18 MiB +0.10% (-0.15% to +0.12%)
leanxmss-100 8 arm64 Neoverse-V2 Peak memory 1461.94 MiB 1461.86 MiB +0.05% (-0.15% to +0.17%)
leanxmss-100 16 arm64 Neoverse-V2 Peak memory 1528.04 MiB 1531.51 MiB +0.11% (-0.25% to +0.86%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 584.88 MiB 586.88 MiB +0.09% (+0.00% to +0.38%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 608.18 MiB 608.55 MiB +0.03% (-0.29% to +0.69%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 628.07 MiB 627.02 MiB +0.07% (-0.22% to +0.52%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 651.46 MiB 653.09 MiB +0.25% (-0.50% to +0.98%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Peak heap 602.79 MiB 602.79 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Peak heap 602.85 MiB 602.85 MiB +0.00% (-0.00% to +0.02%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Peak heap 602.75 MiB 602.81 MiB +0.01% (+0.00% to +0.02%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Peak heap 602.95 MiB 602.77 MiB -0.01% (-0.04% to +0.01%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 265.26 MiB 265.26 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 265.31 MiB 265.31 MiB +0.00% (-0.02% to +0.04%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 265.33 MiB 265.22 MiB -0.02% (-0.07% to +0.02%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 265.46 MiB 265.31 MiB -0.04% (-0.08% to +0.09%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Peak heap 602.50 MiB 602.50 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Peak heap 602.55 MiB 602.51 MiB -0.00% (-0.01% to +0.01%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Peak heap 602.49 MiB 602.51 MiB +0.00% (-0.00% to +0.02%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Peak heap 602.68 MiB 602.55 MiB -0.01% (-0.02% to +0.01%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 264.98 MiB 264.98 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 265.03 MiB 264.99 MiB -0.01% (-0.04% to +0.00%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 265.11 MiB 264.94 MiB -0.07% (-0.08% to +0.05%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 265.08 MiB 265.09 MiB +0.02% (-0.12% to +0.05%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Peak heap 1205.49 MiB 1205.49 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Peak heap 1205.54 MiB 1205.51 MiB -0.00% (-0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Peak heap 1205.54 MiB 1205.48 MiB -0.00% (-0.01% to +0.01%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Peak heap 1205.59 MiB 1205.64 MiB +0.01% (-0.01% to +0.02%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 530.46 MiB 530.47 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 530.43 MiB 530.46 MiB +0.01% (+0.00% to +0.01%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 530.46 MiB 530.44 MiB -0.00% (-0.02% to +0.05%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 530.45 MiB 530.58 MiB +0.03% (-0.04% to +0.07%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Peak heap 1205.01 MiB 1205.01 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Peak heap 1205.02 MiB 1205.04 MiB +0.00% (-0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Peak heap 1205.01 MiB 1205.04 MiB +0.00% (-0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Peak heap 1205.19 MiB 1205.17 MiB +0.00% (-0.02% to +0.00%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 529.99 MiB 529.99 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 530.00 MiB 529.99 MiB -0.00% (-0.02% to +0.01%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 529.84 MiB 529.98 MiB +0.03% (-0.01% to +0.03%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 530.08 MiB 530.03 MiB -0.01% (-0.02% to +0.02%)
leanxmss-100 1 arm64 Neoverse-V2 Peak heap 1200.93 MiB 1200.93 MiB +0.00% (+0.00% to +0.00%)
leanxmss-100 4 arm64 Neoverse-V2 Peak heap 1200.99 MiB 1200.97 MiB -0.00% (-0.01% to +0.00%)
leanxmss-100 8 arm64 Neoverse-V2 Peak heap 1201.02 MiB 1201.01 MiB -0.00% (-0.00% to +0.00%)
leanxmss-100 16 arm64 Neoverse-V2 Peak heap 1201.14 MiB 1201.14 MiB +0.00% (-0.01% to +0.00%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 504.34 MiB 504.34 MiB +0.00% (+0.00% to +0.00%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 504.42 MiB 504.40 MiB -0.00% (-0.01% to +0.00%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 504.45 MiB 504.48 MiB -0.00% (-0.03% to +0.04%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 504.62 MiB 504.62 MiB +0.00% (-0.03% to +0.03%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Allocations 16,785 16,959 +1.04% (+1.04% to +1.04%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Allocations 16,911 17,085 +1.03% (+1.03% to +1.03%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Allocations 17,055 17,229 +1.02% (+1.02% to +1.02%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Allocations 17,343 17,517 +1.00% (+0.99% to +1.00%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 16,887 17,061 +1.03% (+1.03% to +1.03%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 17,016 17,190 +1.02% (+1.02% to +1.02%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 17,164 17,338 +1.01% (+1.01% to +1.02%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 17,460 17,634 +1.00% (+1.00% to +1.00%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Allocations 20,496 20,692 +0.96% (+0.96% to +0.96%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Allocations 20,622 20,818 +0.95% (+0.95% to +0.95%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Allocations 20,766 20,962 +0.94% (+0.94% to +0.94%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Allocations 21,054 21,250 +0.93% (+0.93% to +0.93%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 20,590 20,786 +0.95% (+0.95% to +0.95%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 20,719 20,915 +0.95% (+0.95% to +0.95%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 20,867 21,063 +0.94% (+0.94% to +0.94%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 21,163 21,359 +0.93% (+0.93% to +0.93%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Allocations 28,729 28,910 +0.63% (+0.63% to +0.63%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Allocations 28,867 29,048 +0.63% (+0.63% to +0.63%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Allocations 29,051 29,232 +0.62% (+0.62% to +0.62%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Allocations 29,371 29,552 +0.62% (+0.62% to +0.62%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 28,875 29,056 +0.63% (+0.63% to +0.63%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 29,016 29,197 +0.62% (+0.62% to +0.62%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 29,204 29,385 +0.62% (+0.62% to +0.62%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 29,532 29,713 +0.61% (+0.61% to +0.61%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Allocations 35,514 35,711 +0.55% (+0.55% to +0.55%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Allocations 35,652 35,849 +0.55% (+0.55% to +0.55%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Allocations 35,836 36,033 +0.55% (+0.55% to +0.55%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Allocations 36,156 36,353 +0.54% (+0.50% to +0.54%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 35,660 35,857 +0.55% (+0.55% to +0.55%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 35,801 35,998 +0.55% (+0.55% to +0.55%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 35,989 36,186 +0.55% (+0.55% to +0.55%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 36,317 36,514 +0.54% (+0.54% to +0.54%)
leanxmss-100 1 arm64 Neoverse-V2 Allocations 24,847 25,004 +0.63% (+0.63% to +0.63%)
leanxmss-100 4 arm64 Neoverse-V2 Allocations 25,065 25,222 +0.63% (+0.63% to +0.63%)
leanxmss-100 8 arm64 Neoverse-V2 Allocations 25,301 25,458 +0.62% (+0.62% to +0.62%)
leanxmss-100 16 arm64 Neoverse-V2 Allocations 25,773 25,928 +0.60% (+0.47% to +0.61%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 25,365 25,522 +0.62% (+0.62% to +0.62%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 25,620 25,777 +0.61% (+0.61% to +0.62%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 25,904 26,061 +0.61% (+0.61% to +0.61%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 26,471 26,629 +0.59% (+0.59% to +0.60%)
Prover stages
benchmark threads runner CPU base this PR change
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 954.03 ms 990.55 ms +3.95% (+3.66% to +4.18%)
 ↳ build-circuit 12.57 ms 12.49 ms +0.07% (-1.19% to +0.79%)
 ↳ prove-recursion 918.41 ms 955.48 ms +4.03% (+3.86% to +4.34%)
 ↳ reduce-claims 15.74 ms 15.32 ms -2.68% (-3.34% to +3.06%)
 ↳ reduce-in-rows 1.40 ms 1.37 ms -2.64% (-6.76% to +4.55%)
 ↳ verify 5.82 ms 5.86 ms +0.67% (+0.30% to +1.22%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 267.53 ms 277.57 ms +3.63% (+3.50% to +4.02%)
 ↳ build-circuit 10.57 ms 10.76 ms +1.67% (+0.75% to +2.16%)
 ↳ prove-recursion 244.45 ms 254.15 ms +3.94% (+3.80% to +4.35%)
 ↳ reduce-claims 5.42 ms 5.41 ms +0.02% (-5.44% to +5.20%)
 ↳ reduce-in-rows 1.48 ms 1.47 ms -0.26% (-5.35% to +0.56%)
 ↳ verify 5.72 ms 5.76 ms +0.64% (+0.03% to +0.81%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 156.77 ms 162.27 ms +3.70% (+3.38% to +3.80%)
 ↳ build-circuit 10.36 ms 10.32 ms -0.42% (-0.79% to +1.29%)
 ↳ prove-recursion 134.81 ms 140.30 ms +4.07% (+3.89% to +4.29%)
 ↳ reduce-claims 4.04 ms 4.28 ms +7.25% (+1.50% to +10.98%)
 ↳ reduce-in-rows 1.48 ms 1.43 ms -2.66% (-4.71% to -1.69%)
 ↳ verify 5.89 ms 5.91 ms +0.18% (-0.21% to +0.70%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 103.58 ms 107.59 ms +3.74% (+0.73% to +5.53%)
 ↳ build-circuit 10.47 ms 10.76 ms +3.15% (-2.72% to +4.97%)
 ↳ prove-recursion 81.35 ms 84.92 ms +4.43% (+0.94% to +6.13%)
 ↳ reduce-claims 3.97 ms 3.94 ms +2.50% (-1.65% to +4.74%)
 ↳ reduce-in-rows 1.47 ms 1.51 ms +1.20% (-2.40% to +6.29%)
 ↳ verify 6.30 ms 6.35 ms +0.23% (+0.11% to +1.80%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 571.68 ms 604.57 ms +6.01% (+4.29% to +6.78%)
 ↳ build-circuit 14.10 ms 14.69 ms +4.13% (-4.70% to +5.69%)
 ↳ prove-recursion 531.47 ms 563.50 ms +6.33% (+4.87% to +7.13%)
 ↳ reduce-claims 18.05 ms 18.03 ms -0.14% (-2.92% to +0.94%)
 ↳ reduce-in-rows 1.58 ms 1.67 ms +3.86% (-3.56% to +10.93%)
 ↳ verify 6.86 ms 6.86 ms +0.49% (-1.60% to +2.63%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 182.86 ms 191.96 ms +4.96% (+3.94% to +6.89%)
 ↳ build-circuit 14.20 ms 14.19 ms -0.53% (-1.97% to +10.40%)
 ↳ prove-recursion 153.49 ms 161.86 ms +5.23% (+4.56% to +6.67%)
 ↳ reduce-claims 6.74 ms 6.82 ms +6.53% (-5.49% to +41.88%)
 ↳ reduce-in-rows 1.70 ms 1.72 ms +0.26% (-4.33% to +13.37%)
 ↳ verify 6.74 ms 6.60 ms -2.07% (-2.95% to +0.53%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 118.49 ms 123.04 ms +3.11% (+2.51% to +4.45%)
 ↳ build-circuit 14.26 ms 14.11 ms -1.02% (-4.19% to -0.01%)
 ↳ prove-recursion 88.68 ms 93.27 ms +4.57% (+3.28% to +6.28%)
 ↳ reduce-claims 6.15 ms 6.20 ms -5.11% (-6.71% to +17.36%)
 ↳ reduce-in-rows 1.91 ms 1.82 ms -4.72% (-9.08% to +1.86%)
 ↳ verify 6.95 ms 6.82 ms -2.36% (-4.76% to +1.18%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 94.12 ms 96.53 ms +4.12% (-0.42% to +10.15%)
 ↳ build-circuit 13.94 ms 14.02 ms +0.15% (-3.28% to +10.05%)
 ↳ prove-recursion 63.53 ms 67.84 ms +5.12% (+1.11% to +10.71%)
 ↳ reduce-claims 7.47 ms 7.93 ms -12.32% (-20.70% to +24.45%)
 ↳ reduce-in-rows 1.75 ms 1.81 ms +3.01% (-2.33% to +10.57%)
 ↳ verify 7.18 ms 7.21 ms -0.22% (-0.76% to +5.08%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 1.01 s 1.04 s +2.39% (-11.29% to +2.90%)
 ↳ build-circuit 12.47 ms 12.42 ms -0.18% (-26.74% to +0.89%)
 ↳ prove-recursion 963.77 ms 988.06 ms +2.52% (-10.17% to +3.06%)
 ↳ reduce-claims 31.20 ms 30.72 ms -0.90% (-27.04% to +0.25%)
 ↳ reduce-in-rows 1.50 ms 1.42 ms -5.68% (-42.36% to +0.83%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 282.88 ms 290.91 ms +2.75% (+2.52% to +2.99%)
 ↳ build-circuit 11.44 ms 11.51 ms +0.99% (-0.35% to +2.93%)
 ↳ prove-recursion 254.88 ms 262.44 ms +2.98% (+2.64% to +3.19%)
 ↳ reduce-claims 10.28 ms 10.41 ms +1.06% (-2.02% to +3.32%)
 ↳ reduce-in-rows 1.54 ms 1.47 ms -4.84% (-7.02% to -0.41%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 165.49 ms 169.84 ms +2.77% (+1.97% to +2.92%)
 ↳ build-circuit 11.23 ms 11.25 ms +0.37% (-1.50% to +1.01%)
 ↳ prove-recursion 140.31 ms 144.70 ms +3.11% (+2.35% to +3.72%)
 ↳ reduce-claims 7.63 ms 7.81 ms +2.67% (-5.24% to +6.37%)
 ↳ reduce-in-rows 1.55 ms 1.46 ms -5.07% (-7.23% to -3.02%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 108.33 ms 111.71 ms +3.58% (+2.25% to +3.87%)
 ↳ build-circuit 11.43 ms 11.70 ms +1.11% (-2.04% to +4.40%)
 ↳ prove-recursion 83.89 ms 87.03 ms +4.23% (+2.81% to +5.16%)
 ↳ reduce-claims 6.67 ms 6.66 ms +1.11% (-4.96% to +3.58%)
 ↳ reduce-in-rows 1.54 ms 1.49 ms -3.80% (-4.62% to +1.72%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 609.57 ms 637.15 ms +4.52% (+4.21% to +5.13%)
 ↳ build-circuit 15.21 ms 15.26 ms +2.74% (-4.02% to +6.75%)
 ↳ prove-recursion 553.00 ms 580.47 ms +4.97% (+4.84% to +5.41%)
 ↳ reduce-claims 32.76 ms 32.91 ms +0.45% (-1.74% to +1.23%)
 ↳ reduce-in-rows 1.67 ms 1.67 ms +0.12% (-7.01% to +8.39%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 192.99 ms 200.12 ms +4.07% (+2.26% to +5.47%)
 ↳ build-circuit 14.86 ms 15.03 ms +2.60% (-1.31% to +4.63%)
 ↳ prove-recursion 157.46 ms 165.20 ms +5.12% (+3.68% to +5.96%)
 ↳ reduce-claims 12.57 ms 11.95 ms +0.96% (-13.29% to +17.52%)
 ↳ reduce-in-rows 1.83 ms 1.73 ms -3.26% (-8.74% to +5.10%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 123.44 ms 128.11 ms +3.76% (+2.49% to +5.33%)
 ↳ build-circuit 14.87 ms 15.59 ms +2.43% (-7.59% to +5.66%)
 ↳ prove-recursion 91.02 ms 95.74 ms +5.13% (+4.39% to +5.82%)
 ↳ reduce-claims 9.73 ms 9.46 ms +1.44% (-11.39% to +2.93%)
 ↳ reduce-in-rows 1.89 ms 1.88 ms +0.31% (-5.48% to +3.35%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 93.41 ms 96.61 ms -0.31% (-4.71% to +10.57%)
 ↳ build-circuit 14.93 ms 14.94 ms -0.40% (-2.28% to +2.38%)
 ↳ prove-recursion 61.27 ms 65.68 ms +0.27% (-4.08% to +13.58%)
 ↳ reduce-claims 9.62 ms 8.97 ms -8.62% (-14.73% to +19.09%)
 ↳ reduce-in-rows 1.86 ms 1.83 ms -2.82% (-9.28% to +9.44%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 1.88 s 1.95 s +3.54% (+3.11% to +3.89%)
 ↳ build-circuit 25.17 ms 25.32 ms +0.75% (-0.26% to +2.33%)
 ↳ prove-recursion 1.82 s 1.89 s +3.68% (+3.20% to +4.05%)
 ↳ reduce-claims 21.39 ms 21.11 ms -1.07% (-2.56% to -0.66%)
 ↳ reduce-in-rows 2.86 ms 2.82 ms -0.86% (-4.85% to +1.22%)
 ↳ verify 11.47 ms 11.49 ms +0.39% (-0.17% to +0.49%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 522.52 ms 540.27 ms +3.28% (+3.01% to +3.61%)
 ↳ build-circuit 22.01 ms 22.11 ms +0.65% (+0.14% to +1.00%)
 ↳ prove-recursion 479.10 ms 496.70 ms +3.56% (+3.26% to +3.88%)
 ↳ reduce-claims 6.96 ms 6.98 ms +0.53% (-1.04% to +1.34%)
 ↳ reduce-in-rows 2.88 ms 2.89 ms +1.40% (-0.46% to +3.16%)
 ↳ verify 11.46 ms 11.46 ms +0.35% (-0.71% to +0.78%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 299.85 ms 309.12 ms +3.11% (+2.85% to +3.25%)
 ↳ build-circuit 20.82 ms 20.98 ms +0.76% (+0.28% to +1.27%)
 ↳ prove-recursion 259.46 ms 268.46 ms +3.49% (+3.14% to +3.76%)
 ↳ reduce-claims 5.10 ms 5.09 ms +0.18% (-1.37% to +3.91%)
 ↳ reduce-in-rows 2.80 ms 2.85 ms +0.03% (-0.56% to +4.37%)
 ↳ verify 11.55 ms 11.61 ms +0.33% (-1.19% to +1.52%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 191.84 ms 197.16 ms +2.57% (+2.08% to +3.67%)
 ↳ build-circuit 20.94 ms 21.21 ms +1.15% (-1.25% to +2.20%)
 ↳ prove-recursion 151.09 ms 156.08 ms +3.12% (+2.86% to +4.06%)
 ↳ reduce-claims 4.78 ms 4.62 ms -3.19% (-4.99% to +4.83%)
 ↳ reduce-in-rows 2.88 ms 2.85 ms +1.02% (-1.77% to +1.65%)
 ↳ verify 12.20 ms 12.34 ms +0.51% (-0.33% to +1.45%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 1.03 s 1.06 s +3.40% (+1.61% to +3.83%)
 ↳ build-circuit 30.13 ms 29.56 ms -1.46% (-9.62% to +1.93%)
 ↳ prove-recursion 956.44 ms 991.05 ms +4.12% (+1.62% to +4.32%)
 ↳ reduce-claims 24.04 ms 23.28 ms -3.79% (-7.22% to +1.80%)
 ↳ reduce-in-rows 3.37 ms 3.40 ms +1.60% (-4.20% to +4.37%)
 ↳ verify 11.89 ms 11.42 ms -2.58% (-11.21% to -0.64%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 357.10 ms 373.26 ms +4.20% (+3.64% to +5.21%)
 ↳ build-circuit 31.88 ms 32.01 ms +0.82% (-1.22% to +5.61%)
 ↳ prove-recursion 299.73 ms 313.80 ms +4.69% (+4.45% to +6.10%)
 ↳ reduce-claims 9.57 ms 8.95 ms -4.48% (-8.69% to -0.22%)
 ↳ reduce-in-rows 3.84 ms 3.88 ms +2.57% (-2.95% to +6.74%)
 ↳ verify 12.69 ms 12.82 ms +0.13% (-0.63% to +1.43%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 222.38 ms 228.97 ms +3.30% (+2.14% to +3.72%)
 ↳ build-circuit 31.43 ms 31.47 ms -1.00% (-3.91% to +2.43%)
 ↳ prove-recursion 166.52 ms 174.14 ms +4.68% (+3.89% to +5.26%)
 ↳ reduce-claims 7.07 ms 6.65 ms -7.47% (-17.49% to +9.56%)
 ↳ reduce-in-rows 3.80 ms 3.76 ms -1.67% (-2.41% to +0.44%)
 ↳ verify 12.99 ms 13.12 ms -0.33% (-0.78% to +1.54%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 166.13 ms 168.68 ms +1.14% (-4.90% to +8.64%)
 ↳ build-circuit 30.34 ms 29.75 ms -0.39% (-3.67% to +1.69%)
 ↳ prove-recursion 111.01 ms 115.95 ms +1.79% (-7.47% to +12.31%)
 ↳ reduce-claims 8.37 ms 7.47 ms -5.16% (-13.81% to +18.23%)
 ↳ reduce-in-rows 3.56 ms 3.68 ms +2.46% (-3.96% to +9.01%)
 ↳ verify 13.22 ms 13.21 ms +0.88% (-2.16% to +1.29%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 2.06 s 2.15 s +4.96% (+4.56% to +5.04%)
 ↳ build-circuit 29.61 ms 29.29 ms -1.28% (-2.04% to +1.49%)
 ↳ prove-recursion 1.95 s 2.05 s +5.25% (+4.88% to +5.28%)
 ↳ reduce-claims 56.60 ms 56.87 ms +0.09% (-1.06% to +0.81%)
 ↳ reduce-in-rows 3.09 ms 2.96 ms -2.04% (-5.86% to +0.94%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 566.56 ms 592.92 ms +4.50% (+4.38% to +4.77%)
 ↳ build-circuit 26.38 ms 26.12 ms -0.32% (-1.33% to +0.02%)
 ↳ prove-recursion 508.76 ms 534.99 ms +5.05% (+4.91% to +5.35%)
 ↳ reduce-claims 17.45 ms 17.58 ms +0.24% (-0.54% to +1.25%)
 ↳ reduce-in-rows 3.03 ms 3.01 ms +0.29% (-1.41% to +0.78%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 324.34 ms 338.92 ms +4.35% (+4.11% to +4.80%)
 ↳ build-circuit 24.99 ms 24.85 ms -0.66% (-0.84% to +0.02%)
 ↳ prove-recursion 274.54 ms 289.11 ms +5.20% (+4.88% to +5.67%)
 ↳ reduce-claims 11.78 ms 11.84 ms +0.34% (+0.18% to +2.38%)
 ↳ reduce-in-rows 2.99 ms 2.97 ms -1.33% (-2.08% to +0.17%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 208.93 ms 216.05 ms +3.43% (+2.88% to +3.71%)
 ↳ build-circuit 25.14 ms 24.88 ms -0.36% (-1.57% to +0.89%)
 ↳ prove-recursion 160.79 ms 168.28 ms +4.46% (+3.99% to +5.06%)
 ↳ reduce-claims 9.58 ms 9.57 ms -0.32% (-6.82% to +1.64%)
 ↳ reduce-in-rows 3.02 ms 2.95 ms -0.38% (-2.55% to +0.06%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 1.12 s 1.17 s +4.13% (+2.02% to +5.46%)
 ↳ build-circuit 37.43 ms 37.65 ms +0.14% (-1.46% to +2.72%)
 ↳ prove-recursion 1.01 s 1.05 s +4.64% (+2.48% to +5.67%)
 ↳ reduce-claims 58.38 ms 60.08 ms +0.38% (-4.23% to +6.40%)
 ↳ reduce-in-rows 3.48 ms 3.54 ms -2.47% (-5.15% to +6.70%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 389.60 ms 404.89 ms +3.91% (+2.83% to +4.51%)
 ↳ build-circuit 37.59 ms 38.05 ms +2.36% (+0.87% to +3.24%)
 ↳ prove-recursion 315.88 ms 331.06 ms +4.81% (+4.31% to +5.50%)
 ↳ reduce-claims 20.51 ms 20.07 ms -2.65% (-15.85% to +0.86%)
 ↳ reduce-in-rows 4.18 ms 4.15 ms -1.66% (-4.38% to +3.84%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 241.17 ms 250.89 ms +4.03% (+2.84% to +4.56%)
 ↳ build-circuit 36.36 ms 36.49 ms +1.13% (-2.15% to +7.24%)
 ↳ prove-recursion 174.38 ms 182.85 ms +4.61% (+4.23% to +5.53%)
 ↳ reduce-claims 14.63 ms 14.83 ms -0.86% (-8.79% to +10.09%)
 ↳ reduce-in-rows 4.16 ms 4.20 ms +0.10% (-0.77% to +6.47%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 173.38 ms 181.62 ms +3.25% (+1.36% to +11.09%)
 ↳ build-circuit 34.93 ms 34.46 ms -1.34% (-6.32% to +2.03%)
 ↳ prove-recursion 113.31 ms 120.00 ms +4.47% (+2.85% to +17.90%)
 ↳ reduce-claims 12.07 ms 12.17 ms +1.08% (-1.28% to +5.12%)
 ↳ reduce-in-rows 4.06 ms 4.02 ms -1.92% (-2.20% to +1.34%)
leanxmss-100 1 arm64 Neoverse-V2 1.77 s 1.84 s +3.89% (+3.60% to +4.17%)
 ↳ build-witness 46.53 ms 46.18 ms -0.11% (-1.68% to +1.28%)
 ↳ commit 295.60 ms 300.65 ms +1.55% (+1.47% to +2.28%)
 ↳ execute-program 10.23 ms 10.28 ms +0.17% (-5.29% to +1.95%)
 ↳ flock-reductions 648.29 ms 649.62 ms +0.30% (-0.58% to +1.16%)
 ↳ pcs-open 628.16 ms 689.17 ms +9.71% (+9.27% to +9.96%)
 ↳ prove-bus 131.50 ms 131.80 ms +0.31% (-0.21% to +0.74%)
 ↳ prove-constraints 14.39 ms 14.56 ms -0.02% (-0.93% to +2.82%)
leanxmss-100 4 arm64 Neoverse-V2 473.85 ms 489.85 ms +3.45% (+3.24% to +3.70%)
 ↳ build-witness 12.82 ms 12.82 ms -0.00% (-0.44% to +0.98%)
 ↳ commit 74.48 ms 76.67 ms +2.68% (+2.11% to +3.55%)
 ↳ execute-program 10.49 ms 10.13 ms -3.41% (-5.79% to -0.14%)
 ↳ flock-reductions 169.48 ms 169.73 ms -0.14% (-0.41% to +0.89%)
 ↳ pcs-open 165.03 ms 179.48 ms +8.70% (+8.34% to +9.46%)
 ↳ prove-bus 35.41 ms 35.35 ms -0.23% (-1.17% to +0.27%)
 ↳ prove-constraints 5.43 ms 5.52 ms +0.68% (-0.65% to +2.98%)
leanxmss-100 8 arm64 Neoverse-V2 265.79 ms 274.83 ms +3.40% (+3.17% to +3.78%)
 ↳ build-witness 7.55 ms 7.45 ms -0.56% (-1.83% to +0.67%)
 ↳ commit 38.52 ms 39.88 ms +3.55% (+3.47% to +4.13%)
 ↳ execute-program 10.63 ms 10.40 ms -1.82% (-9.21% to +1.02%)
 ↳ flock-reductions 94.03 ms 94.26 ms +0.31% (-0.03% to +0.49%)
 ↳ pcs-open 89.99 ms 97.89 ms +8.69% (+8.39% to +9.07%)
 ↳ prove-bus 20.68 ms 20.66 ms -0.10% (-0.34% to +0.17%)
 ↳ prove-constraints 4.20 ms 4.22 ms +0.68% (-0.09% to +2.24%)
leanxmss-100 16 arm64 Neoverse-V2 163.29 ms 170.60 ms +3.88% (+0.04% to +7.08%)
 ↳ build-witness 4.85 ms 4.85 ms +0.66% (-0.32% to +1.74%)
 ↳ commit 20.44 ms 21.72 ms +6.24% (+5.47% to +6.64%)
 ↳ execute-program 10.34 ms 10.36 ms +0.21% (-5.51% to +2.60%)
 ↳ flock-reductions 56.83 ms 56.71 ms -0.24% (-5.59% to +2.93%)
 ↳ pcs-open 53.36 ms 57.52 ms +7.56% (+7.04% to +16.23%)
 ↳ prove-bus 13.37 ms 14.11 ms +5.55% (-6.70% to +15.45%)
 ↳ prove-constraints 3.95 ms 3.98 ms +0.87% (-0.68% to +5.19%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 1.05 s 1.11 s +5.00% (+3.28% to +6.07%)
 ↳ build-witness 70.72 ms 70.94 ms +0.30% (-1.85% to +1.78%)
 ↳ commit 191.71 ms 197.00 ms +2.09% (+0.43% to +5.58%)
 ↳ execute-program 13.08 ms 12.83 ms -1.37% (-3.43% to +5.39%)
 ↳ flock-reductions 310.07 ms 310.98 ms +0.40% (-1.32% to +1.41%)
 ↳ pcs-open 364.96 ms 407.89 ms +11.76% (+11.13% to +13.82%)
 ↳ prove-bus 83.25 ms 84.73 ms +2.57% (-1.71% to +3.52%)
 ↳ prove-constraints 19.62 ms 19.61 ms -0.31% (-0.57% to +2.60%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 280.79 ms 290.98 ms +3.46% (+2.70% to +6.99%)
 ↳ build-witness 18.32 ms 18.42 ms +0.52% (+0.02% to +4.51%)
 ↳ commit 43.91 ms 46.19 ms +5.41% (+2.23% to +7.51%)
 ↳ execute-program 11.79 ms 11.39 ms -3.33% (-6.85% to +4.64%)
 ↳ flock-reductions 79.96 ms 77.48 ms -3.10% (-6.63% to +4.74%)
 ↳ pcs-open 96.34 ms 106.57 ms +11.33% (+8.07% to +13.93%)
 ↳ prove-bus 23.10 ms 22.92 ms +0.30% (-2.28% to +5.83%)
 ↳ prove-constraints 7.10 ms 7.12 ms -0.41% (-1.85% to +1.63%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 172.61 ms 179.88 ms +4.21% (+3.66% to +9.63%)
 ↳ build-witness 10.85 ms 10.86 ms -0.09% (-0.60% to +1.32%)
 ↳ commit 23.96 ms 25.66 ms +6.77% (+6.73% to +7.38%)
 ↳ execute-program 12.19 ms 12.32 ms -0.17% (-2.80% to +4.24%)
 ↳ flock-reductions 47.41 ms 47.14 ms -0.57% (-1.10% to +0.01%)
 ↳ pcs-open 58.25 ms 63.96 ms +9.55% (+8.97% to +23.26%)
 ↳ prove-bus 14.43 ms 14.54 ms +0.91% (-0.60% to +10.98%)
 ↳ prove-constraints 5.26 ms 5.25 ms +0.91% (-1.08% to +6.22%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 119.96 ms 126.38 ms +3.27% (-2.05% to +5.59%)
 ↳ build-witness 7.18 ms 7.07 ms +0.22% (-5.10% to +1.71%)
 ↳ commit 14.08 ms 14.75 ms +7.85% (-1.42% to +14.49%)
 ↳ execute-program 11.87 ms 12.02 ms +0.25% (-2.08% to +4.44%)
 ↳ flock-reductions 32.28 ms 31.82 ms -1.44% (-7.79% to +2.85%)
 ↳ pcs-open 39.61 ms 44.34 ms +5.92% (+4.31% to +11.94%)
 ↳ prove-bus 10.84 ms 10.89 ms +0.35% (-6.64% to +4.86%)
 ↳ prove-constraints 4.57 ms 4.57 ms +1.09% (-5.82% to +12.43%)

…pening

Flock's reductions now follow the completed commitment record in both verifiers and provers; the bus, tables and opening follow. Bump to LVMP 18, LVMT 20 and leanvm-tree-17, above upstream's.
…de APIs) into the anchored PCS opening

Hiding commitments, the zero-knowledge stack's and the key commitment's, stay unanchored: an anchor's value would publish one more evaluation of the hidden witness. The anchored receivers refuse a padding configuration, the hiding ones a plain configuration, and weighted openings are refused on anchored commitments. LVMZ moves to 2 since its session names the program digest.

This branch has not been deployed

No deployments
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.

1 participant