-
Notifications
You must be signed in to change notification settings - Fork 315
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: accelerate SNARK verification #1271
Conversation
This PR integrates lotus-blst in order to accelerate the SNARK verification. This feature can be enabled with the `use_lotus_blst` setting.
The CI feature is real :(
|
We are down to a build failure on OSX. I can't help with that one, I'm on Linux. |
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. Let's just get the crate published so we don't merge a git dependency.
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.
README should be updated to document use_lotus_blst
, and that setting should be changed based on the new repo name (fil-blst
).
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 (again).
* Feat: pin params to the filecoin collab cluster. (filecoin-project#1263) This cluster is way faster to ingest data. The `--local` option makes ingestion even faster (it will put the data on one peer only while adding and pin everywhere at the end). Additionally, we trigger pin requests in the main cluster (async) so that params will be replicated by those nodes too (at some point, once they finish to fetch them) from the collab cluster. * Remove unwrap (filecoin-project#1260) * build(storage-proofs): clippy allow many_single_char_names clippy emits warning: warning: 8 bindings with single-character names in scope The single character names are a valid use case in this instance, elements of an array. Elect to allow the usage; instruct clippy to allow this lint for function `insert_8`. * refactor(fil-proofs-tooling): remove all uses of unwrap() Using `expect()` with a useful argument string assists when debugging. Replace all instances of `unwrap()` with `expect()`. Makes a start at resolving: filecoin-project#390 * refactor(filecoin-proofs): remove all uses of unwrap() Using `expect()` with a useful argument string assists when debugging. Replace all instances of `unwrap()` with `expect()`. Works towards resolving: filecoin-project#390 * build(fil-proofs-tooling): set clippy lint warn for: unwrap_used We have removed all the usages of `unwrap()` in `fil-proofs-tooling\`. In order to resolve filecoin-project#390 instruct clippy to warn for lint `unwrap_used` for all binaries and the main library within fil-proofs-tooling. * build(filecoin-proofs): set clippy lint warn for: unwrap_used We have removed all the usages of `unwrap()` in `filecoin-proofs\`. In order to resolve filecoin-project#390 instruct clippy to warn for lint `unwrap_used` for the filecoin-proofs library. * build(storage-proofs): set clippy lint warn for: unwrap_used We have removed all the usages of `unwrap()` in `storage-proofs\`. In order to resolve filecoin-project#390 instruct clippy to warn for lint `unwrap_used` for all libraries in store-proofs. * - fix: manually apply phase2 unwrap changes * fix: replace all remaining usages of unwrap For this round of updates, I used nightly to detect all instances, but have reverted after making sure they've been replaced. Co-authored-by: tcharding <me@tobin.cc> * Eliminate wasteful public-input conversions. * Decompress proofs in parallel. * feat: accelerate SNARK verification (filecoin-project#1271) * feat: accelerate SNARK verification This PR integrates lotus-blst in order to accelerate the SNARK verification. This feature can be enabled with the `use_fil_blst` setting. * docs: update changelog for new release * chore(storage-proofs-core): release 5.1.2 * chore(storage-proofs-porep): release 5.1.2 * chore(storage-proofs-post): release 5.1.2 * chore(storage-proofs): release 5.1.2 * chore(filecoin-proofs): release 5.1.2 * chore(fil-proofs-tooling): release 5.1.2 * feat: accelerate SNARK verification for Window PoSt This feature can be enabled with the `use_fil_blst` setting. * chore: add log information when fil-blst is used * test: add CI for running tests with fil-blst Ideally the tests with fil-blst enabled can be run without any special flags, but for now it's good enough to run them on CI. * docs: update changelog for release * chore(storage-proofs-core): release 5.1.3 * chore(storage-proofs-porep): release 5.1.3 * chore(storage-proofs-post): release 5.1.3 * chore(storage-proofs): release 5.1.3 * chore(filecoin-proofs): release 5.1.3 * chore(fil-proofs-tooling): release 5.1.3 * Add FaultySectors error to Fallback PoSt. (filecoin-project#1274) * Add FaultySectors error to Fallback PoSt. * Test FaultySectors error with invalid PoSt. * Apply code review. Co-authored-by: porcuquine <porcuquine@users.noreply.github.com> * docs: update changelog for release * chore(storage-proofs-core): release 5.1.4 * chore(storage-proofs-porep): release 5.1.4 * chore(storage-proofs-post): release 5.1.4 * chore(storage-proofs): release 5.1.4 * chore(filecoin-proofs): release 5.1.4 * chore(fil-proofs-tooling): release 5.1.4 Co-authored-by: Hector Sanjuan <code@hector.link> Co-authored-by: nemo <nemo@protocol.ai> Co-authored-by: tcharding <me@tobin.cc> Co-authored-by: porcuquine <porcuquine@users.noreply.github.com> Co-authored-by: porcuquine <1746729+porcuquine@users.noreply.github.com> Co-authored-by: Volker Mische <volker.mische@gmail.com>
@vmx It looks like this (README) didn't actually happen. (I thought for some reason it had — sorry for premature approval. Let's do this in a follow-up. I'm sad it didn't make it in the corresponding release and communicate directly the need to set |
This PR integrates lotus-blst in order to accelerate the SNARK verification.
This feature can be enabled with the
use_lotus_blst
setting.