Skip to content
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

perf: reduce MemBefore initial size #684

Open
wants to merge 5 commits into
base: develop
Choose a base branch
from

Conversation

Nashtare
Copy link
Collaborator

@Nashtare Nashtare commented Oct 1, 2024

Reduce KERNEL size to allow initial MemBefore to fit in 2^16 rows (currently padded to 2^17).
Also address the TODO on gas_hook, as we haven't had any gas discrepancies since full completion of the Ethereum test suite, and this is saving a couple hundred thousand cycles for mainnet blocks (while also reducing KERNEL code size).

Most of the savings are around removing the heavy PUSHes (for large values), and reordering stack elements.

Current KERNEL code size as of 3a220c1:

  • eth_mainnet: 64559
  • cdk_erigon: 63858 (though this will probably go over the limit again once plugging the smt code)

Ran through the Ethereum test suite for consistency

@Nashtare Nashtare added this to the Performance Tuning milestone Oct 1, 2024
@Nashtare Nashtare self-assigned this Oct 1, 2024
@github-actions github-actions bot added the crate: evm_arithmetization Anything related to the evm_arithmetization crate. label Oct 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crate: evm_arithmetization Anything related to the evm_arithmetization crate.
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

1 participant