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

BufferedBlockstore Flush Improvements #1044

Merged
merged 11 commits into from
Mar 15, 2021
Merged

BufferedBlockstore Flush Improvements #1044

merged 11 commits into from
Mar 15, 2021

Conversation

ec2
Copy link
Member

@ec2 ec2 commented Mar 12, 2021

Summary of changes
Changes introduced in this pull request:

  • Flushing the buffered store is one of the slowest parts of our VM and therefore Syncing.
  • This PR improves upon that by doing less recursion and deserializing by scanning for links while the IPLD object is still serialized.
  • This significantly improves our total Tipset processing time by ~50% on my local environment

Reference issue to close (if applicable)

Closes

Other information and links

ipld/blockstore/src/buffered.rs Show resolved Hide resolved
ipld/blockstore/src/buffered.rs Show resolved Hide resolved
ipld/blockstore/src/buffered.rs Show resolved Hide resolved
ipld/blockstore/src/buffered.rs Outdated Show resolved Hide resolved
ipld/blockstore/src/buffered.rs Outdated Show resolved Hide resolved
ipld/blockstore/src/buffered.rs Outdated Show resolved Hide resolved
ipld/blockstore/src/buffered.rs Show resolved Hide resolved
Copy link
Contributor

@cryptoquick cryptoquick left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work, but @creativcoder made some really good suggestions. I can only make one. :)

ipld/blockstore/src/buffered.rs Show resolved Hide resolved
Copy link
Contributor

@cryptoquick cryptoquick left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great!

@ec2 ec2 merged commit 77080e6 into main Mar 15, 2021
@ec2 ec2 deleted the ec2/syncing-stuffs branch March 15, 2021 16:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants