Skip to content

Preset catalog

The package ships 101 ModelSpec presets. Selecting a preset under models.presets in the YAML config is equivalent to pasting its literal into models.custom.

Each preset binds a test_name (an EEST test file), a target (literal opcode or target_operation_param), optional fixture selectors (filter_by), grouping dimensions (model_by), derived columns (fixture_params), and a model_params map from regression coefficient names to gas-param names.

See Writing custom ModelSpecs for what each field means and Deriving gas params for how the fitted coefficients become the final proposal.

Arithmetic (15)

arithmetic_add

Field Value
test_name test_arithmetic
target ADD
filter_by opcode_ADD-
model_by
model_params target_coefOPCODE_ADD
fixture_params

arithmetic_sub

Field Value
test_name test_arithmetic
target SUB
filter_by opcode_SUB
model_by
model_params target_coefOPCODE_SUB
fixture_params

arithmetic_mul

Field Value
test_name test_arithmetic
target MUL
filter_by opcode_MUL-
model_by
model_params target_coefOPCODE_MUL
fixture_params

arithmetic_div

Field Value
test_name test_arithmetic
target DIV
filter_by opcode_DIV
model_by
model_params target_coefOPCODE_DIV
fixture_params

arithmetic_sdiv

Field Value
test_name test_arithmetic
target SDIV
filter_by opcode_SDIV
model_by
model_params target_coefOPCODE_SDIV
fixture_params

arithmetic_signextend

Field Value
test_name test_arithmetic
target SIGNEXTEND
filter_by opcode_SIGNEXTEND
model_by
model_params target_coefOPCODE_SIGNEXTEND
fixture_params

arithmetic_exp

Field Value
test_name test_arithmetic
target EXP
filter_by opcode_EXP
model_by
model_params target_coefOPCODE_EXP_BASE
fixture_params

arithmetic_mod

Field Value
test_name test_arithmetic
target MOD
filter_by opcode_MOD
model_by
model_params target_coefOPCODE_MOD
fixture_params

arithmetic_mod_bits

Field Value
test_name test_mod
target MOD
filter_by opcode_MOD
model_by mod_bits
model_params target_coefOPCODE_MOD
fixture_params

arithmetic_smod

Field Value
test_name test_arithmetic
target SMOD
filter_by opcode_SMOD
model_by
model_params target_coefOPCODE_SMOD
fixture_params

arithmetic_smod_bits

Field Value
test_name test_mod
target SMOD
filter_by opcode_SMOD
model_by mod_bits
model_params target_coefOPCODE_SMOD
fixture_params

arithmetic_addmod

Field Value
test_name test_arithmetic
target ADDMOD
filter_by opcode_ADDMOD
model_by
model_params target_coefOPCODE_ADDMOD
fixture_params

arithmetic_addmod_bits

Field Value
test_name test_mod_arithmetic
target ADDMOD
filter_by opcode_ADDMOD
model_by mod_bits
model_params target_coefOPCODE_ADDMOD
fixture_params

arithmetic_mulmod

Field Value
test_name test_arithmetic
target MULMOD
filter_by opcode_MULMOD
model_by
model_params target_coefOPCODE_MULMOD
fixture_params

arithmetic_mulmod_bits

Field Value
test_name test_mod_arithmetic
target MULMOD
filter_by opcode_MULMOD
model_by mod_bits
model_params target_coefOPCODE_MULMOD
fixture_params

Bitwise (9)

bitwise_and

Field Value
test_name test_bitwise
target AND
filter_by opcode_AND
model_by
model_params target_coefOPCODE_AND
fixture_params

bitwise_or

Field Value
test_name test_bitwise
target OR
filter_by opcode_OR
model_by
model_params target_coefOPCODE_OR
fixture_params

bitwise_xor

Field Value
test_name test_bitwise
target XOR
filter_by opcode_XOR
model_by
model_params target_coefOPCODE_XOR
fixture_params

bitwise_byte

Field Value
test_name test_bitwise
target BYTE
filter_by opcode_BYTE
model_by
model_params target_coefOPCODE_BYTE
fixture_params

bitwise_shl

Field Value
test_name test_bitwise
target SHL
filter_by opcode_SHL
model_by
model_params target_coefOPCODE_SHL
fixture_params

bitwise_shr

Field Value
test_name test_bitwise
target SHR
filter_by opcode_SHR
model_by
model_params target_coefOPCODE_SHR
fixture_params

bitwise_sar

Field Value
test_name test_bitwise
target SAR
filter_by opcode_SAR
model_by
model_params target_coefOPCODE_SAR
fixture_params

bitwise_not

Field Value
test_name test_not_op
target NOT
filter_by
model_by
model_params target_coefOPCODE_NOT
fixture_params

bitwise_clz

Field Value
test_name test_clz_same
target CLZ
filter_by
model_by
model_params target_coefOPCODE_CLZ
fixture_params

Comparison (6)

comparison_lt

Field Value
test_name test_comparison
target LT
filter_by opcode_LT
model_by
model_params target_coefOPCODE_LT
fixture_params

comparison_gt

Field Value
test_name test_comparison
target GT
filter_by opcode_GT
model_by
model_params target_coefOPCODE_GT
fixture_params

comparison_slt

Field Value
test_name test_comparison
target SLT
filter_by opcode_SLT
model_by
model_params target_coefOPCODE_SLT
fixture_params

comparison_sgt

Field Value
test_name test_comparison
target SGT
filter_by opcode_SGT
model_by
model_params target_coefOPCODE_SGT
fixture_params

comparison_eq

Field Value
test_name test_comparison
target EQ
filter_by opcode_EQ
model_by
model_params target_coefOPCODE_EQ
fixture_params

comparison_iszero

Field Value
test_name test_iszero
target ISZERO
filter_by
model_by
model_params target_coefOPCODE_ISZERO
fixture_params

Stack (4)

stack_push0

Field Value
test_name test_push
target PUSH0
filter_by opcode_PUSH0-
model_by
model_params target_coefOPCODE_PUSH0
fixture_params

stack_push

Field Value
test_name test_push
target param opcode
filter_by opcode_PUSH
model_by opcode
model_params target_coefOPCODE_PUSH
fixture_params

stack_dup

Field Value
test_name test_dup
target param opcode
filter_by
model_by opcode
model_params target_coefOPCODE_DUP
fixture_params

stack_swap

Field Value
test_name test_swap
target param opcode
filter_by
model_by opcode
model_params target_coefOPCODE_SWAP
fixture_params

Control flow (5)

control_flow_jump

Field Value
test_name test_jump_benchmark
target JUMP
filter_by
model_by
model_params target_coefOPCODE_JUMP
fixture_params

control_flow_jumpi

Field Value
test_name test_jumpi_fallthrough
target JUMPI
filter_by
model_by
model_params target_coefOPCODE_JUMPI
fixture_params

control_flow_jumpdest

Field Value
test_name test_jumpdests
target JUMPDEST
filter_by
model_by
model_params target_coefOPCODE_JUMPDEST
fixture_params

control_flow_pc

Field Value
test_name test_pc_op
target PC
filter_by
model_by
model_params target_coefOPCODE_PC
fixture_params

control_flow_gas

Field Value
test_name test_gas_op
target GAS
filter_by
model_by
model_params target_coefOPCODE_GAS
fixture_params

Block & transaction context (11)

block_basefee

Field Value
test_name test_block_context_ops
target BASEFEE
filter_by opcode_BASEFEE
model_by
model_params target_coefOPCODE_BASEFEE
fixture_params

block_blobbasefee

Field Value
test_name test_block_context_ops
target BLOBBASEFEE
filter_by opcode_BLOBBASEFEE
model_by
model_params target_coefOPCODE_BLOBBASEFEE
fixture_params

block_chainid

Field Value
test_name test_block_context_ops
target CHAINID
filter_by opcode_CHAINID
model_by
model_params target_coefOPCODE_CHAINID
fixture_params

block_coinbase

Field Value
test_name test_block_context_ops
target COINBASE
filter_by opcode_COINBASE
model_by
model_params target_coefOPCODE_COINBASE
fixture_params

block_gaslimit

Field Value
test_name test_block_context_ops
target GASLIMIT
filter_by opcode_GASLIMIT
model_by
model_params target_coefOPCODE_GASLIMIT
fixture_params

block_number

Field Value
test_name test_block_context_ops
target NUMBER
filter_by opcode_NUMBER
model_by
model_params target_coefOPCODE_NUMBER
fixture_params

block_prevrandao

Field Value
test_name test_block_context_ops
target PREVRANDAO
filter_by opcode_PREVRANDAO
model_by
model_params target_coefOPCODE_PREVRANDAO
fixture_params

block_timestamp

Field Value
test_name test_block_context_ops
target TIMESTAMP
filter_by opcode_TIMESTAMP
model_by
model_params target_coefOPCODE_TIMESTAMP
fixture_params

block_blockhash

Field Value
test_name test_blockhash
target BLOCKHASH
filter_by
model_by block
model_params target_coefOPCODE_BLOCKHASH
fixture_params

tx_gasprice

Field Value
test_name test_call_frame_context_ops
target GASPRICE
filter_by opcode_GASPRICE
model_by
model_params target_coefOPCODE_GASPRICE
fixture_params

tx_origin

Field Value
test_name test_call_frame_context_ops
target ORIGIN
filter_by opcode_ORIGIN
model_by
model_params target_coefOPCODE_ORIGIN
fixture_params

Call context (8)

call_address

Field Value
test_name test_call_frame_context_ops
target ADDRESS
filter_by opcode_ADDRESS
model_by
model_params target_coefOPCODE_ADDRESS
fixture_params

call_caller

Field Value
test_name test_call_frame_context_ops
target CALLER
filter_by opcode_CALLER
model_by
model_params target_coefOPCODE_CALLER
fixture_params

call_callvalue

Field Value
test_name test_callvalue_from_origin
target CALLVALUE
filter_by
model_by
model_params target_coefOPCODE_CALLVALUE
fixture_params

call_calldataload

Field Value
test_name test_calldataload
target CALLDATALOAD
filter_by
model_by calldata_size
model_params target_coefOPCODE_CALLDATALOAD
fixture_params

call_calldatasize

Field Value
test_name test_calldatasize
target CALLDATASIZE
filter_by
model_by calldata_size
model_params target_coefOPCODE_CALLDATASIZE
fixture_params

call_returndatasize

Field Value
test_name test_returndatasize_nonzero
target RETURNDATASIZE
filter_by
model_by returned_size
model_params target_coefOPCODE_RETURNDATASIZE
fixture_params

call_calldatacopy

Field Value
test_name test_calldatacopy_from_origin
target CALLDATACOPY
filter_by
model_by calldata_size, mem_size
model_params target_coefOPCODE_CALLDATACOPY_BASE
calldata_wordsOPCODE_CALLDATACOPY_PER_WORD
fixture_params calldata_words (source=calldata_size; transform=bytes_to_words)

call_returndatacopy

Field Value
test_name test_returndatacopy
target RETURNDATACOPY
filter_by
model_by return_size, mem_size
model_params target_coefOPCODE_RETURNDATACOPY_BASE
return_wordsOPCODE_RETURNDATACOPY_PER_WORD
fixture_params return_words (source=return_size; transform=bytes_to_words)

Memory (5)

memory_mload

Field Value
test_name test_memory_access
target MLOAD
filter_by opcode_MLOAD
model_by mem_size
model_params target_coefOPCODE_MLOAD_BASE
fixture_params

memory_mstore

Field Value
test_name test_memory_access
target MSTORE
filter_by opcode_MSTORE-
model_by mem_size
model_params target_coefOPCODE_MSTORE_BASE
fixture_params

memory_mstore8

Field Value
test_name test_memory_access
target MSTORE8
filter_by opcode_MSTORE8
model_by mem_size
model_params target_coefOPCODE_MSTORE8_BASE
fixture_params

memory_msize

Field Value
test_name test_msize
target MSIZE
filter_by
model_by
model_params target_coefOPCODE_MSIZE
fixture_params

memory_mcopy

Field Value
test_name test_mcopy
target MCOPY
filter_by
model_by copy_size, mem_size
model_params target_coefOPCODE_MCOPY_BASE
copy_wordsOPCODE_MCOPY_PER_WORD
fixture_params copy_words (source=copy_size; transform=bytes_to_words)

Account / storage / state (9)

warm_storage_access_sload

Field Value
test_name test_storage_sload_same_key_benchmark
target SLOAD
filter_by
model_by
model_params target_coefWARM_ACCESS
fixture_params

warm_account_access

Field Value
test_name test_ext_account_query_warm
target param opcode
filter_by
model_by opcode
model_params target_coefWARM_ACCESS
fixture_params

cold_storage_sload

Field Value
test_name test_sload_bloated
target SLOAD
filter_by CacheStrategy.NO_CACHE
model_by existing_slots
model_params target_coefCOLD_STORAGE_ACCESS
fixture_params

cold_storage_sstore

Field Value
test_name test_sstore_bloated
target SSTORE
filter_by CacheStrategy.NO_CACHE
model_by existing_slots
model_params target_coefCOLD_STORAGE_ACCESS
updateSTORAGE_WRITE
fixture_params update (source=write_new_value; values={False0.0, True1.0})

cold_account_nocode_access

Field Value
test_name test_account_access
target param opcode
filter_by CacheStrategy.NO_CACHE, !AccountMode.EXISTING_CONTRACT
model_by opcode, account_mode
model_params target_coefCOLD_ACCOUNT_NOCODE_ACCESS
updateACCOUNT_WRITE
fixture_params update (source=value_sent)

cold_account_code_access

Field Value
test_name test_account_access
target param opcode
filter_by CacheStrategy.NO_CACHE, !AccountMode.EXISTING_EOA
model_by opcode, account_mode
model_params target_coefCOLD_ACCOUNT_CODE_ACCESS
updateACCOUNT_WRITE
fixture_params update (source=value_sent)

account_codecopy

Field Value
test_name test_codecopy_benchmark
target CODECOPY
filter_by
model_by code_size, mem_size
model_params target_coefOPCODE_CODECOPY_BASE
code_wordsOPCODE_CODECOPY_PER_WORD
fixture_params code_words (source=code_size; transform=bytes_to_words)

account_codesize

Field Value
test_name test_codesize
target CODESIZE
filter_by
model_by
model_params target_coefOPCODE_CODESIZE
fixture_params

account_selfbalance

Field Value
test_name test_selfbalance
target SELFBALANCE
filter_by
model_by
model_params target_coefOPCODE_SELFBALANCE
fixture_params

Transient storage (2)

storage_tload

Field Value
test_name test_tload
target TLOAD
filter_by
model_by
model_params target_coefOPCODE_TLOAD
fixture_params

storage_tstore

Field Value
test_name test_tstore
target TSTORE
filter_by
model_by
model_params target_coefOPCODE_TSTORE
fixture_params

Hashing (1)

keccak

Field Value
test_name test_keccak_diff_mem_msg_sizes
target KECCAK256
filter_by
model_by mem_size
model_params target_coefOPCODE_KECCAK256_BASE
msg_wordsOPCODE_KECCAK256_PER_WORD
fixture_params msg_words (source=msg_size; transform=bytes_to_words)

System (1)

system_create

Field Value
test_name test_create
target param opcode
filter_by
model_by opcode
model_params target_coefOPCODE_CREATE_BASE
fixture_params

BLS12-381 precompiles (6)

precompile_bls_g1add

Field Value
test_name test_bls12_381
target BLS12_G1ADD (counts from STATICCALL)
filter_by bls12_g1add
model_by
model_params target_coefPRECOMPILE_BLS_G1ADD
fixture_params

precompile_bls_g2add

Field Value
test_name test_bls12_381
target BLS12_G2ADD (counts from STATICCALL)
filter_by bls12_g2add
model_by
model_params target_coefPRECOMPILE_BLS_G2ADD
fixture_params

precompile_bls_fp_to_g1

Field Value
test_name test_bls12_381
target BLS12_MAP_FP_TO_G1 (counts from STATICCALL)
filter_by bls12_fp_to_g1
model_by
model_params target_coefPRECOMPILE_BLS_G1MAP
fixture_params

precompile_bls_fp_to_g2

Field Value
test_name test_bls12_381
target BLS12_MAP_FP_TO_G2 (counts from STATICCALL)
filter_by bls12_fp_to_g2
model_by
model_params target_coefPRECOMPILE_BLS_G2MAP
fixture_params

precompile_bls_g1msm

Field Value
test_name test_bls12_g1_msm
target BLS12_G1MSM (counts from STATICCALL)
filter_by bls12_g1msm
model_by k
model_params target_coefPRECOMPILE_BLS_G1MUL
fixture_params

precompile_bls_g2msm

Field Value
test_name test_bls12_g2_msm
target BLS12_G2MSM (counts from STATICCALL)
filter_by bls12_g2msm
model_by k
model_params target_coefPRECOMPILE_BLS_G2MUL
fixture_params

Precompiles (19)

precompile_ecrecover

Field Value
test_name test_ecrecover
target ECRECOVER (counts from STATICCALL)
filter_by ecrecover
model_by
model_params target_coefPRECOMPILE_ECRECOVER
fixture_params

precompile_sha256_fixed

Field Value
test_name test_sha256_fixed_size
target SHA256 (counts from STATICCALL)
filter_by sha256
model_by
model_params target_coefPRECOMPILE_SHA256_BASE
size_wordsPRECOMPILE_SHA256_PER_WORD
fixture_params size_words (source=size; transform=bytes_to_words)

precompile_sha256_uncachable

Field Value
test_name test_sha256_uncachable
target SHA256 (counts from STATICCALL)
filter_by sha256
model_by
model_params target_coefPRECOMPILE_SHA256_BASE
size_wordsPRECOMPILE_SHA256_PER_WORD
fixture_params size_words (source=size; transform=bytes_to_words)

precompile_ripemd160_fixed

Field Value
test_name test_ripemd160_fixed_size
target RIPEMD160 (counts from STATICCALL)
filter_by ripemd160
model_by
model_params target_coefPRECOMPILE_RIPEMD160_BASE
size_wordsPRECOMPILE_RIPEMD160_PER_WORD
fixture_params size_words (source=size; transform=bytes_to_words)

precompile_ripemd160_uncachable

Field Value
test_name test_ripemd160_uncachable
target RIPEMD160 (counts from STATICCALL)
filter_by ripemd160
model_by
model_params target_coefPRECOMPILE_RIPEMD160_BASE
size_wordsPRECOMPILE_RIPEMD160_PER_WORD
fixture_params size_words (source=size; transform=bytes_to_words)

precompile_identity_fixed

Field Value
test_name test_identity_fixed_size
target IDENTITY (counts from STATICCALL)
filter_by identity
model_by
model_params target_coefPRECOMPILE_IDENTITY_BASE
size_wordsPRECOMPILE_IDENTITY_PER_WORD
fixture_params size_words (source=size; transform=bytes_to_words)

precompile_identity_uncachable

Field Value
test_name test_identity_uncachable
target IDENTITY (counts from STATICCALL)
filter_by identity
model_by
model_params target_coefPRECOMPILE_IDENTITY_BASE
size_wordsPRECOMPILE_IDENTITY_PER_WORD
fixture_params size_words (source=size; transform=bytes_to_words)

precompile_blake2f

Field Value
test_name test_blake2f_benchmark
target BLAKE2F (counts from STATICCALL)
filter_by blake2f
model_by
model_params target_coefPRECOMPILE_BLAKE2F_BASE
num_roundsPRECOMPILE_BLAKE2F_PER_ROUND
fixture_params

precompile_blake2f_uncachable

Field Value
test_name test_blake2f_uncachable
target BLAKE2F (counts from STATICCALL)
filter_by blake2f
model_by
model_params target_coefPRECOMPILE_BLAKE2F_BASE
num_roundsPRECOMPILE_BLAKE2F_PER_ROUND
fixture_params

precompile_p256verify

Field Value
test_name test_p256verify
target P256VERIFY (counts from STATICCALL)
filter_by p256verify
model_by
model_params target_coefPRECOMPILE_P256VERIFY
fixture_params

precompile_p256verify_uncachable

Field Value
test_name test_p256verify_uncachable
target P256VERIFY (counts from STATICCALL)
filter_by p256verify
model_by
model_params target_coefPRECOMPILE_P256VERIFY
fixture_params

precompile_point_evaluation

Field Value
test_name test_point_evaluation
target POINT_EVALUATION (counts from STATICCALL)
filter_by point_evaluation
model_by
model_params target_coefPRECOMPILE_POINT_EVALUATION
fixture_params

precompile_point_evaluation_uncachable

Field Value
test_name test_point_evaluation_uncachable
target POINT_EVALUATION (counts from STATICCALL)
filter_by point_evaluation
model_by
model_params target_coefPRECOMPILE_POINT_EVALUATION
fixture_params

precompile_bn128_add

Field Value
test_name test_alt_bn128
target ECADD (counts from STATICCALL)
filter_by bn128_, !bn128_mul
model_by bn128
model_params target_coefPRECOMPILE_ECADD
fixture_params

precompile_bn128_mul

Field Value
test_name test_alt_bn128
target ECMUL (counts from STATICCALL)
filter_by bn128_mul_
model_by
model_params target_coefPRECOMPILE_ECMUL
fixture_params

precompile_bn128_add_uncachable

Field Value
test_name test_alt_bn128_uncachable
target ECADD (counts from STATICCALL)
filter_by ec_add
model_by
model_params target_coefPRECOMPILE_ECADD
fixture_params

precompile_bn128_mul_uncachable

Field Value
test_name test_alt_bn128_uncachable
target ECMUL (counts from STATICCALL)
filter_by ec_mul_
model_by
model_params target_coefPRECOMPILE_ECMUL
fixture_params

precompile_bn128_pairing

Field Value
test_name test_alt_bn128_benchmark
target ECPAIRING (counts from STATICCALL)
filter_by num_pairs
model_by
model_params target_coefPRECOMPILE_ECPAIRING_BASE
num_pairsPRECOMPILE_ECPAIRING_PER_POINT
fixture_params

precompile_bn128_pairing_alt

Field Value
test_name test_ec_pairing
target ECPAIRING (counts from STATICCALL)
filter_by
model_by
model_params target_coefPRECOMPILE_ECPAIRING_BASE
num_pairsPRECOMPILE_ECPAIRING_PER_POINT
fixture_params