Giter Site home page Giter Site logo

Bump to revm 3.0 about evm-bench HOT 7 OPEN

ziyadedher avatar ziyadedher commented on June 13, 2024
Bump to revm 3.0

from evm-bench.

Comments (7)

ziyadedher avatar ziyadedher commented on June 13, 2024 1

Thanks for the bump! Will do this today. I'm on the road and don't have my main computer, so I might just update all the results on my laptop. Either way, relative results should still be stable.

from evm-bench.

ziyadedher avatar ziyadedher commented on June 13, 2024 1

Benchmarks are running on my laptop now, couldn't get pypy to compile properly on my Mac (at least not for Python 3.9), so just gonna do without for now. Will post a PR once the benchmark results come through.

from evm-bench.

ziyadedher avatar ziyadedher commented on June 13, 2024 1

I'm seeing some surprising results on my MacBook (maybe ignore ethereumjs since my node-js runner is probably very optimized for work):

evmone revm pyrevm geth py-evm.cpython ethereumjs
sum 69.2ms 100.4ms 218ms 231.4ms 21.7272s 31.3376s
relative 1.000x 1.451x 3.150x 3.344x 313.977x 452.855x
erc20.approval-transfer 7.4ms 10.2ms 21.8ms 17.4ms 1.374s 1.8832s
erc20.mint 5.2ms 6.2ms 16.8ms 18.4ms 1.2822s 2.8656s
erc20.transfer 8.6ms 12ms 24.4ms 26ms 1.8158s 3.3676s
snailtracer 45ms 67ms 143ms 157ms 15.455s 21.592s
ten-thousand-hashes 3ms 5ms 12ms 12.6ms 1.8002s 1.6292s

I want to re-run these benchmarks when I'm back at my computer as a sanity check, but digging a bit deeper I see this:

revm.old revm.new
sum 94.2ms 109.3ms
relative 1.000x 1.160x
erc20.approval-transfer 10.6ms 11.4ms
erc20.mint 6.2ms 7.4ms
erc20.transfer 11.4ms 13ms
snailtracer 61.6ms 72.5ms
ten-thousand-hashes 4.4ms 5ms

Where revm.old is using pre-#212 revm-interpreter and revm.new is using latest at 1.1.1.

In the meantime, @rakita do you have any thoughts on a potential regression here? I think I'm actually seeing a slight regression from the old "release" of revm-interpreter to the latest one (1.1.1). Is the way the runner is setup still optimal?

@gakonst does this surprise you given how you feel Foundry or Reth perf has been?

from evm-bench.

rakita avatar rakita commented on June 13, 2024 1

This is expected, we removed one optimization (gas block) for more flexibility in lib usage, I got a little bit less performance degradation as a lot of jump predictions did they work, but i think this is run in docker so it is more effected.

I would say run it a few more times (2/3) just to confirm it is similar results and that would be it.

from evm-bench.

gakonst avatar gakonst commented on June 13, 2024

hi @ziyadedher wonder if you have some capacity for this? revm has gotten some improvements lately and would love to get an update in the table

from evm-bench.

gakonst avatar gakonst commented on June 13, 2024

Thx we'll investigate!

from evm-bench.

ziyadedher avatar ziyadedher commented on June 13, 2024

Sounds good! Please keep me in the loop, I definitely wanna make sure that this benchmark suite is not misleading.

from evm-bench.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.