-
Notifications
You must be signed in to change notification settings - Fork 102
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
SIMD-0165: Async Vote Execution #165
Open
wen-coding
wants to merge
24
commits into
solana-foundation:main
Choose a base branch
from
wen-coding:wen-async-vote-execution
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+251
−0
Open
Changes from 1 commit
Commits
Show all changes
24 commits
Select commit
Hold shift + click to select a range
8bce07a
Initial draft of Async Vote Execution SIMD.
wen-coding 74f3a33
Change SIMD number.
wen-coding 4b50153
Make linter happy.
wen-coding a8aad6c
Make linter happy.
wen-coding 55fae1d
Update the plan for clock calculation.
wen-coding ca682d7
Update the proposal to reflect optimistic vote execution plan we disc…
wen-coding 93b2506
Update dash to asterisk.
wen-coding a78f256
Rename VED and UED hash to Ephemeral and Final hash.
wen-coding 67a1f45
Change title to reflect that we calculate Ephemeral hash.
wen-coding e38b645
Explain the checks we will perform during ephemeral hash computation.
wen-coding 7dd9801
Add new fields in TowerSync.
wen-coding 60a66af
Update that which block (slot, hash) on the vote transaction is.
wen-coding 5432353
Clarify that new votes should be sent out when either hash changes.
wen-coding 40d4be6
Propose to halt and exit if >1/3 disagrees on final bankhash.
wen-coding 1b3ed81
Change status to Idea.
wen-coding 4e83392
Update calculation of vote only hash and others.
wen-coding 35ec617
Fix some small problems.
wen-coding 93372ea
Address review comments.
wen-coding 7daaf7a
Specify the hash function used.
wen-coding b7fc403
Clarify the set root error.
wen-coding f4278f4
Set root will not cause the block to be marked dead.
wen-coding 7b3de13
Add the user visible changes section.
wen-coding 8ac7180
Clarify we only use vote only hash in fork selection.
wen-coding 437d66d
EpochSlots should be updated when banks are vote only frozen.
wen-coding File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading status checks…
Change SIMD number.
commit 74f3a3326ca4a3526edf733a1d85a3b049bc40eb
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: votes are processed per entry batch, doesn't have to wait for the bank to be frozen. as a result we still partially process votes even if the block later ends up dead.
e.g. agave's impl https://github.com/anza-xyz/agave/blob/1f06fbdbe3b72f330f50ad93a15c1116f5021392/ledger/src/blockstore_processor.rs#L177
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, now I think about it, it's less about processing votes as fast as possible, more about a lot of things don't happen until the block is frozen, changes this part.