Viewing run older run · latest of 12

New gas proposal

Worst-case-across-clients gas costs derived from the runtime fits, compared against the current Osaka cost table. Rendered from the generated proposal report; see the runtime and glue pages for the underlying per-fit detail.

Generated 2026-06-15 09:13:09Z · fork osaka · anchor_rate 100 Mgas/s

Summary: 12 parameters proposed — 10 increased, 2 decreased, 0 new, 0 unresolved · 4 warnings · 0 poor-fit selections

Proposed gas parameters

Gas paramCurrent gasProposed gasΔ%
COLD_STORAGE_ACCESS 2100 2493 +19%
COLD_STORAGE_WRITE 5000 20778 +316%
COLD_ACCOUNT_NOCODE_ACCESS 2600 2289 -12%
COLD_ACCOUNT_CODE_ACCESS 2600 8167 +214%
COLD_ACCOUNT_NOCODE_WRITE 9300 22130 +138%
COLD_ACCOUNT_CODE_WRITE 9300 24584 +164%
WARM_ACCESS 100 51 -49%
STORAGE_WRITE 2800 18285 +553%
ACCOUNT_WRITE 6700 19841 +196%
REFUND_STORAGE_CLEAR 4800 19947 +316%
TX_ACCESS_LIST_STORAGE_KEY 1900 2493 +31%
TX_ACCESS_LIST_ADDRESS 2400 8167 +240%

Client comparison

Worst client vs. second-worst client per gas parameter. The Ratio column is worst gas / second-worst gas — values close to 1× mean the worst case sits next to the rest of the field, while large ratios flag the worst client as an outlier.

Gas param Worst client Worst gas Second-worst client Second-worst gas Ratio
COLD_STORAGE_ACCESS ethrex 2493 geth 2443 1.02×
COLD_STORAGE_WRITE besu 20778 geth 13123 1.58×
COLD_ACCOUNT_NOCODE_ACCESS geth 2289 ethrex 1770 1.29×
COLD_ACCOUNT_CODE_ACCESS erigon 8167 besu 2826 2.89×
COLD_ACCOUNT_NOCODE_WRITE besu 22130 erigon 13900 1.59×
COLD_ACCOUNT_CODE_WRITE erigon 24584 besu 22130 1.11×
WARM_ACCESS besu 51 erigon 51 1.00×

Per-client proposed gas for each parameter. Cells are colored by log2(proposed / current) — red means the proposal is more expensive than the current gas cost, green means cheaper, and white sits at unchanged. Annotations show the absolute proposed gas value; blank rows are parameters with no prior baseline (see warnings below).

besuerigonethrexgethnethermindreth
COLD_STORAGE_ACCESS1,4975972,4932,443797154
COLD_STORAGE_WRITE20,7788,1493,74813,1234,3913,919
COLD_ACCOUNT_NOCODE_ACCESS1,6231,0851,7702,289490131
COLD_ACCOUNT_CODE_ACCESS2,8268,1671,8272,3671,7062,059
COLD_ACCOUNT_NOCODE_WRITE22,13013,9002,48310,0694,9792,595
COLD_ACCOUNT_CODE_WRITE22,13024,5842,57010,0695,1753,485
WARM_ACCESS51511019396

Worst-case provenance per gas param

One collapsible block per gas parameter showing every per-client candidate that the worst-case selector saw. Rows are model combos (the source regression's test_name, target_opcode, model_coef_name, and any model_by factors — components constant within a parameter are dropped from the label). Cells carry each candidate's proposed gas; the cell the per-client selector picked is outlined in black. Colors are log2(proposed / current) against that parameter's baseline on a per-parameter symmetric scale.

COLD_STORAGE_ACCESS — 4 combos × 6 clients
besuerigonethrexgethnethermindreth
test_sload_bloated · SLOAD · slots=False8365978312,443285132
test_sload_bloated · SLOAD · slots=True1,4625372,4052,378797154
test_sstore_bloated · SSTORE · slots=False9385918952,431301135
test_sstore_bloated · SSTORE · slots=True1,4975302,4932,333781154
COLD_STORAGE_WRITE — 2 combos × 6 clients
besuerigonethrexgethnethermindreth
slots=False20,7788,149013,1234,3913,919
slots=True8,1797,4413,7489,3153,4982,326
COLD_ACCOUNT_NOCODE_ACCESS — 13 combos × 6 clients
Label Combo
M1 test_name=test_account_access / target_opcode=BALANCE / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_EOA / param_opcode=BALANCE
M2 test_name=test_account_access / target_opcode=BALANCE / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=BALANCE
M3 test_name=test_account_access / target_opcode=CALL / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_EOA / param_opcode=CALL
M4 test_name=test_account_access / target_opcode=CALL / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=CALL
M5 test_name=test_account_access / target_opcode=CALLCODE / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_EOA / param_opcode=CALLCODE
M6 test_name=test_account_access / target_opcode=CALLCODE / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=CALLCODE
M7 test_name=test_account_access / target_opcode=DELEGATECALL / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_EOA / param_opcode=DELEGATECALL
M8 test_name=test_account_access / target_opcode=DELEGATECALL / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=DELEGATECALL
M9 test_name=test_account_access / target_opcode=EXTCODECOPY / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=EXTCODECOPY
M10 test_name=test_account_access / target_opcode=EXTCODEHASH / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=EXTCODEHASH
M11 test_name=test_account_access / target_opcode=EXTCODESIZE / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=EXTCODESIZE
M12 test_name=test_account_access / target_opcode=STATICCALL / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_EOA / param_opcode=STATICCALL
M13 test_name=test_account_access / target_opcode=STATICCALL / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=STATICCALL
besuerigonethrexgethnethermindreth
M11,2378801,7571,085434124
M21,2858012722,16836793
M31,5781,0181,7701,080467131
M41,6239292722,23639195
M51,5579061,7651,103464130
M61,5198512762,24740696
M71,5038981,7661,106478129
M81,4748622782,25944694
M9348435333
M101,3107742732,18440289
M111,2887842682,18639090
M121,5799201,7621,119490130
M131,5861,0852752,28944396
COLD_ACCOUNT_CODE_ACCESS — 16 combos × 6 clients
Label Combo
M1 test_name=test_account_access / target_opcode=BALANCE / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=BALANCE
M2 test_name=test_account_access / target_opcode=BALANCE / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=BALANCE
M3 test_name=test_account_access / target_opcode=CALL / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=CALL
M4 test_name=test_account_access / target_opcode=CALL / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=CALL
M5 test_name=test_account_access / target_opcode=CALLCODE / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=CALLCODE
M6 test_name=test_account_access / target_opcode=CALLCODE / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=CALLCODE
M7 test_name=test_account_access / target_opcode=DELEGATECALL / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=DELEGATECALL
M8 test_name=test_account_access / target_opcode=DELEGATECALL / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=DELEGATECALL
M9 test_name=test_account_access / target_opcode=EXTCODECOPY / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=EXTCODECOPY
M10 test_name=test_account_access / target_opcode=EXTCODECOPY / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=EXTCODECOPY
M11 test_name=test_account_access / target_opcode=EXTCODEHASH / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=EXTCODEHASH
M12 test_name=test_account_access / target_opcode=EXTCODEHASH / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=EXTCODEHASH
M13 test_name=test_account_access / target_opcode=EXTCODESIZE / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=EXTCODESIZE
M14 test_name=test_account_access / target_opcode=EXTCODESIZE / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=EXTCODESIZE
M15 test_name=test_account_access / target_opcode=STATICCALL / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=STATICCALL
M16 test_name=test_account_access / target_opcode=STATICCALL / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=STATICCALL
besuerigonethrexgethnethermindreth
M12,5633,4271,8072,3281,5101,912
M21,2858012722,16836793
M32,7538,1671,8272,3641,7061,897
M41,6239292722,23639195
M52,7908,1421,8242,3221,5241,821
M61,5198512762,24740696
M72,8268,1421,8242,3671,5451,999
M81,4748622782,25944694
M916232227513412
M10348435333
M112,5943,4041,8042,3161,6861,850
M121,3107742732,18440289
M132,5878,0521,8082,3141,5371,914
M141,2887842682,18639090
M152,7968,1601,8222,3641,4992,059
M161,5861,0852752,28944396
COLD_ACCOUNT_NOCODE_WRITE — 4 combos × 6 clients
Label Combo
M1 test_name=test_account_access / target_opcode=CALL / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_EOA / param_opcode=CALL
M2 test_name=test_account_access / target_opcode=CALL / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=CALL
M3 test_name=test_account_access / target_opcode=CALLCODE / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_EOA / param_opcode=CALLCODE
M4 test_name=test_account_access / target_opcode=CALLCODE / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=CALLCODE
besuerigonethrexgethnethermindreth
M17,6266,0062,4835,9393,3582,595
M222,13013,9001,37910,0694,9792,588
M32,3437421,5171,340435174
M4581193401,04414932
COLD_ACCOUNT_CODE_WRITE — 4 combos × 6 clients
Label Combo
M1 test_name=test_account_access / target_opcode=CALL / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=CALL
M2 test_name=test_account_access / target_opcode=CALL / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=CALL
M3 test_name=test_account_access / target_opcode=CALLCODE / model_coef_name=target_coef / param_account_mode=AccountMode.EXISTING_CONTRACT / param_opcode=CALLCODE
M4 test_name=test_account_access / target_opcode=CALLCODE / model_coef_name=target_coef / param_account_mode=AccountMode.NON_EXISTING_ACCOUNT / param_opcode=CALLCODE
besuerigonethrexgethnethermindreth
M18,56224,5842,5709,7845,1753,485
M222,13013,9001,37910,0694,9792,588
M32,6407,4441,5792,4451,5192,179
M4581193401,04414932
WARM_ACCESS — 8 combos × 6 clients
Label Combo
M1 test_name=test_ext_account_query_warm / target_opcode=BALANCE / model_coef_name=target_coef / param_opcode=BALANCE
M2 test_name=test_ext_account_query_warm / target_opcode=CALL / model_coef_name=target_coef / param_opcode=CALL
M3 test_name=test_ext_account_query_warm / target_opcode=CALLCODE / model_coef_name=target_coef / param_opcode=CALLCODE
M4 test_name=test_ext_account_query_warm / target_opcode=DELEGATECALL / model_coef_name=target_coef / param_opcode=DELEGATECALL
M5 test_name=test_ext_account_query_warm / target_opcode=EXTCODEHASH / model_coef_name=target_coef / param_opcode=EXTCODEHASH
M6 test_name=test_ext_account_query_warm / target_opcode=EXTCODESIZE / model_coef_name=target_coef / param_opcode=EXTCODESIZE
M7 test_name=test_ext_account_query_warm / target_opcode=STATICCALL / model_coef_name=target_coef / param_opcode=STATICCALL
M8 test_name=test_storage_sload_same_key_benchmark / target_opcode=SLOAD / model_coef_name=target_coef
besuerigonethrexgethnethermindreth
M112523161
M251511013396
M351271019236
M448271016356
M5122924252
M612523191
M746501019366
M810535161

Warnings

Missing parameters

None.

Incomplete client coverage

None.

Missing glue adjustments

Non-priced opcodes correlated with the target opcount — 1 test affected

The target coefficient was left unadjusted for these. Consider adding them to the glue model or re-designing the test to isolate the target opcode.

Test name Non-priced opcodes
test_account_access CLZ
Priced glue opcodes with a poor fit — 21 (glue_opcode, client) fits skipped

p_value >= glue_contribution_p_value_threshold (0.05) or rsquared < glue_contribution_rsquared_threshold (0.5) — the contribution of these (glue_opcode, client) fits was skipped when computing the glue adjustment, so the listed gas params carry a target coefficient that is not net of this glue opcode's runtime on the affected clients. See glue_opcodes_autogenerated_report.md for per-fit metrics.

Glue opcode Affected clients Affected gas params
AND besu (R²) COLD_ACCOUNT_CODE_ACCESS, COLD_ACCOUNT_CODE_WRITE
CALLDATALOAD besu (both), erigon (R²), ethrex (R²), geth (R²), nethermind (R²), reth (R²) COLD_ACCOUNT_CODE_ACCESS, COLD_ACCOUNT_CODE_WRITE, COLD_ACCOUNT_NOCODE_ACCESS, COLD_ACCOUNT_NOCODE_WRITE, COLD_STORAGE_ACCESS, COLD_STORAGE_WRITE
EXP erigon (R²), nethermind (both) COLD_ACCOUNT_CODE_ACCESS, COLD_ACCOUNT_CODE_WRITE
GT besu (R²) COLD_ACCOUNT_CODE_ACCESS, COLD_ACCOUNT_CODE_WRITE, COLD_ACCOUNT_NOCODE_ACCESS, COLD_ACCOUNT_NOCODE_WRITE, COLD_STORAGE_ACCESS
JUMPDEST besu (R²) COLD_ACCOUNT_CODE_ACCESS, COLD_ACCOUNT_CODE_WRITE, COLD_ACCOUNT_NOCODE_ACCESS, COLD_ACCOUNT_NOCODE_WRITE, COLD_STORAGE_ACCESS, COLD_STORAGE_WRITE
JUMPI besu (R²) COLD_ACCOUNT_CODE_ACCESS, COLD_ACCOUNT_CODE_WRITE, COLD_ACCOUNT_NOCODE_ACCESS, COLD_ACCOUNT_NOCODE_WRITE, COLD_STORAGE_ACCESS, COLD_STORAGE_WRITE
KECCAK256 besu (R²), erigon (R²), ethrex (both), geth (R²), nethermind (both), reth (both) COLD_ACCOUNT_CODE_ACCESS, COLD_ACCOUNT_CODE_WRITE
LT besu (R²) COLD_STORAGE_ACCESS, COLD_STORAGE_WRITE
MSTORE reth (R²) COLD_ACCOUNT_CODE_ACCESS, COLD_ACCOUNT_CODE_WRITE, COLD_ACCOUNT_NOCODE_ACCESS, COLD_ACCOUNT_NOCODE_WRITE
RETURNDATASIZE besu (R²)

Other

Poor-fit selections

Rows where the winning fit's p-value exceeded modeling.poor_fit_p_value_threshold (0.05) or its R² fell below modeling.poor_fit_rsquared_threshold (0.5). The failing threshold(s) are noted alongside each row; selections in ### Winners with poor fit still drive the proposal, while ### Other weak candidates lists losing candidates that the selector dropped in favor of a qualified alternative. See runtime_estimation_autogenerated_report.md for per-fit runtime_ms, pvalue, and rsquared metrics.

Winners with poor fit

None.

Other weak candidates

COLD_STORAGE_WRITE — 1 weak combo
Test Target opcode Coef Combo Failing clients
test_sstore_bloated SSTORE target_coef ethrex (both)
COLD_ACCOUNT_CODE_ACCESS — 1 weak combo
Test Target opcode Coef Combo Failing clients
test_account_access EXTCODECOPY target_coef besu (R²)
COLD_ACCOUNT_NOCODE_WRITE — 1 weak combo
Test Target opcode Coef Combo Failing clients
test_account_access CALLCODE target_coef besu (R²), nethermind (R²), reth (R²)
COLD_ACCOUNT_CODE_WRITE — 1 weak combo
Test Target opcode Coef Combo Failing clients
test_account_access CALLCODE target_coef besu (R²), nethermind (R²), reth (R²)
WARM_ACCESS — 3 weak combos
Test Target opcode Coef Combo Failing clients
test_ext_account_query_warm BALANCE target_coef param_opcode=BALANCE besu (R²), reth (R²)
test_ext_account_query_warm EXTCODESIZE target_coef param_opcode=EXTCODESIZE besu (R²)
test_storage_sload_same_key_benchmark SLOAD target_coef besu (R²), reth (R²)