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

Parallelize RAM Timestamp Count Initialization #292

Closed
sragss opened this issue Apr 15, 2024 · 2 comments
Closed

Parallelize RAM Timestamp Count Initialization #292

sragss opened this issue Apr 15, 2024 · 2 comments
Labels
good first issue Good for newcomers help wanted Extra attention is needed

Comments

@sragss
Copy link
Collaborator

sragss commented Apr 15, 2024

For a 64 core machine at a cycle count of ~16M, Jolt spends ~3.5% of its time in a segment called memory_trace_processing here. This segment allocates and computes the offline memory checking (a,v,t) polynomials used for the combined registers and RAM. Some additional details can be found in the wiki.

Currently this ~300 line segment takes ~3.5% of end-to-end time because it is computed completely serially. No use of additional CPU cores. We should parallelize this to get up to a NUM_CPUx speedup.

The goal is to fill out the following.
Trace Length sized

  • a_ram
  • v_read
  • v_write_rd
  • v_write_ram
  • t_read
  • t_write_ram

Memory sized

  • v_final
  • t_final

It may be helpful to review the tracing strategy for performance testing.

@PatStiles
Copy link
Contributor

Interested!

@moodlezoup
Copy link
Collaborator

done in #338

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants