-
Notifications
You must be signed in to change notification settings - Fork 83
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
feat: implement Jumpdest caching in account storage #839
Comments
I am applying to this issue via OnlyDust platform. My background and how it can be leveragedI have a background in building efficient and responsive user experiences, can be greatly leveraged in the context of the Kakarot project. Understanding the optimization techniques used in the backend allows me to create a user interface that seamlessly complements the performance-driven approach of the Kakarot team. How I plan on tackling this issueI would approach this issue with following steps 1 Performance Optimization: |
This comment was marked as abuse.
This comment was marked as abuse.
I am applying to this issue via OnlyDust platform. My background and how it can be leveragedI am a full stack web and blockchain developer on ethereum chain and also a opensource contributor https://diwakar-portfolio.vercel.app/, i think i am a perfect fit for this issue |
This issue is blocked by starkware-libs/cairo#6265 WIP implementation (far from ready, needs refactoring and improvements but can be used as inspiration): main...obatirou:kakarot-ssj:cache-jumpdest |
In an effort to optimize step consumption when executing transactions, we can run analysis on bytecode upon deployment of a contract and save all valid jumpdests indexes in a contract's storage.
When a jump is performed later on, we can load whether the jump index is valid by reading the contract storage, and caching this value for later uses.
References:
https://github.com/kkrt-labs/kakarot/blob/65e333a0d3475e81b0a6367b0f00561c763da0a0/src/kakarot/evm.cairo#L314-L338
https://github.com/kkrt-labs/kakarot/blob/65e333a0d3475e81b0a6367b0f00561c763da0a0/src/kakarot/accounts/library.cairo#L413-L430
https://github.com/kkrt-labs/kakarot/blob/65e333a0d3475e81b0a6367b0f00561c763da0a0/src/kakarot/accounts/library.cairo#L403-L411
https://github.com/kkrt-labs/kakarot/blob/65e333a0d3475e81b0a6367b0f00561c763da0a0/src/backend/starknet.cairo#L214-L221
The text was updated successfully, but these errors were encountered: