# zkBridging benches ### Latency estimates > All estimated proving times as per [SP1 Prover Network Latency Estimates](https://docs.google.com/spreadsheets/d/1--LmJ_UbI7EspOdYiZBpmAYEojR9CFudk1H45hJT_cY/edit?gid=578931512#gid=578931512). The SP1 latency estimates table was fed to chatgpt to estimate values given the prover gas units (PGUs) below. These are estimates, but should serve as a rough guideline. The last two gas points (1B EVM block Gas/s) are extrapolations beyond the table’s max (12,451,487,697 PGUs), so treat those with a wider error band. ### Results ⚠️ The `execute EVM blocks` metric is inclusive of all the RSP profiles, i.e. `block execution`, `recover senders`, `initialze witness db`, `compute state root`, `validate block post execution`. #### 15M Gas/s, single DA block ![image](https://hackmd.io/_uploads/HJWFx3ddll.png) For 2,788,382,481 PGUs, the estimated SP1 proving times are: - 8 GPUs: ~256.30s (~4 minutes 16 seconds) - 32 GPUs: ~81.84s (~1 minutes 22 seconds) <details> <summary>Expand benchmark JSON data</summary> ```json { "total_blobs": 9, "total_blockexec_inputs": 6, "total_tx_count": 25, "total_evm_gas": 93526375, "total_gas": 2788382481, "total_instruction_count": 2610412580, "total_syscall_count": 25866, "cycle_tracker_results": { "block execution": 2602271233, "compute state root": 490317, "execute EVM blocks": 2605920868, "verify ed25519 signature": 1893884, "commit public outputs": 67699, "validate header": 239437, "deserialize inputs": 1750420, "verify namespace data": 409152, "initialize witness db": 660409, "verify blob-header equivalency": 277396, "validate block post-execution": 344538, "filter signed data blobs and verify signatures": 1959380, "recover senders": 1349378 } } ``` </details>details> --- #### 50M Gas/s, single DA block ![image](https://hackmd.io/_uploads/S1CVZ3O_xe.png) For 8,928,499,459 PGUs, the estimated SP1 proving times are: - 8 GPUs: ~475.36s (~7 minutes 55 seconds) - 32 GPUs: ~125.14s (~2 minutes 5 seconds) <details> <summary>Expand benchmark JSON data</summary> ```json { "total_blobs": 12, "total_blockexec_inputs": 6, "total_tx_count": 25, "total_evm_gas": 299776675, "total_gas": 8928499459, "total_instruction_count": 8376210255, "total_syscall_count": 25929, "cycle_tracker_results": { "block execution": 8367896601, "compute state root": 480183, "execute EVM blocks": 8371555808, "verify ed25519 signature": 1893693, "commit public outputs": 67664, "validate header": 239414, "deserialize inputs": 1853423, "verify namespace data": 464081, "initialize witness db": 666958, "verify blob-header equivalency": 278002, "validate block post-execution": 352721, "filter signed data blobs and verify signatures": 1963317, "recover senders": 1350954 } } ``` </details>details> --- #### 150M Gas/s, single DA block ![image](https://hackmd.io/_uploads/r1LqZhu_lg.png) For 27,534,746,042 PGUs, the estimated SP1 proving times are: - 8 GPUs: ~864.24s (~14 minutes 24 seconds) - 32 GPUs: ~188.76s (~3 minutes 9 seconds) <details> <summary>Expand benchmark JSON data</summary> ```json { "total_blobs": 12, "total_blockexec_inputs": 6, "total_tx_count": 25, "total_evm_gas": 924776575, "total_gas": 27534746042, "total_instruction_count": 25847850665, "total_syscall_count": 26026, "cycle_tracker_results": { "block execution": 25839492183, "compute state root": 475658, "execute EVM blocks": 25843175001, "verify ed25519 signature": 1894391, "commit public outputs": 67699, "validate header": 240285, "deserialize inputs": 1872353, "verify namespace data": 464319, "initialize witness db": 682663, "verify blob-header equivalency": 278559, "validate block post-execution": 352769, "filter signed data blobs and verify signatures": 1963996, "recover senders": 1353213 } } ``` </details>details> --- #### 1B Gas/s, single DA block ![image](https://hackmd.io/_uploads/S1YOzhuuxe.png) For 127,994,776,313 PGUs, the estimated SP1 proving times are: - 8 GPUs: ~1,953.61s (~32 minutes 34 seconds) - 32 GPUs: ~330.71s (~5 minutes 31 seconds) <details> <summary>Expand benchmark JSON data</summary> ```json { "total_blobs": 4, "total_blockexec_inputs": 4, "total_tx_count": 43, "total_evm_gas": 4299615365, "total_gas": 127994776313, "total_instruction_count": 120180171069, "total_syscall_count": 38532, "cycle_tracker_results": { "block execution": 120170617346, "compute state root": 675761, "execute EVM blocks": 120175647656, "verify ed25519 signature": 1623831, "commit public outputs": 67699, "validate header": 303281, "deserialize inputs": 1886464, "verify namespace data": 403399, "initialize witness db": 694730, "verify blob-header equivalency": 447244, "validate block post-execution": 536257, "filter signed data blobs and verify signatures": 1689654, "recover senders": 2301586 } } ``` </details>details> --- #### 1 tx per DA block ![image](https://hackmd.io/_uploads/HkjjbAOOlx.png) For 8,268,602 PGUs, the estimated SP1 proving times are: - 8 GPUs: ~11.67 seconds - 32 GPUs: ~9.78 seconds <details> <summary>Expand benchmark JSON data</summary> ```json { "total_blobs": 1, "total_blockexec_inputs": 1, "total_tx_count": 1, "total_evm_gas": 21000, "total_gas": 8268602, "total_instruction_count": 1867123, "total_syscall_count": 2129, "cycle_tracker_results": { "block execution": 417301, "compute state root": 97341, "execute EVM blocks": 1040636, "verify ed25519 signature": 271646, "commit public outputs": 67699, "validate header": 20011, "deserialize inputs": 391650, "verify namespace data": 62870, "initialize witness db": 214160, "verify blob-header equivalency": 12384, "validate block post-execution": 16729, "filter signed data blobs and verify signatures": 279136, "recover senders": 56920 } } ``` </details>details> --- #### 1000 txs per DA block ![image](https://hackmd.io/_uploads/HyxlG0duex.png) For 461,067,912 PGUs, the estimated SP1 proving times are: - 8 GPUs: ~98.60 seconds (~1 minute 39 seconds) - 32 GPUs: ~42.43 seconds <details> <summary>Expand benchmark JSON data</summary> ```json { "total_blobs": 12, "total_blockexec_inputs": 6, "total_tx_count": 1000, "total_evm_gas": 21000000, "total_gas": 461067912, "total_instruction_count": 268899685, "total_syscall_count": 822045, "cycle_tracker_results": { "block execution": 55740892, "compute state root": 34031682, "execute EVM blocks": 195617428, "verify ed25519 signature": 14372725, "commit public outputs": 67699, "validate header": 5609811, "deserialize inputs": 41739421, "verify namespace data": 5030842, "initialize witness db": 26256209, "verify blob-header equivalency": 10093528, "validate block post-execution": 8664110, "filter signed data blobs and verify signatures": 15378327, "recover senders": 53368361 } } ``` </details>details> --- #### 1 block range aggregation ![image](https://hackmd.io/_uploads/HJByvpKOgg.png) For 2,934,475 PGUs, the estimated SP1 proving times are: - 8 GPUs: ~4.32 seconds + (5 - 10 seconds: groth16) - 32 GPUs: ~4.94 seconds + (5 - 10 seconds: groth16) --- #### 10 block range aggregation ![image](https://hackmd.io/_uploads/BySJU0dOxe.png) For 2,934,475 PGUs, the estimated SP1 proving times are: - 8 GPUs: ~6.73 seconds + (5 - 10 seconds: groth16) - 32 GPUs: ~6.70 seconds + (5 - 10 seconds: groth16) The [SP1 Prover Network Latency Estimates](https://docs.google.com/spreadsheets/d/1--LmJ_UbI7EspOdYiZBpmAYEojR9CFudk1H45hJT_cY/edit?gid=578931512#gid=578931512) states: > Final Groth16 or Plonk wrapping will add additional time—if your proof is 20M gas and you want to use Groth16, the total proof generation time should be under 15 seconds. ### Estimated Costs The SP1 public network is auction based, however, Succinct offers SLAs for partner teams. Assuming a dollar cost of $1.50/1B PGUs. | Benchmark | PGU | Estimated Cost ($USD) | 8 GPUs Latency (s) | 32 GPUs Latency (s) | |---------------------------------|-----------------|--------------------|--------------------|---------------------| | 15M Gas/s, Single DA Block | 2,788,382,481 | 4.1826 | 256.30 | 81.84 | | 50M Gas/s, Single DA Block | 8,928,499,459 | 13.3927 | 475.36 | 125.14 | | 150M Gas/s, Single DA Block | 27,534,746,042 | 41.3021 | 864.24 | 188.76 | | 1B Gas/s, Single DA Block | 127,994,776,313 | 191.9922 | 1,953.61 | 330.71 | | 1 EOA tx per DA Block | 8,268,602 | 0.01240 | 11.67 | 9.78 | | 1000 EOA txs per DA block | 461,067,912 | 0.6916 | 98.60 | 42.43 | | 1 block range groth16 | 1,271,395 | 0.0019 | 4.32(+5/10s) | 4.94(+5/10s) | | 10 block range groth16 | 2,934,475 | 0.0044 | 6.73(+5/10s) | 6.70(+5/10s) |