Skip to content

Commit

Permalink
feat: use Halo2 compatible dependencies
Browse files Browse the repository at this point in the history
  • Loading branch information
DrPeterVanNostrand committed Aug 11, 2021
1 parent bde2c88 commit 1d7a0c0
Show file tree
Hide file tree
Showing 44 changed files with 373 additions and 649 deletions.
191 changes: 9 additions & 182 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -100,9 +100,6 @@ jobs:
parameters:
crate:
type: string
features:
type: string
default: ""
steps:
- checkout
- attach_workspace:
Expand All @@ -116,7 +113,7 @@ jobs:
ulimit -u 20000
ulimit -n 20000
cd << parameters.crate >>
cargo test --release << parameters.features >> -- --ignored --nocapture
cargo test --release -- --ignored --nocapture
environment:
RUST_TEST_THREADS: 1
no_output_timeout: 30m
Expand All @@ -134,7 +131,7 @@ jobs:
- restore_rustup_cache
- restore_parameter_cache
- run:
name: Test with use_multicore_sdr pairing enabled
name: Test with use_multicore_sdr
command: |
ulimit -n 20000
ulimit -u 20000
Expand All @@ -146,18 +143,6 @@ jobs:
RUST_TEST_THREADS: 1
FIL_PROOFS_USE_MULTICORE_SDR: true

- run:
name: Test with use_multicore_sdr and blst enabled
command: |
ulimit -n 20000
ulimit -u 20000
ulimit -n 20000
cargo +<< pipeline.parameters.nightly-toolchain >> test --all --no-default-features --features gpu,blst --verbose --release lifecycle -- --ignored --nocapture
no_output_timeout: 30m
environment:
RUST_TEST_THREADS: 1
FIL_PROOFS_USE_MULTICORE_SDR: true

test_gpu_tree_building:
executor: gpu
environment: *setup-env
Expand All @@ -183,7 +168,7 @@ jobs:
ulimit -n 20000
ulimit -u 20000
ulimit -n 20000
cargo +<< pipeline.parameters.nightly-toolchain >> test --all --no-default-features --features gpu,blst --verbose --release lifecycle -- --ignored --nocapture
cargo +<< pipeline.parameters.nightly-toolchain >> test --all --verbose --release lifecycle -- --ignored --nocapture
no_output_timeout: 30m
environment:
RUST_TEST_THREADS: 1
Expand All @@ -193,27 +178,21 @@ jobs:
test_no_gpu:
executor: default
environment: *setup-env
parameters:
features:
type: string
steps:
- checkout
- attach_workspace:
at: "."
- restore_rustup_cache
- restore_parameter_cache
- run:
name: Test with no gpu (<< parameters.features >>)
name: Test with no gpu
command: |
cargo +<< pipeline.parameters.nightly-toolchain >> test --all --verbose --no-default-features --features << parameters.features >>
cargo +<< pipeline.parameters.nightly-toolchain >> test --all --verbose --no-default-features
no_output_timeout: 30m

test_arm_no_gpu:
executor: arm
environment: *setup-env
parameters:
features:
type: string
steps:
- checkout
- attach_workspace:
Expand All @@ -235,60 +214,11 @@ jobs:
sudo apt-get update -y
sudo apt install -y libhwloc-dev
- run:
name: Test arm with no gpu (<< parameters.features >>)
name: Test arm with no gpu
command: |
cargo +<< pipeline.parameters.nightly-toolchain >> -Zpackage-features test --release --all --verbose --no-default-features --features << parameters.features >>
cargo +<< pipeline.parameters.nightly-toolchain >> -Zpackage-features test --release --all --verbose --no-default-features
no_output_timeout: 90m

test_blst:
executor: default
environment: *setup-env
parameters:
crate:
type: string
features:
type: string
default: "gpu,blst"
steps:
- checkout
- attach_workspace:
at: "."
- restore_rustup_cache
- restore_parameter_cache
- run:
name: Test ignored with blst enabled (<< parameters.crate >>)
command: |
ulimit -n 20000
ulimit -u 20000
ulimit -n 20000
RUST_LOG=trace cargo +<< pipeline.parameters.nightly-toolchain >> test --no-default-features --features << parameters.features >> --verbose --release --package << parameters.crate >> -- --nocapture
no_output_timeout: 30m
environment:
RUST_TEST_THREADS: 1

test_blst_ignored:
executor: default
environment: *setup-env
parameters:
crate:
type: string
steps:
- checkout
- attach_workspace:
at: "."
- restore_rustup_cache
- restore_parameter_cache

- run:
name: Test with blst enabled (<< parameters.crate >>)
command: |
ulimit -n 20000
ulimit -u 20000
ulimit -n 20000
cargo +<< pipeline.parameters.nightly-toolchain >> test --no-default-features --features gpu,blst --verbose --package << parameters.crate >> --release -- --ignored --nocapture
no_output_timeout: 30m


bench:
executor: default
environment: *setup-env
Expand Down Expand Up @@ -470,99 +400,34 @@ workflows:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_blst:
name: test_blst_filecoin_proofs
crate: "filecoin-proofs"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_blst_ignored:
name: test_blst_ignored_filecoin_proofs
crate: "filecoin-proofs"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test:
name: test_filecoin_proofs
crate: "filecoin-proofs"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_blst:
name: test_blst_storage_proofs_core
crate: "storage-proofs-core"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_blst_ignored:
name: test_blst_ignored_storage_proofs_core
crate: "storage-proofs-core"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test:
name: test_storage_proofs_core
crate: "storage-proofs-core"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_blst:
name: test_blst_storage_proofs_post
crate: "storage-proofs-post"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_blst_ignored:
name: test_blst_ignored_storage_proofs_post
crate: "storage-proofs-post"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test:
name: test_storage_proofs_post
crate: "storage-proofs-post"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux


- test_blst:
name: test_blst_storage_proofs_porep
crate: "storage-proofs-porep"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_blst_ignored:
name: test_blst_ignored_storage_proofs_porep
crate: "storage-proofs-porep"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test:
name: test_storage_proofs_porep
crate: "storage-proofs-porep"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux


- test_blst:
name: test_blst_fil_proofs_tooling
crate: "fil-proofs-tooling"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test:
name: test_fil_proofs_tooling
crate: "fil-proofs-tooling"
Expand All @@ -577,15 +442,6 @@ workflows:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux


- test_blst:
name: test_blst_filecoin_hashers
crate: "filecoin-hashers"
features: "blst,gpu,poseidon,sha256,blake2s"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test:
name: test_filecoin_hashers
crate: "filecoin-hashers"
Expand All @@ -594,13 +450,6 @@ workflows:
- ensure_groth_parameters_and_keys_linux


- test_blst:
name: test_blst_fil_proofs_param
crate: "fil-proofs-param"
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test:
name: test_fil_proofs_param
crate: "fil-proofs-param"
Expand All @@ -609,29 +458,13 @@ workflows:
- ensure_groth_parameters_and_keys_linux

- test_no_gpu:
name: test_no_gpu_pairing
features: 'pairing'
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_no_gpu:
name: test_no_gpu_blst
features: 'blst'
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_arm_no_gpu:
name: test_arm_no_gpu_pairing
features: 'pairing'
name: test_no_gpu
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux

- test_arm_no_gpu:
name: test_arm_no_gpu_blst
features: 'blst'
name: test_arm_no_gpu
requires:
- cargo_fetch
- ensure_groth_parameters_and_keys_linux
Expand All @@ -647,9 +480,3 @@ workflows:
crate: "fr32"
requires:
- cargo_fetch

- test_blst:
name: test_blst_fr32
crate: "fr32"
requires:
- cargo_fetch
14 changes: 6 additions & 8 deletions fil-proofs-param/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,17 @@ storage-proofs-post = { path = "../storage-proofs-post", version = "^8.0.0", def
filecoin-hashers = { version = "^3.0.0", path = "../filecoin-hashers", default-features = false, features = ["poseidon", "sha256"] }
filecoin-proofs = { version = "^8.0.0", path = "../filecoin-proofs", default-features = false }
bitvec = "0.17"
rand = "0.7"
rand = "0.8"
lazy_static = "1.2"
memmap = "0.7"
pbr = "1.0"
byteorder = "1"
itertools = "0.9"
serde = { version = "1.0", features = ["rc", "derive"] }
serde_json = "1.0"
ff = { version = "0.3.1", package = "fff" }
ff = "0.10.0"
blake2b_simd = "0.5"
bellperson = { version = "0.16", default-features = false }
bellperson = { git = "https://github.com/filecoin-project/bellperson", branch = "halo" }
log = "0.4.7"
fil_logger = "0.1"
env_proxy = "0.4"
Expand All @@ -37,15 +37,15 @@ hex = "0.4.0"
merkletree = "0.21.0"
bincode = "1.1.2"
anyhow = "1.0.23"
rand_xorshift = "0.2.0"
rand_xorshift = "0.3.0"
sha2 = "0.9.1"
typenum = "1.11.2"
gperftools = { version = "0.2", optional = true }
generic-array = "0.14.4"
structopt = "0.3.12"
humansize = "1.1.0"
indicatif = "0.15.0"
groupy = "0.4.1"
group = "0.10.0"
dialoguer = "0.8.0"
clap = "2.33.3"

Expand All @@ -62,11 +62,9 @@ failure = "0.1.7"
tempfile = "3"

[features]
default = ["gpu", "blst"]
default = ["gpu"]
cpu-profile = ["gperftools"]
heap-profile = ["gperftools/heap"]
simd = ["storage-proofs-core/simd"]
asm = ["storage-proofs-core/asm"]
gpu = ["storage-proofs-core/gpu", "storage-proofs-porep/gpu", "storage-proofs-post/gpu", "bellperson/gpu"]
pairing = ["storage-proofs-core/pairing", "storage-proofs-porep/pairing", "storage-proofs-post/pairing", "bellperson/pairing"]
blst = ["storage-proofs-core/blst", "storage-proofs-porep/blst", "storage-proofs-post/blst", "bellperson/blst"]
Loading

0 comments on commit 1d7a0c0

Please sign in to comment.