-
Notifications
You must be signed in to change notification settings - Fork 317
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
feat: non-interactive PoRep #1734
Conversation
3a330e1
to
ea715cf
Compare
035a4d3
to
145d141
Compare
Adding non-interactive PoRep. It's similar to the interactive PoRep, but it performance 12.6x the amount of proofs. In order to not overwhelm the system with too many parallel proofs, they are split into batches of 10, which then leads to a similar resource consumption per batch as for a single interactive PoRep.
OK, I've rebased the commit and added a proper commit message, which I've also added to the description of this PR. |
pub(crate) const fn get_porep_non_interactive_minimum_challenges(sector_size: u64) -> usize { | ||
match sector_size { | ||
SECTOR_SIZE_2_KIB | SECTOR_SIZE_4_KIB | SECTOR_SIZE_16_KIB | SECTOR_SIZE_32_KIB | ||
| SECTOR_SIZE_8_MIB | SECTOR_SIZE_16_MIB | SECTOR_SIZE_512_MIB | SECTOR_SIZE_1_GIB => 4, |
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.
Was the test sector size challenge count specified in the spec? Can't recall
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.
No the test sector size is not specified in the spec, but I thought I pick one different from the interactive porep.
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.
Generally looks good to me -- if/when Jake approves, ship it!
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.
Looks good to me. Thanks for the ApiFeature
addition. I just have the one comment about verify_seal
, but I'll approve now anyway (and if you think changes should be made, will approve again).
Adding non-interactive PoRep. It's similar to the interactive PoRep, but
it performance 12.6x the amount of proofs. In order to not overwhelm the
system with too many parallel proofs, they are split into batches of 10,
which then leads to a similar resource consumption per batch as for a
single interactive PoRep.