Avatar for the bluealloy user
bluealloy
revm
BlogDocsChangelog

perf(interpreter): add match-based dispatch for better branch prediction

#3379Closed
Comparing
dragan/match-dispatch
(
2e11c22
) with
main
(
fc750ca
)
CodSpeed Performance Gauge
-34%
Regression
136
Untouched
37
Ignored
6

Benchmarks

179 total
SLOAD_50
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-7%
24.4 µs26.4 µs
EXTCODESIZE_50
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-7%
40.6 µs43.8 µs
RETURN_50
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-7%
107.2 µs115.4 µs
CALLDATALOAD_50
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-7%
57.7 µs62.1 µs
MLOAD_50
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-7%
57.9 µs62.2 µs
transact_commit_1000txs
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-6%
2.7 ms2.9 ms
CALLDATACOPY_50
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-5%
57.4 µs60.4 µs
MSTORE8_50
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-5%
55.3 µs58.1 µs
EXTCODECOPY_50
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-5%
52 µs54.6 µs
transact_1000tx_commit_inner_every_40
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-4%
2.2 ms2.3 ms
EXTCODEHASH_50
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
-4%
40.9 µs42.5 µs
transfer
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
+2%
13.9 µs13.7 µs
transfer_finalize
bins/revme/benches/evm.rs::benches::evm
CodSpeed Performance Gauge
+2%
17.5 µs17.3 µs
g1_add
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
28.3 µs28.3 µs
g2_msm (size 2)
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
2.7 ms2.7 ms
ecpairing precompile
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
4.7 ms4.7 ms
map_fp_to_g1
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
243.8 µs243.7 µs
bn254 mul precompile
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
338.3 µs338.3 µs
pairing (1 pairs)
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
4.4 ms4.4 ms
g2_msm (size 1)
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
1.3 ms1.3 ms
g2_msm (size 256)
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
162.3 ms162.3 ms
pairing (16 pairs)
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
36.5 ms36.5 ms
blake2/compress_12_rounds
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
3.3 µs3.3 µs
g1_msm (size 1)
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
714.2 µs714.2 µs
map_fp2_to_g2
crates/precompile/bench/main.rs::benches::benchmark_crypto_precompiles::Crypto Precompile benchmarks
CodSpeed Performance Gauge
0%
860.8 µs860.8 µs

Commits

Click on a commit to change the comparison range
Base
main
fc750ca
-0.05%
fix(interpreter): remove orphan interpreter_pool, add docs, require std for match-dispatch
e31bbaa
4 days ago
by gakonst
+0.31%
feat(interpreter): enable match-dispatch by default
6f519ab
4 days ago
by gakonst
-34.6%
fix(interpreter): resolve naming conflicts between modules and parameters
2e11c22
4 days ago
by gakonst
© 2026 CodSpeed Technology
Home Terms Privacy Docs