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

feat: implement GPU FFT & Multiexp #4

Merged
merged 12 commits into from Sep 19, 2019

Conversation

@keyvank
Copy link

commented Sep 4, 2019

This PR from @finalitylabs adds GPU accelerated versions of the Fast-Fourier-Transform and Multi-Exponentiation (For Bls12-381 engine) algorithms to the great Bellman library :) The ocl feature is turned on by default and can be disabled.
Let us know if any changes are needed before merging. @dignifiedquire

@nginnever, @keyvank

Copy link
Member

left a comment

can you please add comments to all gpu code that at least describe the high level algorithms and any reference materials used

Cargo.toml Outdated Show resolved Hide resolved
src/domain.rs Show resolved Hide resolved
src/domain.rs Show resolved Hide resolved
@keyvank keyvank force-pushed the finalitylabs:gpu branch 2 times, most recently from 183ebdb to 2189af1 Sep 10, 2019
@keyvank keyvank force-pushed the finalitylabs:gpu branch from 2189af1 to 6a31c20 Sep 10, 2019
@keyvank keyvank force-pushed the finalitylabs:gpu branch from 6a31c20 to 4f1e8da Sep 10, 2019
@keyvank

This comment has been minimized.

Copy link
Author

commented Sep 10, 2019

@dignifiedquire Made some changes. Can you review again?

Copy link
Member

left a comment

Looking good, left one more comment.

Note: as we use a nightly toolchain for our building, we are somewhat blocked on cogciprocate/ocl#163 to enable the gpu feature by default, but that will hopefully be solved soon.

@dignifiedquire dignifiedquire changed the title Init GPU FFT & Multiexp feat: implement GPU FFT & Multiexp Sep 19, 2019
@dignifiedquire dignifiedquire merged commit 2c5e93b into filecoin-project:master Sep 19, 2019
3 checks passed
3 checks passed
ci/circleci: build Your tests passed on CircleCI!
Details
ci/circleci: cargo_fetch Your tests passed on CircleCI!
Details
ci/circleci: test_x86_64-unknown-linux-gnu Your tests passed on CircleCI!
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.