Datasheet
The data on this page can be used to estimate the total time and work required for proving zkVM applications. We recommend reading about our recursive proving architecture as a companion for this page.
Metal on Apple M2 Pro
execute | N/A | 41.14 MHz | 1014.10 K | 25.24ms | N/A | N/A |
rv32im | sha-256 | 14.28 KHz | 16.00 K | 1.15s | 141.97 MB | 193.91 KB |
rv32im | sha-256 | 14.43 KHz | 32.00 K | 2.27s | 283.94 MB | 204.29 KB |
rv32im | sha-256 | 14.41 KHz | 64.00 K | 4.55s | 567.88 MB | 215.66 KB |
rv32im | sha-256 | 14.34 KHz | 128.00 K | 9.14s | 1.11 GB | 238.16 KB |
rv32im | sha-256 | 14.20 KHz | 256.00 K | 18.47s | 2.22 GB | 249.60 KB |
rv32im | sha-256 | 14.10 KHz | 512.00 K | 37.18s | 4.44 GB | 261.54 KB |
rv32im | sha-256 | 13.66 KHz | 1.00 M | 1m 17s | 8.87 GB | 274.48 KB |
rv32im | poseidon2 | 14.29 KHz | 16.00 K | 1.15s | 141.97 MB | 193.91 KB |
rv32im | poseidon2 | 13.81 KHz | 32.00 K | 2.37s | 283.94 MB | 204.29 KB |
rv32im | poseidon2 | 14.43 KHz | 64.00 K | 4.54s | 567.88 MB | 215.66 KB |
rv32im | poseidon2 | 14.29 KHz | 128.00 K | 9.17s | 1.11 GB | 238.16 KB |
rv32im | poseidon2 | 14.20 KHz | 256.00 K | 18.47s | 2.22 GB | 249.60 KB |
rv32im | poseidon2 | 13.99 KHz | 512.00 K | 37.47s | 4.44 GB | 261.54 KB |
rv32im | poseidon2 | 13.50 KHz | 1.00 M | 1m 18s | 8.87 GB | 274.48 KB |
lift | poseidon2 | 139.93 KHz | 256.00 K | 1.87s | 1.04 GB | 217.45 KB |
join | poseidon2 | 117.63 KHz | 256.00 K | 2.23s | 1.04 GB | 217.45 KB |
succinct | poseidon2 | 12.92 KHz | 256.00 K | 20.29s | 2.22 GB | 217.45 KB |
identity_p254 | poseidon2 | 8.10 KHz | 256.00 K | 32.35s | 1.32 GB | 217.45 KB |
bigint2_execute | N/A | 17.12 MHz | 2.03 M | 124.12ms | N/A | N/A |
bigint2_prove_segment | poseidon2 | 31.09 KHz | 2.25 M | 1m 16s | 8.87 GB | N/A |
CUDA on NVIDIA RTX 3090 Ti
execute | N/A | 28.12 MHz | 1014.10 K | 36.93ms | N/A | N/A |
rv32im | sha-256 | 148.92 KHz | 16.00 K | 110.02ms | 141.97 MB | 193.91 KB |
rv32im | sha-256 | 247.52 KHz | 32.00 K | 132.39ms | 283.94 MB | 204.29 KB |
rv32im | sha-256 | 382.84 KHz | 64.00 K | 171.19ms | 567.88 MB | 215.66 KB |
rv32im | sha-256 | 544.25 KHz | 128.00 K | 240.83ms | 1.11 GB | 238.16 KB |
rv32im | sha-256 | 683.34 KHz | 256.00 K | 383.62ms | 2.22 GB | 249.60 KB |
rv32im | sha-256 | 767.67 KHz | 512.00 K | 682.96ms | 4.44 GB | 261.54 KB |
rv32im | sha-256 | 841.62 KHz | 1.00 M | 1.25s | 8.87 GB | 274.48 KB |
rv32im | poseidon2 | 114.87 KHz | 16.00 K | 142.63ms | 141.97 MB | 193.91 KB |
rv32im | poseidon2 | 238.87 KHz | 32.00 K | 137.18ms | 283.94 MB | 204.29 KB |
rv32im | poseidon2 | 388.64 KHz | 64.00 K | 168.63ms | 567.88 MB | 215.66 KB |
rv32im | poseidon2 | 548.42 KHz | 128.00 K | 239.00ms | 1.11 GB | 238.16 KB |
rv32im | poseidon2 | 682.87 KHz | 256.00 K | 383.89ms | 2.22 GB | 249.60 KB |
rv32im | poseidon2 | 768.93 KHz | 512.00 K | 681.84ms | 4.44 GB | 261.54 KB |
rv32im | poseidon2 | 840.55 KHz | 1.00 M | 1.25s | 8.87 GB | 274.48 KB |
lift | poseidon2 | 526.23 KHz | 256.00 K | 498.16ms | 1.32 GB | 217.45 KB |
join | poseidon2 | 306.06 KHz | 256.00 K | 856.52ms | 1.32 GB | 217.45 KB |
succinct | poseidon2 | 280.99 KHz | 256.00 K | 932.92ms | 2.22 GB | 217.45 KB |
identity_p254 | poseidon2 | 354.57 KHz | 256.00 K | 739.34ms | 1.32 GB | 217.45 KB |
stark2snark | poseidon2 | 34.76 KHz | 256.00 K | 7.54s | N/A | 360.00 B |
groth16 | poseidon2 | 28.14 KHz | 256.00 K | 9.31s | 2.22 GB | 256.00 B |
bigint2_execute | N/A | 11.00 MHz | 2.03 M | 193.15ms | N/A | N/A |
bigint2_prove_segment | poseidon2 | 1.27 MHz | 2.25 M | 1.86s | 8.87 GB | N/A |
CUDA on g6.xlarge
execute | N/A | 31.28 MHz | 1014.10 K | 33.19ms | N/A | N/A |
rv32im | sha-256 | 136.02 KHz | 16.00 K | 120.45ms | 141.97 MB | 193.91 KB |
rv32im | sha-256 | 217.96 KHz | 32.00 K | 150.34ms | 283.94 MB | 204.29 KB |
rv32im | sha-256 | 314.63 KHz | 64.00 K | 208.30ms | 567.88 MB | 215.66 KB |
rv32im | sha-256 | 413.48 KHz | 128.00 K | 317.00ms | 1.11 GB | 238.16 KB |
rv32im | sha-256 | 478.80 KHz | 256.00 K | 547.50ms | 2.22 GB | 249.60 KB |
rv32im | sha-256 | 517.05 KHz | 512.00 K | 1.01s | 4.44 GB | 261.54 KB |
rv32im | sha-256 | 547.58 KHz | 1.00 M | 1.91s | 8.87 GB | 274.48 KB |
rv32im | poseidon2 | 112.04 KHz | 16.00 K | 146.23ms | 141.97 MB | 193.91 KB |
rv32im | poseidon2 | 208.88 KHz | 32.00 K | 156.88ms | 283.94 MB | 204.29 KB |
rv32im | poseidon2 | 312.05 KHz | 64.00 K | 210.02ms | 567.88 MB | 215.66 KB |
rv32im | poseidon2 | 411.24 KHz | 128.00 K | 318.73ms | 1.11 GB | 238.16 KB |
rv32im | poseidon2 | 477.02 KHz | 256.00 K | 549.55ms | 2.22 GB | 249.60 KB |
rv32im | poseidon2 | 516.14 KHz | 512.00 K | 1.02s | 4.44 GB | 261.54 KB |
rv32im | poseidon2 | 545.14 KHz | 1.00 M | 1.92s | 8.87 GB | 274.48 KB |
lift | poseidon2 | 451.67 KHz | 256.00 K | 580.39ms | 1.32 GB | 217.45 KB |
join | poseidon2 | 262.63 KHz | 256.00 K | 998.15ms | 1.32 GB | 217.45 KB |
succinct | poseidon2 | 220.14 KHz | 256.00 K | 1.19s | 2.22 GB | 217.45 KB |
identity_p254 | poseidon2 | 274.52 KHz | 256.00 K | 954.91ms | 1.32 GB | 217.45 KB |
stark2snark | poseidon2 | 2.96 KHz | 256.00 K | 1m 29s | N/A | 360.00 B |
groth16 | poseidon2 | 5.91 KHz | 256.00 K | 44.33s | 2.22 GB | 256.00 B |
bigint2_execute | N/A | 11.91 MHz | 2.03 M | 178.41ms | N/A | N/A |
bigint2_prove_segment | poseidon2 | 897.01 KHz | 2.25 M | 2.63s | 8.87 GB | N/A |
CPU only on c6i.8xlarge
execute | N/A | 39.28 MHz | 1014.10 K | 26.44ms | N/A | N/A |
rv32im | sha-256 | 16.84 KHz | 16.00 K | 973.11ms | 141.97 MB | 193.91 KB |
rv32im | sha-256 | 17.28 KHz | 32.00 K | 1.90s | 283.94 MB | 204.29 KB |
rv32im | sha-256 | 17.08 KHz | 64.00 K | 3.84s | 567.88 MB | 215.66 KB |
rv32im | sha-256 | 17.15 KHz | 128.00 K | 7.64s | 1.11 GB | 238.16 KB |
rv32im | sha-256 | 16.91 KHz | 256.00 K | 15.51s | 2.22 GB | 249.60 KB |
rv32im | sha-256 | 16.25 KHz | 512.00 K | 32.26s | 4.44 GB | 261.54 KB |
rv32im | sha-256 | 15.65 KHz | 1.00 M | 1m 7s | 8.87 GB | 274.48 KB |
rv32im | poseidon2 | 17.11 KHz | 16.00 K | 957.67ms | 141.97 MB | 193.91 KB |
rv32im | poseidon2 | 17.29 KHz | 32.00 K | 1.90s | 283.94 MB | 204.29 KB |
rv32im | poseidon2 | 17.14 KHz | 64.00 K | 3.82s | 567.88 MB | 215.66 KB |
rv32im | poseidon2 | 17.19 KHz | 128.00 K | 7.62s | 1.11 GB | 238.16 KB |
rv32im | poseidon2 | 17.00 KHz | 256.00 K | 15.42s | 2.22 GB | 249.60 KB |
rv32im | poseidon2 | 16.27 KHz | 512.00 K | 32.23s | 4.44 GB | 261.54 KB |
rv32im | poseidon2 | 15.70 KHz | 1.00 M | 1m 7s | 8.87 GB | 274.48 KB |
lift | poseidon2 | 42.91 KHz | 256.00 K | 6.11s | 1.32 GB | 217.45 KB |
join | poseidon2 | 40.20 KHz | 256.00 K | 6.52s | 1.32 GB | 217.45 KB |
succinct | poseidon2 | 12.07 KHz | 256.00 K | 21.72s | 2.22 GB | 217.45 KB |
identity_p254 | poseidon2 | 10.68 KHz | 256.00 K | 24.54s | 1.32 GB | 217.45 KB |
bigint2_execute | N/A | 11.26 MHz | 2.03 M | 188.74ms | N/A | N/A |
bigint2_prove_segment | poseidon2 | 35.25 KHz | 2.25 M | 1m 7s | 8.87 GB | N/A |
Datasheet