Skip to content

zk: the outer proof of a padded transcript - #622

Open
tcoratger wants to merge 1 commit into
zk-stack/3-pcs-hidingfrom
zk-stack/4-outer-proof
Open

tcoratger wants to merge 1 commit into
zk-stack/3-pcs-hidingfrom
zk-stack/4-outer-proof

Conversation

@tcoratger

@tcoratger tcoratger commented Oct 11, 2026 •

Copy link
Copy Markdown
Collaborator

Stack: #619 spec → #620 transcript → #621 pcs → #622 outer proof → #623 ZK leaves → #624 recursion. Replaces #532.

Part 4 of 6 of the zero-knowledge stack (spec: Annex F, "The record" and "The outer proof").

A new zk crate: the outer proof that the keys satisfy every check the verifier made on hidden values.

API

  • Recorder<V>. It runs the verifier's own code over a padded transcript, through an inner verifier.
  • Value<E>. An element is Public, the inner verifier's own value, or Hidden, a Node of a linear graph over the keys.
  • What adds a row.
    • A product or an inverse of hidden values adds an auxiliary value and one row.
    • An equality with a hidden side adds one row.
    • So does ensure_bit.
  • Shape only. The record depends on the transcript's shape alone: nothing is merged, sorted or dropped by value. Recursion needs this (part 6).
  • The prover's side. Keys::commit draws a proof's keys, dummies and mask, and commits them behind a hiding CommittedStack.
  • The verifier's side. KeyCommitment::read reads that commitment's root.
  • The outer proof. outer::prove(ps, &record, &keys) and outer::verify(recorder, &commitment).
  • Randomness. Randomness::{Os, Fixed} gives a proof's Seed, and Seed::stream(Purpose) one ChaCha20 stream per purpose. A fixed seed is never printed.

Internals

  • The system is the record's rows, then two dummy rows on fresh slots.
  • The record pulls row weights back onto the keys in one reverse pass, linear in the graph.
  • The outer Spartan ends in a RowClaim and a MaskClaim, discharged by one weighted opening of the key commitment.

Tests

  • Spartan: honest claims hold; an unsatisfied row and a tampered proof fail; scalars move with the mask.
  • The pull-back equals the weighted rows.
  • End to end on a toy protocol:
    • an honest proof verifies;
    • a false product, inverse or bit is refused;
    • a tampered auxiliary value is refused.

Co-authored-by: Kevaundray Wedderburn kevtheappdev@gmail.com

🤖 Generated with Claude Code

@github-actions

github-actions Bot commented Oct 11, 2026 •

Copy link
Copy Markdown

Benchmarks: base against this PR, on one runner

ed77f84 merged into its base, against the base d2fc75c: 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.

PCS

benchmark threads runner measure base this PR change
ntt-forward-22 16 x86-64 Time per operation 2.94 ms 2.68 ms -4.27% (-11.21% to -1.06%)

leanXMSS

benchmark threads runner measure base this PR change
aggregate-leanxmss-100-2to1-node 16 x86-64 Proving time 96.15 ms 97.12 ms +2.58% (+0.60% to +3.08%)
aggregate-leanxmss-100-4to1-node 16 x86-64 Proving time 165.29 ms 176.16 ms +5.70% (+0.89% to +8.98%)
aggregate-leanxmss-100-4to1-node 16 x86-64 Verifying time 3.57 ms 3.60 ms +1.11% (+0.10% to +2.12%)
leanxmss-100 16 x86-64 Verifying time 3.20 ms 3.24 ms +1.38% (+0.91% to +2.60%)
Prover stages
benchmark threads runner base this PR change
aggregate-leanxmss-100-2to1-first 4 x86-64 180.67 ms 182.42 ms +0.77% (+0.10% to +1.05%)
 ↳ build-circuit 13.82 ms 13.99 ms +1.18% (-1.09% to +4.19%)
 ↳ prove-recursion 151.17 ms 152.00 ms +0.55% (+0.26% to +0.91%)
 ↳ reduce-claims 7.49 ms 7.40 ms +0.41% (-14.96% to +7.91%)
 ↳ reduce-in-rows 2.14 ms 2.16 ms +1.81% (+0.67% to +4.15%)
 ↳ verify 6.22 ms 6.23 ms -0.07% (-1.18% to +1.67%)
aggregate-leanxmss-100-2to1-first 8 x86-64 118.32 ms 119.33 ms +0.27% (-5.89% to +5.03%)
 ↳ build-circuit 14.01 ms 14.26 ms +1.32% (-0.54% to +2.17%)
 ↳ prove-recursion 89.10 ms 88.80 ms -0.31% (-8.03% to +6.32%)
 ↳ reduce-claims 6.46 ms 6.48 ms +3.69% (-7.78% to +14.15%)
 ↳ reduce-in-rows 2.18 ms 2.27 ms +1.09% (+0.28% to +6.76%)
 ↳ verify 6.50 ms 6.57 ms +0.99% (-1.16% to +1.63%)
aggregate-leanxmss-100-2to1-node 16 x86-64 96.15 ms 97.12 ms +2.58% (+0.60% to +3.08%)
 ↳ build-circuit 14.75 ms 14.65 ms -0.71% (-2.31% to +4.20%)
 ↳ prove-recursion 65.66 ms 65.92 ms +2.34% (-0.77% to +5.88%)
 ↳ reduce-claims 8.19 ms 8.78 ms +7.73% (-22.38% to +15.29%)
 ↳ reduce-in-rows 2.24 ms 2.25 ms +0.61% (-3.73% to +5.88%)
aggregate-leanxmss-100-4to1-first 8 arm64 300.85 ms 301.41 ms +0.12% (-0.04% to +0.86%)
 ↳ build-circuit 20.99 ms 21.19 ms +1.04% (-0.09% to +2.60%)
 ↳ prove-recursion 260.01 ms 260.88 ms +0.22% (-0.12% to +0.81%)
 ↳ reduce-claims 5.18 ms 5.11 ms -1.07% (-5.32% to -0.75%)
 ↳ reduce-in-rows 2.83 ms 2.86 ms +0.49% (-2.36% to +3.52%)
 ↳ verify 11.61 ms 11.70 ms +1.22% (-0.07% to +1.38%)
aggregate-leanxmss-100-4to1-first 1 x86-64 1.14 s 1.14 s +0.03% (-0.84% to +0.13%)
 ↳ build-circuit 30.93 ms 31.91 ms +1.69% (+0.24% to +4.58%)
 ↳ prove-recursion 1.07 s 1.06 s +0.00% (-1.00% to +0.20%)
 ↳ reduce-claims 25.71 ms 25.86 ms -0.43% (-2.81% to +0.73%)
 ↳ reduce-in-rows 4.31 ms 4.32 ms +0.11% (-3.73% to +3.02%)
 ↳ verify 12.17 ms 12.07 ms -1.13% (-3.00% to +1.84%)
aggregate-leanxmss-100-4to1-node 1 arm64 2.06 s 2.06 s -0.12% (-0.56% to +0.11%)
 ↳ build-circuit 29.49 ms 29.53 ms -0.34% (-2.57% to +0.73%)
 ↳ prove-recursion 1.96 s 1.96 s -0.13% (-0.53% to +0.13%)
 ↳ reduce-claims 56.32 ms 56.27 ms +0.40% (-0.61% to +0.75%)
 ↳ reduce-in-rows 3.05 ms 2.95 ms -2.85% (-4.31% to -0.28%)
aggregate-leanxmss-100-4to1-node 8 arm64 325.88 ms 326.52 ms +0.20% (-0.09% to +0.87%)
 ↳ build-circuit 25.14 ms 25.51 ms +1.47% (+0.32% to +3.10%)
 ↳ prove-recursion 275.71 ms 275.88 ms +0.04% (-0.16% to +0.61%)
 ↳ reduce-claims 11.91 ms 11.97 ms +0.54% (-1.92% to +0.89%)
 ↳ reduce-in-rows 2.99 ms 3.00 ms +0.18% (-0.15% to +2.86%)
aggregate-leanxmss-100-4to1-node 4 x86-64 340.06 ms 339.73 ms -0.50% (-4.22% to +0.12%)
 ↳ build-circuit 33.12 ms 32.10 ms -3.58% (-4.42% to +4.69%)
 ↳ prove-recursion 275.87 ms 273.21 ms -1.08% (-4.87% to -0.32%)
 ↳ reduce-claims 18.50 ms 18.98 ms +2.78% (+2.61% to +7.11%)
 ↳ reduce-in-rows 4.14 ms 4.13 ms +2.12% (-4.45% to +5.49%)
aggregate-leanxmss-100-4to1-node 16 x86-64 165.29 ms 176.16 ms +5.70% (+0.89% to +8.98%)
 ↳ build-circuit 35.39 ms 35.62 ms +0.72% (-3.08% to +3.88%)
 ↳ prove-recursion 102.69 ms 112.05 ms +9.12% (+2.44% to +14.29%)
 ↳ reduce-claims 12.33 ms 12.65 ms +1.72% (+0.71% to +15.52%)
 ↳ reduce-in-rows 4.57 ms 4.51 ms -0.85% (-3.36% to +0.97%)
leanxmss-100 4 x86-64 314.92 ms 315.85 ms +0.30% (-0.09% to +5.59%)
 ↳ build-witness 20.27 ms 20.09 ms -0.31% (-1.65% to +4.60%)
 ↳ commit 49.85 ms 50.25 ms +0.83% (+0.57% to +2.03%)
 ↳ execute-program 13.16 ms 13.60 ms +0.23% (-1.06% to +3.34%)
 ↳ flock-reductions 89.56 ms 90.27 ms +0.86% (-0.11% to +7.18%)
 ↳ pcs-open 108.29 ms 107.48 ms -0.34% (-1.07% to +6.64%)
 ↳ prove-bus 25.80 ms 26.16 ms +1.69% (+0.45% to +4.47%)
 ↳ prove-constraints 7.71 ms 7.73 ms +1.92% (-1.71% to +5.89%)
leanxmss-100 8 x86-64 182.41 ms 182.99 ms +0.08% (-0.28% to +0.69%)
 ↳ build-witness 11.22 ms 11.33 ms +0.94% (-1.60% to +2.32%)
 ↳ commit 24.76 ms 24.65 ms -0.44% (-1.55% to +1.27%)
 ↳ execute-program 12.70 ms 12.69 ms -0.87% (-1.87% to +3.64%)
 ↳ flock-reductions 51.32 ms 51.29 ms -0.04% (-0.15% to +0.05%)
 ↳ pcs-open 61.59 ms 61.44 ms +0.28% (-0.89% to +1.01%)
 ↳ prove-bus 15.39 ms 15.65 ms +1.62% (+0.92% to +2.10%)
 ↳ prove-constraints 5.51 ms 5.47 ms -0.81% (-5.80% to +0.37%)
leanxmss-100 16 x86-64 139.50 ms 130.74 ms -6.28% (-11.63% to +2.81%)
 ↳ build-witness 7.50 ms 7.31 ms +0.31% (-9.14% to +3.83%)
 ↳ commit 15.84 ms 14.72 ms -6.66% (-21.33% to +6.18%)
 ↳ execute-program 12.35 ms 12.12 ms -0.64% (-5.81% to +1.41%)
 ↳ flock-reductions 42.09 ms 38.78 ms -8.42% (-13.72% to -0.91%)
 ↳ pcs-open 44.60 ms 41.85 ms -3.65% (-10.80% to +5.16%)
 ↳ prove-bus 11.56 ms 11.25 ms -2.88% (-10.77% to +6.13%)
 ↳ prove-constraints 4.77 ms 4.63 ms -2.65% (-6.54% to +4.96%)
Every result

BLAKE2s

benchmark threads runner CPU measure base this PR change
hash-50000 16 arm64 Neoverse-V2 Proving time 519.40 ms 520.32 ms +0.07% (-1.05% to +0.39%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 315.30 ms 314.60 ms +0.08% (-9.97% to +9.47%)
hash-50000 16 arm64 Neoverse-V2 Verifying time 3.16 ms 3.16 ms -0.15% (-0.35% to +0.50%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 2.84 ms 3.02 ms +4.75% (-1.35% to +8.35%)
blake2s-batch 16 arm64 Neoverse-V2 Time per operation 2.91 ns 2.90 ns -0.03% (-0.85% to +0.48%)
blake2s-batch 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 0.95 ns 1.02 ns +5.45% (-14.30% to +15.67%)
hash-50000 16 arm64 Neoverse-V2 Proof size 322,858 B 322,858 B 0 B (+0.00%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 322,858 B 322,858 B 0 B (+0.00%)
hash-50000 16 arm64 Neoverse-V2 Peak memory 4975.62 MiB 4983.42 MiB +0.11% (-0.02% to +0.20%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 2189.79 MiB 2190.85 MiB +0.19% (-0.27% to +0.31%)
hash-50000 16 arm64 Neoverse-V2 Peak heap 4400.87 MiB 4400.89 MiB +0.00% (-0.00% to +0.00%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 1917.38 MiB 1917.21 MiB -0.00% (-0.02% to +0.00%)
hash-50000 16 arm64 Neoverse-V2 Allocations 19,337 19,337 +0.00% (+0.00% to +0.32%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 19,983 19,985 +0.00% (-0.01% to +0.08%)
Prover stages
benchmark threads runner CPU base this PR change
hash-50000 16 arm64 Neoverse-V2 519.40 ms 520.32 ms +0.07% (-1.05% to +0.39%)
 ↳ build-witness 19.88 ms 19.88 ms +0.04% (-12.93% to +0.25%)
 ↳ commit 82.20 ms 82.25 ms +0.37% (-0.66% to +0.53%)
 ↳ execute-program 23.17 ms 23.35 ms +0.56% (-3.96% to +5.37%)
 ↳ flock-reductions 170.65 ms 170.45 ms -0.13% (-1.32% to +0.41%)
 ↳ pcs-open 186.21 ms 186.66 ms +0.23% (-0.16% to +0.58%)
 ↳ prove-bus 29.96 ms 29.99 ms +0.07% (-1.09% to +0.10%)
 ↳ prove-constraints 7.09 ms 7.07 ms -0.95% (-4.67% to +3.22%)
hash-50000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 315.30 ms 314.60 ms +0.08% (-9.97% to +9.47%)
 ↳ build-witness 22.58 ms 22.84 ms -0.93% (-10.02% to +8.31%)
 ↳ commit 44.03 ms 40.98 ms -0.59% (-19.01% to +15.64%)
 ↳ execute-program 25.94 ms 25.92 ms -0.72% (-8.38% to +3.23%)
 ↳ flock-reductions 87.98 ms 84.70 ms -3.73% (-13.32% to +10.67%)
 ↳ pcs-open 108.65 ms 113.66 ms +6.49% (-8.91% to +12.87%)
 ↳ prove-bus 20.48 ms 20.08 ms -1.95% (-13.60% to +9.61%)
 ↳ prove-constraints 8.38 ms 8.24 ms -7.06% (-13.14% to +5.54%)

Fibonacci

benchmark threads runner CPU measure base this PR change
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Proving time 815.37 ms 813.42 ms -0.24% (-0.57% to +0.52%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 502.52 ms 493.17 ms +0.38% (-2.00% to +1.88%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Verifying time 3.22 ms 3.22 ms +0.50% (-0.53% to +1.01%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.22 ms 3.23 ms +0.21% (-2.22% to +1.98%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Proof size 364,010 B 364,010 B 0 B (+0.00%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 364,010 B 364,010 B 0 B (+0.00%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Peak memory 7625.92 MiB 7626.84 MiB -0.00% (-0.01% to +0.04%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 3563.22 MiB 3562.72 MiB +0.01% (-0.11% to +0.13%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Peak heap 7049.85 MiB 7049.87 MiB +0.00% (-0.00% to +0.00%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 3307.45 MiB 3307.38 MiB -0.00% (-0.00% to +0.00%)
fibonacci-asm-2000000 16 arm64 Neoverse-V2 Allocations 14,330 14,330 +0.00% (+0.00% to +0.00%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 14,967 14,967 +0.00% (+0.00% to +0.00%)
Prover stages
benchmark threads runner CPU base this PR change
fibonacci-asm-2000000 16 arm64 Neoverse-V2 815.37 ms 813.42 ms -0.24% (-0.57% to +0.52%)
 ↳ build-witness 29.24 ms 29.23 ms -0.12% (-0.97% to +0.19%)
 ↳ commit 125.02 ms 125.03 ms -0.06% (-0.70% to +1.12%)
 ↳ execute-program 63.46 ms 61.93 ms -1.52% (-3.88% to +4.68%)
 ↳ flock-reductions 293.51 ms 293.95 ms +0.15% (-0.07% to +0.36%)
 ↳ pcs-open 233.51 ms 233.62 ms -0.07% (-1.01% to +0.42%)
 ↳ prove-bus 59.42 ms 59.40 ms +0.12% (-0.24% to +0.47%)
 ↳ prove-constraints 10.82 ms 10.80 ms -0.20% (-1.27% to +0.87%)
fibonacci-asm-2000000 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 502.52 ms 493.17 ms +0.38% (-2.00% to +1.88%)
 ↳ build-witness 38.84 ms 38.04 ms -0.80% (-3.13% to +3.19%)
 ↳ commit 70.93 ms 68.20 ms +1.04% (-4.58% to +4.77%)
 ↳ execute-program 72.61 ms 72.03 ms -1.38% (-5.88% to +1.36%)
 ↳ flock-reductions 132.67 ms 130.56 ms +0.33% (-1.97% to +5.32%)
 ↳ pcs-open 136.06 ms 135.25 ms +0.58% (-3.82% to +1.63%)
 ↳ prove-bus 37.84 ms 36.35 ms +0.71% (-4.60% to +4.48%)
 ↳ prove-constraints 13.64 ms 13.11 ms +0.24% (-5.09% to +1.55%)

Field and transpose kernels

benchmark threads runner CPU measure base this PR change
f192-inv default arm64 Neoverse-V2 Time per operation 245.13 ns 245.09 ns +0.00% (-0.07% to +0.04%)
f192-inv default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 265.43 ns 265.43 ns -0.01% (-0.02% to +0.07%)
f192-mul-latency default arm64 Neoverse-V2 Time per operation 8.04 ns 8.03 ns -0.09% (-0.76% to +0.65%)
f192-mul-latency default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 7.51 ns 7.53 ns +0.24% (-0.05% to +0.55%)
f192-mul-throughput default arm64 Neoverse-V2 Time per operation 2.94 ns 2.94 ns +0.00% (-0.03% to +0.03%)
f192-mul-throughput default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 4.43 ns 4.43 ns +0.00% (-0.05% to +0.38%)
f192-mul4-latency default arm64 Neoverse-V2 Time per operation 13.08 ns 13.08 ns +0.01% (-2.68% to +1.23%)
f192-mul4-latency default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 10.10 ns 10.09 ns -0.01% (-0.14% to +0.07%)
f192-mul4-throughput default arm64 Neoverse-V2 Time per operation 10.77 ns 10.77 ns -0.06% (-0.09% to +0.03%)
f192-mul4-throughput default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 15.60 ns 15.60 ns +0.00% (-0.06% to +0.12%)
f192-square default arm64 Neoverse-V2 Time per operation 1.70 ns 1.70 ns +0.06% (-0.06% to +0.12%)
f192-square default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 3.32 ns 3.31 ns -0.24% (-2.33% to +0.06%)
f64-inv default arm64 Neoverse-V2 Time per operation 211.55 ns 211.63 ns +0.06% (-0.10% to +0.29%)
f64-inv default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 237.16 ns 237.07 ns -0.03% (-0.07% to +0.01%)
f64-mul default arm64 Neoverse-V2 Time per operation 0.56 ns 0.56 ns -0.18% (-0.36% to +0.54%)
f64-mul default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 0.86 ns 0.86 ns +0.12% (+0.00% to +0.23%)
f64-square default arm64 Neoverse-V2 Time per operation 0.55 ns 0.55 ns +0.00% (-0.18% to +0.91%)
f64-square default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 1.08 ns 1.08 ns +0.09% (+0.00% to +0.19%)
transpose-64bytes default arm64 Neoverse-V2 Time per operation 12.00 ns 12.01 ns +0.01% (-0.04% to +0.06%)
transpose-64bytes default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 0.84 ns 0.84 ns -0.24% (-1.08% to +0.00%)
transpose-64x64 default arm64 Neoverse-V2 Time per operation 96.44 ns 96.37 ns -0.08% (-0.43% to +0.07%)
transpose-64x64 default x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 73.19 ns 73.13 ns -0.05% (-0.12% to -0.02%)

Flock

benchmark threads runner CPU measure base this PR change
flock-alu-batch-262144 16 arm64 Neoverse-V2 Proving time 51.73 ms 51.52 ms +0.01% (-3.95% to +8.05%)
flock-alu-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 28.96 ms 29.36 ms +1.78% (-3.39% to +5.71%)
flock-div-batch-262144 16 arm64 Neoverse-V2 Proving time 367.40 ms 367.91 ms +0.13% (-0.31% to +0.23%)
flock-div-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 169.50 ms 169.56 ms +0.03% (-0.03% to +1.73%)
flock-hash-batch-262144 16 arm64 Neoverse-V2 Proving time 765.96 ms 766.05 ms +0.01% (-3.48% to +0.52%)
flock-hash-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 355.91 ms 355.10 ms -0.18% (-4.59% to +0.15%)
flock-ld-batch-262144 16 arm64 Neoverse-V2 Proving time 15.80 ms 15.82 ms +0.73% (-0.91% to +1.28%)
flock-ld-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 9.66 ms 9.62 ms -0.59% (-3.50% to +3.09%)
flock-load-batch-262144 16 arm64 Neoverse-V2 Proving time 50.02 ms 49.90 ms -0.01% (-2.86% to +0.47%)
flock-load-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 28.28 ms 28.40 ms +4.61% (-2.74% to +6.42%)
flock-mul-batch-262144 16 arm64 Neoverse-V2 Proving time 187.53 ms 188.09 ms +0.25% (-0.06% to +1.37%)
flock-mul-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 95.40 ms 96.23 ms -0.03% (-5.31% to +7.63%)
flock-mulh-batch-262144 16 arm64 Neoverse-V2 Proving time 360.62 ms 361.18 ms +0.25% (-0.70% to +1.82%)
flock-mulh-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 167.65 ms 172.40 ms +2.86% (-2.07% to +6.57%)
flock-sd-batch-262144 16 arm64 Neoverse-V2 Proving time 16.34 ms 16.34 ms -0.20% (-13.56% to +2.25%)
flock-sd-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 9.90 ms 9.70 ms -2.00% (-4.95% to +3.02%)
flock-shift-batch-262144 16 arm64 Neoverse-V2 Proving time 50.63 ms 50.17 ms -0.57% (-1.70% to -0.22%)
flock-shift-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 27.82 ms 27.93 ms -0.29% (-2.20% to +3.33%)
flock-store-batch-262144 16 arm64 Neoverse-V2 Proving time 50.10 ms 50.09 ms -0.39% (-12.64% to +0.82%)
flock-store-batch-262144 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 28.33 ms 28.28 ms +0.78% (-2.40% to +3.70%)

PCS

benchmark threads runner CPU measure base this PR change
pcs-commit-22 16 arm64 Neoverse-V2 Proving time 7.38 ms 7.39 ms +1.28% (-2.71% to +3.56%)
pcs-commit-22 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 5.33 ms 5.16 ms -2.27% (-20.15% to +10.66%)
pcs-open-22 16 arm64 Neoverse-V2 Proving time 20.80 ms 20.73 ms -0.28% (-2.57% to +1.00%)
pcs-open-22 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 14.53 ms 13.53 ms -5.64% (-10.84% to +4.61%)
ntt-forward-22 16 arm64 Neoverse-V2 Time per operation 3.73 ms 3.78 ms +1.49% (-2.99% to +6.37%)
ntt-forward-22 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Time per operation 2.94 ms 2.68 ms -4.27% (-11.21% to -1.06%)

leanSPHINCS

benchmark threads runner CPU measure base this PR change
leansphincs-26 16 arm64 Neoverse-V2 Proving time 180.25 ms 180.30 ms -0.16% (-3.01% to +3.02%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 139.11 ms 141.94 ms +0.93% (-6.98% to +8.46%)
leansphincs-26 16 arm64 Neoverse-V2 Verifying time 3.24 ms 3.22 ms -0.31% (-0.80% to -0.05%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.24 ms 3.28 ms +1.38% (-0.53% to +2.26%)
leansphincs-26 16 arm64 Neoverse-V2 Proof size 316,306 B 316,306 B 0 B (+0.00%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 316,306 B 316,306 B 0 B (+0.00%)
leansphincs-26 16 arm64 Neoverse-V2 Peak memory 1744.48 MiB 1740.46 MiB -0.13% (-0.70% to +0.49%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 819.02 MiB 819.52 MiB +0.02% (-0.49% to +0.27%)
leansphincs-26 16 arm64 Neoverse-V2 Peak heap 1395.70 MiB 1395.66 MiB -0.00% (-0.00% to -0.00%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 649.96 MiB 649.90 MiB -0.01% (-0.01% to -0.00%)
leansphincs-26 16 arm64 Neoverse-V2 Allocations 27,718 27,718 +0.00% (-0.24% to +0.12%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 28,417 28,416 -0.00% (-0.00% to +0.00%)
Prover stages
benchmark threads runner CPU base this PR change
leansphincs-26 16 arm64 Neoverse-V2 180.25 ms 180.30 ms -0.16% (-3.01% to +3.02%)
 ↳ build-witness 5.64 ms 5.60 ms -0.73% (-1.03% to +0.10%)
 ↳ commit 23.75 ms 23.70 ms -0.21% (-0.99% to +1.15%)
 ↳ execute-program 11.97 ms 12.04 ms +0.31% (-5.63% to +2.76%)
 ↳ flock-reductions 62.30 ms 62.33 ms -0.32% (-5.49% to +1.85%)
 ↳ pcs-open 57.42 ms 57.13 ms +0.18% (-2.49% to +5.08%)
 ↳ prove-bus 15.08 ms 15.06 ms -0.35% (-3.80% to +5.36%)
 ↳ prove-constraints 4.18 ms 4.18 ms -0.50% (-6.35% to +2.00%)
leansphincs-26 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 139.11 ms 141.94 ms +0.93% (-6.98% to +8.46%)
 ↳ build-witness 8.33 ms 8.50 ms +3.20% (-5.51% to +8.58%)
 ↳ commit 15.04 ms 14.25 ms +4.85% (-9.99% to +15.70%)
 ↳ execute-program 14.37 ms 14.48 ms -1.04% (-11.78% to +7.21%)
 ↳ flock-reductions 41.94 ms 41.66 ms +0.85% (-9.36% to +11.17%)
 ↳ pcs-open 43.07 ms 43.36 ms -1.68% (-5.62% to +9.48%)
 ↳ prove-bus 12.32 ms 12.22 ms +1.83% (-4.68% to +8.70%)
 ↳ prove-constraints 5.07 ms 5.18 ms +1.87% (-2.04% to +6.21%)

leanXMSS

benchmark threads runner CPU measure base this PR change
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Proving time 1.01 s 971.47 ms -3.07% (-10.08% to +0.15%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Proving time 270.60 ms 270.68 ms -0.08% (-0.26% to +0.36%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Proving time 158.00 ms 158.11 ms -0.02% (-0.20% to +0.17%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Proving time 103.58 ms 103.68 ms +0.14% (-1.85% to +0.72%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 596.34 ms 598.73 ms +0.28% (-1.11% to +0.81%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 180.67 ms 182.42 ms +0.77% (+0.10% to +1.05%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 118.32 ms 119.33 ms +0.27% (-5.89% to +5.03%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 94.44 ms 95.90 ms +1.72% (-4.63% to +4.52%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Proving time 1.00 s 997.27 ms -0.55% (-5.44% to +0.62%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Proving time 279.25 ms 278.77 ms -0.19% (-0.33% to +0.34%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Proving time 163.21 ms 162.96 ms -0.11% (-0.25% to +0.23%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Proving time 106.60 ms 106.28 ms -0.31% (-4.10% to +0.51%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 627.36 ms 625.85 ms -0.11% (-0.91% to +1.09%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 188.51 ms 188.48 ms -0.02% (-0.81% to +1.81%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 123.00 ms 124.44 ms +1.49% (-4.45% to +4.22%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 96.15 ms 97.12 ms +2.58% (+0.60% to +3.08%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Proving time 1.89 s 1.89 s +0.04% (-0.67% to +0.06%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Proving time 518.41 ms 519.33 ms +0.14% (-0.06% to +0.46%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Proving time 300.85 ms 301.41 ms +0.12% (-0.04% to +0.86%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Proving time 192.78 ms 192.40 ms -0.15% (-1.50% to +0.19%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 1.14 s 1.14 s +0.03% (-0.84% to +0.13%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 321.12 ms 318.78 ms -0.70% (-14.83% to +1.73%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 225.89 ms 225.33 ms -0.12% (-0.61% to +1.10%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 159.41 ms 156.00 ms +0.86% (-8.68% to +9.95%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Proving time 2.06 s 2.06 s -0.12% (-0.56% to +0.11%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Proving time 564.20 ms 564.03 ms -0.05% (-0.31% to +0.09%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Proving time 325.88 ms 326.52 ms +0.20% (-0.09% to +0.87%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Proving time 209.07 ms 210.32 ms +0.54% (-0.01% to +0.83%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 1.25 s 1.25 s +0.29% (-0.54% to +0.86%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 340.06 ms 339.73 ms -0.50% (-4.22% to +0.12%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 244.26 ms 244.87 ms +1.30% (-3.46% to +2.95%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 165.29 ms 176.16 ms +5.70% (+0.89% to +8.98%)
leanxmss-100 1 arm64 Neoverse-V2 Proving time 1.78 s 1.78 s -0.13% (-0.56% to +0.41%)
leanxmss-100 4 arm64 Neoverse-V2 Proving time 492.66 ms 486.58 ms -1.02% (-1.71% to +0.93%)
leanxmss-100 8 arm64 Neoverse-V2 Proving time 264.64 ms 265.05 ms -0.06% (-0.31% to +0.66%)
leanxmss-100 16 arm64 Neoverse-V2 Proving time 161.29 ms 162.58 ms +0.38% (-0.50% to +3.03%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 1.02 s 1.02 s -0.08% (-0.50% to +0.21%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 314.92 ms 315.85 ms +0.30% (-0.09% to +5.59%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 182.41 ms 182.99 ms +0.08% (-0.28% to +0.69%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proving time 139.50 ms 130.74 ms -6.28% (-11.63% to +2.81%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Verifying time 4.24 ms 4.05 ms -4.29% (-18.30% to +1.05%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Verifying time 2.79 ms 2.79 ms +0.07% (-0.25% to +0.50%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Verifying time 2.72 ms 2.71 ms -0.46% (-1.56% to +0.02%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Verifying time 2.77 ms 2.79 ms +0.62% (-2.81% to +1.80%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.80 ms 3.84 ms +1.14% (-0.65% to +2.42%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 2.73 ms 2.76 ms +2.20% (-1.46% to +5.33%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.02 ms 3.00 ms -1.00% (-2.76% to +5.46%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.04 ms 3.00 ms -1.46% (-5.56% to +5.70%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Verifying time 6.82 ms 6.78 ms -1.49% (-3.94% to +0.41%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Verifying time 3.55 ms 3.58 ms +0.61% (+0.26% to +2.58%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Verifying time 3.16 ms 3.15 ms -0.66% (-1.04% to +0.08%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Verifying time 3.07 ms 3.07 ms +0.25% (-1.23% to +1.99%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 7.18 ms 7.27 ms -0.38% (-4.84% to +10.18%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.66 ms 3.74 ms +2.15% (-1.89% to +10.96%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.42 ms 3.37 ms -1.06% (-2.70% to +2.12%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.09 ms 3.19 ms +3.15% (-1.44% to +3.71%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Verifying time 4.86 ms 4.86 ms -0.53% (-1.77% to +0.05%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Verifying time 3.18 ms 3.17 ms -0.33% (-0.81% to +0.40%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Verifying time 3.02 ms 3.03 ms +0.91% (-0.17% to +1.80%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Verifying time 3.03 ms 3.03 ms +0.46% (-0.59% to +1.64%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 4.16 ms 4.15 ms +0.64% (-2.22% to +2.26%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 2.83 ms 2.76 ms -1.61% (-10.66% to +4.51%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.08 ms 3.09 ms -0.20% (-3.13% to +4.84%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.13 ms 3.21 ms +2.18% (-2.47% to +6.23%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Verifying time 10.35 ms 10.31 ms -0.17% (-4.28% to +4.48%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Verifying time 4.63 ms 4.54 ms -0.62% (-2.54% to +0.01%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Verifying time 3.82 ms 3.83 ms +0.42% (-0.14% to +2.81%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Verifying time 3.53 ms 3.54 ms +0.37% (-0.58% to +1.39%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 10.70 ms 10.71 ms +0.28% (-0.73% to +1.68%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 4.55 ms 4.56 ms +0.34% (-2.72% to +2.15%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 4.26 ms 4.14 ms -1.63% (-5.89% to +0.79%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.57 ms 3.60 ms +1.11% (+0.10% to +2.12%)
leanxmss-100 1 arm64 Neoverse-V2 Verifying time 3.07 ms 3.07 ms -0.07% (-1.04% to +0.40%)
leanxmss-100 4 arm64 Neoverse-V2 Verifying time 3.10 ms 3.04 ms -1.89% (-7.54% to +6.20%)
leanxmss-100 8 arm64 Neoverse-V2 Verifying time 3.03 ms 3.04 ms +0.12% (-0.70% to +0.66%)
leanxmss-100 16 arm64 Neoverse-V2 Verifying time 3.21 ms 3.21 ms -0.22% (-0.46% to +0.44%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 2.99 ms 2.99 ms +0.18% (-0.07% to +8.53%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.13 ms 3.16 ms +0.70% (-0.02% to +2.16%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.16 ms 3.15 ms -0.11% (-0.53% to +1.01%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Verifying time 3.20 ms 3.24 ms +1.38% (+0.91% to +2.60%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Proof size 256,859 B 256,859 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Proof size 256,859 B 256,859 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Proof size 256,859 B 256,859 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Proof size 256,859 B 256,859 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,859 B 256,859 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,859 B 256,859 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,859 B 256,859 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,859 B 256,859 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Proof size 256,795 B 256,795 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Proof size 256,795 B 256,795 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Proof size 256,795 B 256,795 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Proof size 256,795 B 256,795 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,795 B 256,795 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,795 B 256,795 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,795 B 256,795 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 256,795 B 256,795 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Proof size 281,055 B 281,055 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Proof size 281,055 B 281,055 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Proof size 281,055 B 281,055 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Proof size 281,055 B 281,055 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 281,055 B 281,055 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 281,055 B 281,055 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 281,055 B 281,055 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 281,055 B 281,055 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Proof size 281,279 B 281,279 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Proof size 281,279 B 281,279 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Proof size 281,279 B 281,279 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Proof size 281,279 B 281,279 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 281,279 B 281,279 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 281,279 B 281,279 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 281,279 B 281,279 B 0 B (+0.00%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 281,279 B 281,279 B 0 B (+0.00%)
leanxmss-100 1 arm64 Neoverse-V2 Proof size 303,314 B 303,314 B 0 B (+0.00%)
leanxmss-100 4 arm64 Neoverse-V2 Proof size 303,314 B 303,314 B 0 B (+0.00%)
leanxmss-100 8 arm64 Neoverse-V2 Proof size 303,314 B 303,314 B 0 B (+0.00%)
leanxmss-100 16 arm64 Neoverse-V2 Proof size 303,314 B 303,314 B 0 B (+0.00%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 303,314 B 303,314 B 0 B (+0.00%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 303,314 B 303,314 B 0 B (+0.00%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 303,314 B 303,314 B 0 B (+0.00%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Proof size 303,314 B 303,314 B 0 B (+0.00%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Peak memory 1570.30 MiB 1570.34 MiB +0.00% (-0.10% to +1.01%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Peak memory 1594.12 MiB 1591.81 MiB -0.10% (-0.17% to -0.00%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Peak memory 1629.75 MiB 1627.34 MiB -0.12% (-0.23% to +0.02%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Peak memory 1709.93 MiB 1712.71 MiB +0.29% (-0.69% to +0.87%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 834.83 MiB 834.58 MiB -0.03% (-0.24% to +0.02%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 864.59 MiB 866.61 MiB +0.30% (-0.11% to +0.72%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 892.16 MiB 889.12 MiB -0.27% (-0.93% to +0.31%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 932.93 MiB 934.13 MiB -0.20% (-0.85% to +0.90%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Peak memory 1570.57 MiB 1570.59 MiB -0.00% (-0.10% to +1.00%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Peak memory 1594.87 MiB 1592.93 MiB -0.12% (-0.13% to +0.00%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Peak memory 1631.98 MiB 1629.22 MiB -0.04% (-0.21% to -0.02%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Peak memory 1722.22 MiB 1727.23 MiB +0.19% (-0.36% to +0.62%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 834.83 MiB 834.58 MiB -0.03% (-0.24% to +0.02%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 871.83 MiB 873.26 MiB +0.03% (-0.55% to +0.74%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 908.20 MiB 910.39 MiB -0.30% (-0.78% to +0.53%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 968.91 MiB 965.83 MiB -0.27% (-0.54% to +0.45%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Peak memory 1958.67 MiB 1956.84 MiB -0.01% (-0.84% to +0.74%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Peak memory 1982.16 MiB 1980.26 MiB -0.01% (-0.12% to +0.10%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Peak memory 2020.29 MiB 2020.40 MiB +0.06% (-0.13% to +0.21%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Peak memory 2097.82 MiB 2099.73 MiB +0.20% (-0.23% to +0.53%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1020.60 MiB 1020.60 MiB -0.00% (-0.20% to +0.02%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1056.50 MiB 1057.60 MiB +0.12% (-0.02% to +0.65%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1083.92 MiB 1082.82 MiB -0.11% (-0.42% to +0.21%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1129.80 MiB 1134.88 MiB +0.39% (-0.32% to +1.39%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Peak memory 1961.36 MiB 1957.59 MiB -0.10% (-0.93% to +0.74%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Peak memory 1982.91 MiB 1981.11 MiB -0.00% (-0.11% to +0.09%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Peak memory 2023.90 MiB 2022.38 MiB -0.07% (-0.19% to +0.05%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Peak memory 2116.41 MiB 2117.79 MiB +0.18% (-0.41% to +0.31%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1046.61 MiB 1046.60 MiB +0.00% (-0.19% to +0.02%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1067.52 MiB 1070.82 MiB +0.20% (+0.09% to +0.55%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1105.09 MiB 1106.39 MiB +0.12% (-0.69% to +0.85%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 1170.85 MiB 1172.59 MiB +0.33% (-1.13% to +0.71%)
leanxmss-100 1 arm64 Neoverse-V2 Peak memory 1394.44 MiB 1394.45 MiB +0.01% (-0.14% to +2.06%)
leanxmss-100 4 arm64 Neoverse-V2 Peak memory 1419.60 MiB 1418.34 MiB -0.13% (-0.16% to +0.06%)
leanxmss-100 8 arm64 Neoverse-V2 Peak memory 1456.68 MiB 1455.14 MiB -0.07% (-0.44% to +0.07%)
leanxmss-100 16 arm64 Neoverse-V2 Peak memory 1520.73 MiB 1524.58 MiB +0.27% (-0.21% to +0.63%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 646.62 MiB 648.35 MiB +0.00% (-0.88% to +0.58%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 666.67 MiB 666.38 MiB -0.05% (-0.20% to +0.31%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 687.73 MiB 687.15 MiB -0.02% (-0.55% to +0.17%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak memory 715.77 MiB 711.51 MiB -0.18% (-0.74% to +0.19%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Peak heap 600.60 MiB 600.60 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Peak heap 600.60 MiB 600.60 MiB -0.00% (-0.01% to +0.01%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Peak heap 600.46 MiB 600.46 MiB -0.00% (-0.02% to +0.00%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Peak heap 600.49 MiB 600.51 MiB +0.00% (-0.01% to +0.03%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 318.89 MiB 318.89 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 318.95 MiB 318.99 MiB +0.01% (-0.04% to +0.02%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 318.93 MiB 318.85 MiB -0.02% (-0.05% to +0.01%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 319.03 MiB 318.94 MiB -0.02% (-0.06% to +0.03%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Peak heap 600.32 MiB 600.32 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Peak heap 600.29 MiB 600.30 MiB +0.00% (-0.00% to +0.01%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Peak heap 600.24 MiB 600.19 MiB -0.01% (-0.02% to +0.01%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Peak heap 600.19 MiB 600.23 MiB +0.00% (-0.01% to +0.02%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 318.60 MiB 318.60 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 318.71 MiB 318.64 MiB -0.02% (-0.03% to -0.01%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 318.58 MiB 318.54 MiB -0.01% (-0.04% to +0.05%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 318.71 MiB 318.75 MiB +0.01% (-0.07% to +0.09%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Peak heap 1201.06 MiB 1201.06 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Peak heap 1201.05 MiB 1201.05 MiB +0.00% (-0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Peak heap 1200.94 MiB 1200.95 MiB +0.00% (-0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Peak heap 1200.94 MiB 1200.91 MiB -0.00% (-0.01% to +0.01%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 637.68 MiB 637.68 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 637.69 MiB 637.70 MiB +0.00% (-0.02% to +0.01%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 637.64 MiB 637.62 MiB -0.01% (-0.02% to +0.01%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 637.67 MiB 637.67 MiB +0.01% (-0.02% to +0.04%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Peak heap 1200.58 MiB 1200.58 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Peak heap 1200.57 MiB 1200.57 MiB +0.00% (-0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Peak heap 1200.46 MiB 1200.46 MiB +0.00% (-0.01% to +0.00%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Peak heap 1200.49 MiB 1200.49 MiB -0.00% (-0.01% to +0.01%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 637.21 MiB 637.21 MiB +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 637.22 MiB 637.22 MiB -0.00% (-0.01% to +0.01%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 637.09 MiB 637.12 MiB +0.00% (-0.03% to +0.04%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 637.10 MiB 637.24 MiB +0.02% (-0.01% to +0.05%)
leanxmss-100 1 arm64 Neoverse-V2 Peak heap 1202.03 MiB 1202.03 MiB +0.00% (+0.00% to +0.00%)
leanxmss-100 4 arm64 Neoverse-V2 Peak heap 1202.06 MiB 1202.08 MiB +0.00% (-0.00% to +0.01%)
leanxmss-100 8 arm64 Neoverse-V2 Peak heap 1201.87 MiB 1201.89 MiB -0.00% (-0.00% to +0.01%)
leanxmss-100 16 arm64 Neoverse-V2 Peak heap 1201.77 MiB 1201.78 MiB +0.00% (-0.01% to +0.01%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 557.78 MiB 557.78 MiB +0.00% (+0.00% to +0.00%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 557.85 MiB 557.83 MiB -0.00% (-0.01% to +0.01%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 557.94 MiB 557.88 MiB -0.01% (-0.01% to +0.02%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Peak heap 558.00 MiB 558.06 MiB +0.00% (-0.01% to +0.02%)
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 Allocations 17,804 17,804 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 Allocations 17,930 17,930 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 Allocations 18,074 18,074 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 Allocations 18,362 18,362 +0.00% (-0.01% to +0.00%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 17,906 17,906 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 18,035 18,035 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 18,183 18,183 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 18,479 18,479 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 Allocations 21,536 21,536 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 Allocations 21,662 21,662 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 Allocations 21,806 21,806 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 Allocations 22,094 22,094 +0.00% (+0.00% to +0.09%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 21,630 21,630 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 21,759 21,759 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 21,907 21,907 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 22,203 22,203 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 Allocations 29,760 29,760 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 Allocations 29,898 29,898 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 Allocations 30,082 30,082 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 Allocations 30,402 30,402 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 29,906 29,906 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 30,047 30,047 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 30,235 30,235 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 30,563 30,563 +0.00% (-0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 Allocations 36,580 36,580 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 Allocations 36,718 36,718 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 Allocations 36,902 36,902 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 Allocations 37,222 37,222 +0.00% (-0.05% to +0.02%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 36,726 36,726 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 36,867 36,867 +0.00% (+0.00% to +0.00%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 37,055 37,055 +0.00% (+0.00% to +0.01%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 37,383 37,383 +0.00% (+0.00% to +0.00%)
leanxmss-100 1 arm64 Neoverse-V2 Allocations 27,350 27,350 +0.00% (+0.00% to +0.00%)
leanxmss-100 4 arm64 Neoverse-V2 Allocations 27,568 27,568 +0.00% (+0.00% to +0.00%)
leanxmss-100 8 arm64 Neoverse-V2 Allocations 27,804 27,804 +0.00% (+0.00% to +0.00%)
leanxmss-100 16 arm64 Neoverse-V2 Allocations 28,276 28,276 +0.00% (+0.00% to +0.00%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 27,868 27,868 +0.00% (+0.00% to +0.00%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 28,123 28,122 -0.00% (-0.01% to +0.00%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 28,407 28,407 +0.00% (+0.00% to +0.01%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N Allocations 28,975 28,974 +0.00% (-0.01% to +0.00%)
Prover stages
benchmark threads runner CPU base this PR change
aggregate-leanxmss-100-2to1-first 1 arm64 Neoverse-V2 1.01 s 971.47 ms -3.07% (-10.08% to +0.15%)
 ↳ build-circuit 12.54 ms 12.37 ms -0.19% (-14.41% to +7.65%)
 ↳ prove-recursion 973.86 ms 935.99 ms -3.45% (-9.94% to +0.12%)
 ↳ reduce-claims 15.55 ms 15.49 ms -0.47% (-11.35% to +8.88%)
 ↳ reduce-in-rows 1.44 ms 1.46 ms +1.06% (-28.10% to +3.92%)
 ↳ verify 5.92 ms 5.89 ms +0.06% (-13.52% to +3.68%)
aggregate-leanxmss-100-2to1-first 4 arm64 Neoverse-V2 270.60 ms 270.68 ms -0.08% (-0.26% to +0.36%)
 ↳ build-circuit 10.52 ms 10.52 ms -0.18% (-0.31% to +1.19%)
 ↳ prove-recursion 247.65 ms 247.37 ms -0.02% (-0.37% to +0.36%)
 ↳ reduce-claims 5.36 ms 5.48 ms +2.91% (-3.45% to +8.07%)
 ↳ reduce-in-rows 1.44 ms 1.46 ms +3.23% (-4.99% to +5.96%)
 ↳ verify 5.70 ms 5.71 ms +0.21% (-0.38% to +0.54%)
aggregate-leanxmss-100-2to1-first 8 arm64 Neoverse-V2 158.00 ms 158.11 ms -0.02% (-0.20% to +0.17%)
 ↳ build-circuit 10.16 ms 10.24 ms +0.36% (-1.98% to +0.95%)
 ↳ prove-recursion 136.50 ms 136.41 ms -0.07% (-0.23% to +0.02%)
 ↳ reduce-claims 4.05 ms 4.17 ms +2.43% (-0.14% to +7.14%)
 ↳ reduce-in-rows 1.42 ms 1.44 ms +1.67% (-2.54% to +5.89%)
 ↳ verify 5.86 ms 5.84 ms -0.14% (-1.01% to +0.39%)
aggregate-leanxmss-100-2to1-first 16 arm64 Neoverse-V2 103.58 ms 103.68 ms +0.14% (-1.85% to +0.72%)
 ↳ build-circuit 10.18 ms 10.41 ms +1.04% (-2.28% to +2.99%)
 ↳ prove-recursion 81.63 ms 81.74 ms +0.21% (-2.34% to +0.78%)
 ↳ reduce-claims 3.84 ms 3.84 ms -0.02% (-10.43% to +5.50%)
 ↳ reduce-in-rows 1.45 ms 1.44 ms -0.28% (-5.51% to +1.69%)
 ↳ verify 6.22 ms 6.27 ms -0.35% (-0.69% to +1.25%)
aggregate-leanxmss-100-2to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 596.34 ms 598.73 ms +0.28% (-1.11% to +0.81%)
 ↳ build-circuit 15.21 ms 15.13 ms -0.72% (-1.82% to +2.07%)
 ↳ prove-recursion 553.67 ms 554.41 ms +0.30% (-1.29% to +0.75%)
 ↳ reduce-claims 18.97 ms 19.07 ms +0.79% (-2.08% to +2.00%)
 ↳ reduce-in-rows 2.16 ms 2.23 ms +3.57% (-2.48% to +12.01%)
 ↳ verify 6.48 ms 6.51 ms +0.53% (-3.18% to +3.28%)
aggregate-leanxmss-100-2to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 180.67 ms 182.42 ms +0.77% (+0.10% to +1.05%)
 ↳ build-circuit 13.82 ms 13.99 ms +1.18% (-1.09% to +4.19%)
 ↳ prove-recursion 151.17 ms 152.00 ms +0.55% (+0.26% to +0.91%)
 ↳ reduce-claims 7.49 ms 7.40 ms +0.41% (-14.96% to +7.91%)
 ↳ reduce-in-rows 2.14 ms 2.16 ms +1.81% (+0.67% to +4.15%)
 ↳ verify 6.22 ms 6.23 ms -0.07% (-1.18% to +1.67%)
aggregate-leanxmss-100-2to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 118.32 ms 119.33 ms +0.27% (-5.89% to +5.03%)
 ↳ build-circuit 14.01 ms 14.26 ms +1.32% (-0.54% to +2.17%)
 ↳ prove-recursion 89.10 ms 88.80 ms -0.31% (-8.03% to +6.32%)
 ↳ reduce-claims 6.46 ms 6.48 ms +3.69% (-7.78% to +14.15%)
 ↳ reduce-in-rows 2.18 ms 2.27 ms +1.09% (+0.28% to +6.76%)
 ↳ verify 6.50 ms 6.57 ms +0.99% (-1.16% to +1.63%)
aggregate-leanxmss-100-2to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 94.44 ms 95.90 ms +1.72% (-4.63% to +4.52%)
 ↳ build-circuit 13.92 ms 14.01 ms +0.59% (-2.29% to +4.88%)
 ↳ prove-recursion 64.85 ms 64.80 ms +2.97% (-5.34% to +6.02%)
 ↳ reduce-claims 7.99 ms 7.32 ms -1.75% (-26.06% to +8.00%)
 ↳ reduce-in-rows 2.18 ms 2.20 ms +1.05% (-1.33% to +4.22%)
 ↳ verify 6.80 ms 6.69 ms +0.88% (-4.86% to +2.31%)
aggregate-leanxmss-100-2to1-node 1 arm64 Neoverse-V2 1.00 s 997.27 ms -0.55% (-5.44% to +0.62%)
 ↳ build-circuit 12.45 ms 12.33 ms -0.59% (-6.12% to +0.20%)
 ↳ prove-recursion 952.12 ms 946.64 ms -0.56% (-5.42% to +0.63%)
 ↳ reduce-claims 30.84 ms 30.80 ms -0.48% (-14.25% to +0.89%)
 ↳ reduce-in-rows 1.50 ms 1.49 ms -3.43% (-44.40% to +4.37%)
aggregate-leanxmss-100-2to1-node 4 arm64 Neoverse-V2 279.25 ms 278.77 ms -0.19% (-0.33% to +0.34%)
 ↳ build-circuit 11.42 ms 11.49 ms -0.24% (-1.08% to +1.02%)
 ↳ prove-recursion 250.82 ms 250.48 ms -0.14% (-0.31% to +0.16%)
 ↳ reduce-claims 10.61 ms 10.69 ms -0.37% (-1.69% to +3.76%)
 ↳ reduce-in-rows 1.50 ms 1.54 ms +0.52% (-4.88% to +6.52%)
aggregate-leanxmss-100-2to1-node 8 arm64 Neoverse-V2 163.21 ms 162.96 ms -0.11% (-0.25% to +0.23%)
 ↳ build-circuit 11.40 ms 11.28 ms -1.17% (-2.19% to +0.56%)
 ↳ prove-recursion 137.96 ms 137.95 ms +0.05% (-0.24% to +0.26%)
 ↳ reduce-claims 7.66 ms 7.59 ms -0.67% (-1.49% to +1.22%)
 ↳ reduce-in-rows 1.48 ms 1.49 ms +0.46% (-3.06% to +5.72%)
aggregate-leanxmss-100-2to1-node 16 arm64 Neoverse-V2 106.60 ms 106.28 ms -0.31% (-4.10% to +0.51%)
 ↳ build-circuit 11.47 ms 11.38 ms -1.21% (-1.71% to +3.82%)
 ↳ prove-recursion 82.48 ms 82.28 ms -0.29% (-4.60% to +0.18%)
 ↳ reduce-claims 6.49 ms 6.53 ms -0.09% (-5.49% to +0.97%)
 ↳ reduce-in-rows 1.49 ms 1.48 ms -0.85% (-2.52% to +0.19%)
aggregate-leanxmss-100-2to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 627.36 ms 625.85 ms -0.11% (-0.91% to +1.09%)
 ↳ build-circuit 16.21 ms 16.11 ms -0.62% (-4.20% to +5.82%)
 ↳ prove-recursion 566.50 ms 565.46 ms -0.16% (-0.76% to +0.93%)
 ↳ reduce-claims 35.34 ms 35.38 ms +0.80% (-1.48% to +2.85%)
 ↳ reduce-in-rows 2.29 ms 2.24 ms -0.40% (-3.49% to +2.77%)
aggregate-leanxmss-100-2to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 188.51 ms 188.48 ms -0.02% (-0.81% to +1.81%)
 ↳ build-circuit 14.85 ms 14.90 ms +0.31% (-4.74% to +7.42%)
 ↳ prove-recursion 154.15 ms 154.19 ms +0.36% (-0.05% to +1.22%)
 ↳ reduce-claims 12.11 ms 12.09 ms -0.09% (-13.55% to +6.49%)
 ↳ reduce-in-rows 2.14 ms 2.14 ms -0.51% (-2.75% to +1.69%)
aggregate-leanxmss-100-2to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 123.00 ms 124.44 ms +1.49% (-4.45% to +4.22%)
 ↳ build-circuit 14.95 ms 15.34 ms +3.12% (-3.88% to +5.47%)
 ↳ prove-recursion 90.70 ms 90.53 ms -0.10% (-3.55% to +3.44%)
 ↳ reduce-claims 9.88 ms 10.57 ms +9.39% (-17.80% to +18.92%)
 ↳ reduce-in-rows 2.17 ms 2.22 ms +1.94% (-1.98% to +7.86%)
aggregate-leanxmss-100-2to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 96.15 ms 97.12 ms +2.58% (+0.60% to +3.08%)
 ↳ build-circuit 14.75 ms 14.65 ms -0.71% (-2.31% to +4.20%)
 ↳ prove-recursion 65.66 ms 65.92 ms +2.34% (-0.77% to +5.88%)
 ↳ reduce-claims 8.19 ms 8.78 ms +7.73% (-22.38% to +15.29%)
 ↳ reduce-in-rows 2.24 ms 2.25 ms +0.61% (-3.73% to +5.88%)
aggregate-leanxmss-100-4to1-first 1 arm64 Neoverse-V2 1.89 s 1.89 s +0.04% (-0.67% to +0.06%)
 ↳ build-circuit 25.24 ms 25.36 ms +0.55% (-0.69% to +1.30%)
 ↳ prove-recursion 1.83 s 1.83 s +0.02% (-0.66% to +0.07%)
 ↳ reduce-claims 21.39 ms 21.35 ms -0.61% (-2.09% to +1.12%)
 ↳ reduce-in-rows 2.77 ms 2.77 ms +1.00% (-4.22% to +3.20%)
 ↳ verify 11.59 ms 11.62 ms +0.43% (-0.04% to +0.45%)
aggregate-leanxmss-100-4to1-first 4 arm64 Neoverse-V2 518.41 ms 519.33 ms +0.14% (-0.06% to +0.46%)
 ↳ build-circuit 21.49 ms 21.41 ms -0.02% (-0.60% to +0.46%)
 ↳ prove-recursion 476.07 ms 476.99 ms +0.11% (-0.04% to +0.52%)
 ↳ reduce-claims 6.76 ms 6.78 ms +0.14% (-0.33% to +1.31%)
 ↳ reduce-in-rows 2.76 ms 2.78 ms -0.34% (-1.05% to +1.91%)
 ↳ verify 11.24 ms 11.24 ms +0.04% (-1.14% to +0.48%)
aggregate-leanxmss-100-4to1-first 8 arm64 Neoverse-V2 300.85 ms 301.41 ms +0.12% (-0.04% to +0.86%)
 ↳ build-circuit 20.99 ms 21.19 ms +1.04% (-0.09% to +2.60%)
 ↳ prove-recursion 260.01 ms 260.88 ms +0.22% (-0.12% to +0.81%)
 ↳ reduce-claims 5.18 ms 5.11 ms -1.07% (-5.32% to -0.75%)
 ↳ reduce-in-rows 2.83 ms 2.86 ms +0.49% (-2.36% to +3.52%)
 ↳ verify 11.61 ms 11.70 ms +1.22% (-0.07% to +1.38%)
aggregate-leanxmss-100-4to1-first 16 arm64 Neoverse-V2 192.78 ms 192.40 ms -0.15% (-1.50% to +0.19%)
 ↳ build-circuit 21.07 ms 21.34 ms +1.28% (-0.93% to +1.86%)
 ↳ prove-recursion 151.65 ms 151.31 ms -0.24% (-1.53% to +0.03%)
 ↳ reduce-claims 4.64 ms 4.66 ms +0.17% (-7.75% to +7.97%)
 ↳ reduce-in-rows 2.83 ms 2.87 ms +1.31% (-1.20% to +1.53%)
 ↳ verify 12.45 ms 12.39 ms -0.44% (-1.51% to +0.33%)
aggregate-leanxmss-100-4to1-first 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 1.14 s 1.14 s +0.03% (-0.84% to +0.13%)
 ↳ build-circuit 30.93 ms 31.91 ms +1.69% (+0.24% to +4.58%)
 ↳ prove-recursion 1.07 s 1.06 s +0.00% (-1.00% to +0.20%)
 ↳ reduce-claims 25.71 ms 25.86 ms -0.43% (-2.81% to +0.73%)
 ↳ reduce-in-rows 4.31 ms 4.32 ms +0.11% (-3.73% to +3.02%)
 ↳ verify 12.17 ms 12.07 ms -1.13% (-3.00% to +1.84%)
aggregate-leanxmss-100-4to1-first 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 321.12 ms 318.78 ms -0.70% (-14.83% to +1.73%)
 ↳ build-circuit 27.97 ms 27.69 ms -4.18% (-4.34% to +3.36%)
 ↳ prove-recursion 270.60 ms 265.98 ms -1.71% (-16.36% to +2.69%)
 ↳ reduce-claims 8.51 ms 8.40 ms -2.11% (-7.10% to +8.64%)
 ↳ reduce-in-rows 4.11 ms 4.02 ms -2.46% (-8.33% to +5.63%)
 ↳ verify 11.33 ms 10.73 ms -3.04% (-10.48% to +4.71%)
aggregate-leanxmss-100-4to1-first 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 225.89 ms 225.33 ms -0.12% (-0.61% to +1.10%)
 ↳ build-circuit 31.88 ms 31.77 ms -1.08% (-2.57% to +2.87%)
 ↳ prove-recursion 168.30 ms 168.87 ms +0.34% (-0.29% to +0.89%)
 ↳ reduce-claims 7.28 ms 7.06 ms +3.68% (-24.56% to +11.71%)
 ↳ reduce-in-rows 4.62 ms 4.61 ms -0.45% (-1.42% to +2.56%)
 ↳ verify 12.66 ms 12.59 ms -0.62% (-1.63% to +3.44%)
aggregate-leanxmss-100-4to1-first 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 159.41 ms 156.00 ms +0.86% (-8.68% to +9.95%)
 ↳ build-circuit 30.18 ms 29.70 ms -0.87% (-3.09% to +1.06%)
 ↳ prove-recursion 104.44 ms 101.58 ms +0.67% (-12.65% to +12.31%)
 ↳ reduce-claims 6.50 ms 6.78 ms +4.24% (-13.09% to +45.29%)
 ↳ reduce-in-rows 4.42 ms 4.40 ms -0.36% (-2.94% to +1.99%)
 ↳ verify 12.85 ms 13.05 ms +1.73% (-1.28% to +2.75%)
aggregate-leanxmss-100-4to1-node 1 arm64 Neoverse-V2 2.06 s 2.06 s -0.12% (-0.56% to +0.11%)
 ↳ build-circuit 29.49 ms 29.53 ms -0.34% (-2.57% to +0.73%)
 ↳ prove-recursion 1.96 s 1.96 s -0.13% (-0.53% to +0.13%)
 ↳ reduce-claims 56.32 ms 56.27 ms +0.40% (-0.61% to +0.75%)
 ↳ reduce-in-rows 3.05 ms 2.95 ms -2.85% (-4.31% to -0.28%)
aggregate-leanxmss-100-4to1-node 4 arm64 Neoverse-V2 564.20 ms 564.03 ms -0.05% (-0.31% to +0.09%)
 ↳ build-circuit 25.65 ms 25.64 ms -0.00% (-0.23% to +0.91%)
 ↳ prove-recursion 507.77 ms 507.51 ms -0.03% (-0.41% to +0.08%)
 ↳ reduce-claims 17.14 ms 17.11 ms -0.03% (-2.23% to +1.07%)
 ↳ reduce-in-rows 2.93 ms 2.95 ms +0.34% (-0.54% to +2.40%)
aggregate-leanxmss-100-4to1-node 8 arm64 Neoverse-V2 325.88 ms 326.52 ms +0.20% (-0.09% to +0.87%)
 ↳ build-circuit 25.14 ms 25.51 ms +1.47% (+0.32% to +3.10%)
 ↳ prove-recursion 275.71 ms 275.88 ms +0.04% (-0.16% to +0.61%)
 ↳ reduce-claims 11.91 ms 11.97 ms +0.54% (-1.92% to +0.89%)
 ↳ reduce-in-rows 2.99 ms 3.00 ms +0.18% (-0.15% to +2.86%)
aggregate-leanxmss-100-4to1-node 16 arm64 Neoverse-V2 209.07 ms 210.32 ms +0.54% (-0.01% to +0.83%)
 ↳ build-circuit 25.07 ms 25.12 ms -0.13% (-1.64% to +0.50%)
 ↳ prove-recursion 161.15 ms 162.45 ms +0.62% (-0.03% to +0.94%)
 ↳ reduce-claims 9.56 ms 9.60 ms +0.45% (-3.30% to +1.85%)
 ↳ reduce-in-rows 3.01 ms 3.03 ms +0.73% (-0.84% to +1.20%)
aggregate-leanxmss-100-4to1-node 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 1.25 s 1.25 s +0.29% (-0.54% to +0.86%)
 ↳ build-circuit 36.14 ms 36.31 ms +0.49% (-4.19% to +3.78%)
 ↳ prove-recursion 1.13 s 1.13 s +0.45% (-0.56% to +0.76%)
 ↳ reduce-claims 64.61 ms 64.97 ms +0.23% (-0.93% to +0.91%)
 ↳ reduce-in-rows 4.32 ms 4.36 ms -0.24% (-4.35% to +1.69%)
aggregate-leanxmss-100-4to1-node 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 340.06 ms 339.73 ms -0.50% (-4.22% to +0.12%)
 ↳ build-circuit 33.12 ms 32.10 ms -3.58% (-4.42% to +4.69%)
 ↳ prove-recursion 275.87 ms 273.21 ms -1.08% (-4.87% to -0.32%)
 ↳ reduce-claims 18.50 ms 18.98 ms +2.78% (+2.61% to +7.11%)
 ↳ reduce-in-rows 4.14 ms 4.13 ms +2.12% (-4.45% to +5.49%)
aggregate-leanxmss-100-4to1-node 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 244.26 ms 244.87 ms +1.30% (-3.46% to +2.95%)
 ↳ build-circuit 37.55 ms 36.82 ms -1.21% (-4.62% to +3.19%)
 ↳ prove-recursion 175.66 ms 176.36 ms +0.80% (-4.91% to +4.24%)
 ↳ reduce-claims 14.87 ms 14.78 ms +1.29% (-5.06% to +13.85%)
 ↳ reduce-in-rows 4.87 ms 4.86 ms +0.33% (-2.73% to +4.97%)
aggregate-leanxmss-100-4to1-node 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 165.29 ms 176.16 ms +5.70% (+0.89% to +8.98%)
 ↳ build-circuit 35.39 ms 35.62 ms +0.72% (-3.08% to +3.88%)
 ↳ prove-recursion 102.69 ms 112.05 ms +9.12% (+2.44% to +14.29%)
 ↳ reduce-claims 12.33 ms 12.65 ms +1.72% (+0.71% to +15.52%)
 ↳ reduce-in-rows 4.57 ms 4.51 ms -0.85% (-3.36% to +0.97%)
leanxmss-100 1 arm64 Neoverse-V2 1.78 s 1.78 s -0.13% (-0.56% to +0.41%)
 ↳ build-witness 46.22 ms 46.09 ms +0.11% (-0.63% to +0.55%)
 ↳ commit 295.21 ms 294.94 ms +0.08% (-0.37% to +1.05%)
 ↳ execute-program 10.32 ms 10.06 ms -2.39% (-3.81% to +1.03%)
 ↳ flock-reductions 643.27 ms 642.99 ms -0.13% (-0.47% to +0.38%)
 ↳ pcs-open 635.07 ms 634.36 ms -0.11% (-0.58% to +0.42%)
 ↳ prove-bus 131.81 ms 131.35 ms -0.30% (-1.45% to +0.12%)
 ↳ prove-constraints 14.45 ms 14.23 ms -1.40% (-5.92% to +4.30%)
leanxmss-100 4 arm64 Neoverse-V2 492.66 ms 486.58 ms -1.02% (-1.71% to +0.93%)
 ↳ build-witness 13.13 ms 13.15 ms +0.75% (-1.87% to +10.62%)
 ↳ commit 75.86 ms 75.18 ms -0.97% (-2.30% to +1.43%)
 ↳ execute-program 10.42 ms 10.16 ms -0.06% (-9.15% to +1.02%)
 ↳ flock-reductions 171.50 ms 173.20 ms -0.10% (-2.33% to +2.11%)
 ↳ pcs-open 173.84 ms 172.02 ms -0.83% (-5.79% to +2.33%)
 ↳ prove-bus 36.33 ms 36.32 ms -1.18% (-6.14% to +1.12%)
 ↳ prove-constraints 5.73 ms 5.89 ms +2.69% (-7.67% to +3.33%)
leanxmss-100 8 arm64 Neoverse-V2 264.64 ms 265.05 ms -0.06% (-0.31% to +0.66%)
 ↳ build-witness 7.36 ms 7.35 ms -0.31% (-1.46% to +0.30%)
 ↳ commit 38.39 ms 38.35 ms -0.07% (-0.79% to +0.39%)
 ↳ execute-program 10.41 ms 10.32 ms -2.80% (-6.97% to +3.52%)
 ↳ flock-reductions 93.72 ms 93.89 ms +0.35% (+0.02% to +0.40%)
 ↳ pcs-open 90.01 ms 90.04 ms +0.03% (-0.34% to +1.36%)
 ↳ prove-bus 20.53 ms 20.61 ms +0.17% (-1.06% to +0.63%)
 ↳ prove-constraints 4.19 ms 4.20 ms +0.47% (-0.89% to +1.26%)
leanxmss-100 16 arm64 Neoverse-V2 161.29 ms 162.58 ms +0.38% (-0.50% to +3.03%)
 ↳ build-witness 4.76 ms 4.74 ms -0.42% (-1.22% to +0.33%)
 ↳ commit 20.50 ms 20.50 ms -0.17% (-2.04% to +0.87%)
 ↳ execute-program 10.26 ms 10.39 ms +2.76% (-2.39% to +8.45%)
 ↳ flock-reductions 56.34 ms 56.60 ms +0.36% (-0.11% to +5.28%)
 ↳ pcs-open 52.24 ms 53.08 ms +1.41% (-1.18% to +2.16%)
 ↳ prove-bus 13.31 ms 13.32 ms +0.01% (-0.75% to +3.05%)
 ↳ prove-constraints 3.80 ms 3.79 ms +0.16% (-2.08% to +2.13%)
leanxmss-100 1 x86-64 INTEL(R) XEON(R) GOLD 6548N 1.02 s 1.02 s -0.08% (-0.50% to +0.21%)
 ↳ build-witness 68.17 ms 68.29 ms +0.70% (-0.35% to +5.62%)
 ↳ commit 183.76 ms 182.66 ms -0.38% (-1.00% to -0.24%)
 ↳ execute-program 12.22 ms 12.06 ms -0.13% (-2.50% to +1.04%)
 ↳ flock-reductions 301.38 ms 300.51 ms -0.57% (-0.92% to +1.17%)
 ↳ pcs-open 352.77 ms 353.41 ms +0.06% (-0.74% to +0.54%)
 ↳ prove-bus 80.79 ms 80.03 ms -0.75% (-1.35% to +0.07%)
 ↳ prove-constraints 18.67 ms 18.69 ms -0.16% (-0.48% to +1.97%)
leanxmss-100 4 x86-64 INTEL(R) XEON(R) GOLD 6548N 314.92 ms 315.85 ms +0.30% (-0.09% to +5.59%)
 ↳ build-witness 20.27 ms 20.09 ms -0.31% (-1.65% to +4.60%)
 ↳ commit 49.85 ms 50.25 ms +0.83% (+0.57% to +2.03%)
 ↳ execute-program 13.16 ms 13.60 ms +0.23% (-1.06% to +3.34%)
 ↳ flock-reductions 89.56 ms 90.27 ms +0.86% (-0.11% to +7.18%)
 ↳ pcs-open 108.29 ms 107.48 ms -0.34% (-1.07% to +6.64%)
 ↳ prove-bus 25.80 ms 26.16 ms +1.69% (+0.45% to +4.47%)
 ↳ prove-constraints 7.71 ms 7.73 ms +1.92% (-1.71% to +5.89%)
leanxmss-100 8 x86-64 INTEL(R) XEON(R) GOLD 6548N 182.41 ms 182.99 ms +0.08% (-0.28% to +0.69%)
 ↳ build-witness 11.22 ms 11.33 ms +0.94% (-1.60% to +2.32%)
 ↳ commit 24.76 ms 24.65 ms -0.44% (-1.55% to +1.27%)
 ↳ execute-program 12.70 ms 12.69 ms -0.87% (-1.87% to +3.64%)
 ↳ flock-reductions 51.32 ms 51.29 ms -0.04% (-0.15% to +0.05%)
 ↳ pcs-open 61.59 ms 61.44 ms +0.28% (-0.89% to +1.01%)
 ↳ prove-bus 15.39 ms 15.65 ms +1.62% (+0.92% to +2.10%)
 ↳ prove-constraints 5.51 ms 5.47 ms -0.81% (-5.80% to +0.37%)
leanxmss-100 16 x86-64 INTEL(R) XEON(R) GOLD 6548N 139.50 ms 130.74 ms -6.28% (-11.63% to +2.81%)
 ↳ build-witness 7.50 ms 7.31 ms +0.31% (-9.14% to +3.83%)
 ↳ commit 15.84 ms 14.72 ms -6.66% (-21.33% to +6.18%)
 ↳ execute-program 12.35 ms 12.12 ms -0.64% (-5.81% to +1.41%)
 ↳ flock-reductions 42.09 ms 38.78 ms -8.42% (-13.72% to -0.91%)
 ↳ pcs-open 44.60 ms 41.85 ms -3.65% (-10.80% to +5.16%)
 ↳ prove-bus 11.56 ms 11.25 ms -2.88% (-10.77% to +6.13%)
 ↳ prove-constraints 4.77 ms 4.63 ms -2.65% (-6.54% to +4.96%)

@tcoratger
tcoratger force-pushed the zk-stack/4-outer-proof branch from beedf45 to f116135 Compare October 11, 2026 23:18
A new crate for zero knowledge by composition: a proof's scalars travel under one-time-pad keys, and an outer proof shows the keys satisfy every check the verifier made on them.

- Recorder runs the verifier's own code over a padded transcript, through an inner verifier. An element is a Value: Public, the inner verifier's own, or Hidden, a node of a linear graph over the keys. A linear step is one node; a product or an inverse of hidden values is an auxiliary value and one row; an equality with a hidden side and a bit (ensure_bit) are one row each.
- What it records depends on the transcript's shape alone: nodes, auxiliary values and rows in creation order, nothing merged, sorted or dropped by value. A verifier that builds rows and one that checks values therefore record the same system, which recursion over zero-knowledge proofs needs.
- The system is the record's rows, then two dummy rows on fresh slots, over z = (1, slots). The record pulls row weights back onto the keys in one reverse pass, linear in the graph; the prover evaluates the graph from its keys.
- The outer Spartan over E, the eq-weighted MLE-check with a per-variable degree-2 mask, ends in a RowClaim and a MaskClaim.
- Keys draws a proof's keys, dummies and mask and commits them behind a hiding CommittedStack; KeyCommitment is the verifier's side. Their opening of one Weighted claim discharges both Spartan claims.
- Randomness (Os, or Fixed for tests, never printed) gives a proof's Seed, cut into one ChaCha20 stream per Purpose.

Co-Authored-By: Kevaundray Wedderburn <kevtheappdev@gmail.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@tcoratger
tcoratger force-pushed the zk-stack/4-outer-proof branch from f116135 to ed77f84 Compare October 12, 2026 08:39

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