-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Medusa vs Echidna gas usage #497
Comments
I'm not sure gas usage in hevm is very precise. I think medusa should give a more realistic estimation compared to geth. |
Are you using any cheatcodes as part of doSomething? I'm not sure how they're priced in medusa, but that might be different. |
I'm not using any cheatcodes. I'm trying to keep it as clean as possible. It's a pretty straightforward function that just does a lot, based on a complex state. Things like looping over arrays, calculating shares, transfering tokens, etc. |
I'm debating whether or not to do a more precise benchmark, and also including Foundry. Would this be helpful? Or is this information already available somewhere? |
Here are the benchmark results:
Looks like Medusa is very accurate (assuming Foundry is accurate). Repo: Any feedback is welcome :) |
Medusa's gas usage metrics seem to be higher than Echidna.
I'm testing this using:
Here's an example output for the same function call with a complex state:
There is also the possibility that somehow the state is built different due to small differences between medusa/echidna's setup or initial values. I'm trying to have everything exactly the same, like setting block number/timestamp to
1
before deploying anything.Is this a known issue? Any tips for debugging?
The text was updated successfully, but these errors were encountered: