-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
disk accounts index performance improvements #30711
Labels
stale
[bot only] Added to stale content; results in auto-close after a week.
Comments
This was referenced Mar 14, 2023
This was referenced Mar 22, 2023
This was referenced Mar 29, 2023
This was referenced Mar 30, 2023
Merged
This was referenced Apr 6, 2023
I wonder if this all the subtasks have been done for this issue and it can be closed? |
github-actions
bot
added
the
stale
[bot only] Added to stale content; results in auto-close after a week.
label
Jul 25, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Problem
When disk index is enabled, validators are having a hard time catching up initially.
Disk i/o, possibly write specifically, increases a lot.
Machines with older or only a single ssd are experiencing issues.
Proposed Solution
Here are some mitigation strategies to reduce disk i/o, roughly ordered by how easily they can be implemented:
a. This prevents us from creating a data file for all buckets containing duplicate entries.
b. makes the initial clean much faster (whether in bg or fg)
a. This makes the common case only need to read/write a single file instead of 2
b. It does make the index file larger
a. This saves a u32 and maybe u64 aligned size for each entry.
b. This is in process in master.
a. We need a single bit of this to determine occupied/empty. Alignment requires it to be 8 byte aligned. This is a high per-account cost.
a. Eliminates data files completely, reduces cost per entry, eliminates variable size
a. this would hurt insertion time worst case, but since that happens in the background, that is ok and preferable to artificially larger files.
Already done in master:
The text was updated successfully, but these errors were encountered: