Skip to content

chore(ci): switch benchmark fill from evmone to geth#2172

Open
spencer-tb wants to merge 2 commits intoethereum:forks/amsterdamfrom
spencer-tb:chore/benchmark-use-geth
Open

chore(ci): switch benchmark fill from evmone to geth#2172
spencer-tb wants to merge 2 commits intoethereum:forks/amsterdamfrom
spencer-tb:chore/benchmark-use-geth

Conversation

@spencer-tb
Copy link
Contributor

@spencer-tb spencer-tb commented Feb 9, 2026

🗒️ Description

Summary

Switches the benchmark test filler from evmone to geth in CI and tox config:

  • Updates .github/configs/evm.yaml benchmark entry: evmone to geth
  • Updates tox.ini benchmark testenv default: evmone-t8n to evm
  • Adds build caching to the geth evm CI action (matching evmone's caching pattern)

Why?

Geth will eventually support --opcode.count (ethereum/go-ethereum#33800) and the EELS stream mode wiring is in place (#2170), giving geth feature parity with evmone for benchmark filling.

Switching to geth enables:

  • Benchmark filling for Amsterdam (BALs / EIP-7928), which evmone does not yet support
  • Using a single filler client across all forks (Prague, Osaka, Amsterdam)

🔗 Related Issues or PRs

Requires:

✅ Checklist

  • All: Ran fast tox checks to avoid unnecessary CI fails, see also Code Standards and Enabling Pre-commit Checks:
    uvx tox -e static
  • All: PR title adheres to the repo standard - it will be used as the squash commit message and should start type(scope):.
  • All: Considered updating the online docs in the ./docs/ directory.
  • All: Set appropriate labels for the changes (only maintainers can apply labels).

Cute Animal Picture

geth-gopher

@spencer-tb spencer-tb added C-chore Category: chore A-ci Area: Continuous Integration labels Feb 9, 2026
@spencer-tb spencer-tb changed the title chore: switch benchmark fill from evmone to geth chore(ci): switch benchmark fill from evmone to geth Feb 9, 2026
@spencer-tb spencer-tb force-pushed the chore/benchmark-use-geth branch from 2ba5f59 to 161d353 Compare February 9, 2026 15:09
@spencer-tb spencer-tb changed the base branch from forks/osaka to forks/amsterdam February 9, 2026 15:09
@spencer-tb spencer-tb force-pushed the chore/benchmark-use-geth branch from cfde529 to f4a6a8d Compare February 9, 2026 15:51
@spencer-tb spencer-tb force-pushed the chore/benchmark-use-geth branch from f4a6a8d to 330f870 Compare February 9, 2026 15:57
@spencer-tb
Copy link
Contributor Author

CI should pass once the Geth PR is merged!

tox.ini Outdated
--gas-benchmark-values 1 \
--evm-bin={env:EVM_BIN:evm} \
-m "benchmark and not state_test" \
-n auto --maxprocesses 10 --dist=loadgroup \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why loadgroup in particular? just curious

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know how this snuck in there at all, this is duplicating [testenv:benchmark-gas-values]. Removing it all together. Thanks.

@marioevz
Copy link
Member

marioevz commented Feb 9, 2026

We also need to set supports_opcode_count class var to True in GethTransitionTool.

@spencer-tb
Copy link
Contributor Author

We also need to set supports_opcode_count class var to True in GethTransitionTool.

This should be added in #2170. Thanks.

RazorClient pushed a commit to RazorClient/execution-specs that referenced this pull request Feb 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-ci Area: Continuous Integration C-chore Category: chore P-high

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants