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

Snarkify process_block_header() #1

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from
Draft

Snarkify process_block_header() #1

wants to merge 5 commits into from

Conversation

unnawut
Copy link
Collaborator

@unnawut unnawut commented Jan 29, 2025

No description provided.

@unnawut unnawut changed the title Fetch beacon head and state Snarkify process_block_header() Jan 31, 2025
@unnawut
Copy link
Collaborator Author

unnawut commented Jan 31, 2025

Managed to perform process_block_header() in the guest vm!

Cycle counts

I basic-benchmarked the cycle counts:

read_pre_state: 47791528
read_block: 49553
process_block_header: 3809599

Given the same static data, the cycle count is consistent across multiple runs.
Also notice that passing the pre-state takes 92.5% of the cycle count.

Proving time

It took 15 minutes to prove on my MacBook Pro M1 Max with 32-core GPU, 64GB RAM (r0vm using only 8GB though despite 8GB more still free)

A few different things I also tried:

  • Removing all guestvm code -> The proving time was instant.
  • Removing all but passing in just the block -> The proving time was also instant.
  • Removing all but passing in just the state -> The proving time went up to 10 minutes.

Receipt journal

The code still fails to output data to the journal...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant