diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index add927f34..9ac1f1254 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -55,47 +55,15 @@ jobs: # - name: Run cargo fmt # run: cargo fmt --all -- --check - test_release: - runs-on: ubuntu-latest - name: Test in release mode - strategy: - matrix: - cargo-args: ['', '--features fixed-rows-to-discard'] - env: - # Run all tests with multicore-SDR enabled. - FIL_PROOFS_USE_MULTICORE_SDR: true - steps: - - uses: actions/checkout@v4 - - name: Install required packages - run: sudo apt install --no-install-recommends --yes libhwloc-dev ocl-icd-opencl-dev - - - name: Download the proof params - uses: ./.github/actions/proof-params-download - with: - github-token: ${{ secrets.GITHUB_TOKEN }} - - - name: Test in release profile - run: | - cargo test --verbose --release --workspace --all-targets ${{ matrix.cargo-args }} - # Run sequentially due to core assignment tests that otherwise might - # interfere with each other - cargo test --release -p storage-proofs-porep --features isolated-testing ${{ matrix.cargo-args }} -- --test-threads=1 - # Some `storage-proofs-update` tests need to run sequentially due to - # their high memory usage. - cargo test --release -p storage-proofs-update --features isolated-testing ${{ matrix.cargo-args }} -- --test-threads=1 - - #test_ignored_release: + #test_release: # runs-on: ubuntu-latest - # name: Test ignored in release mode + # name: Test in release mode # strategy: # matrix: - # crate: [ - # 'filecoin-proofs', - # 'storage-proofs-core', - # 'storage-proofs-porep', - # 'storage-proofs-post', - # 'storage-proofs-update' - # ] + # cargo-args: ['', '--features fixed-rows-to-discard'] + # env: + # # Run all tests with multicore-SDR enabled. + # FIL_PROOFS_USE_MULTICORE_SDR: true # steps: # - uses: actions/checkout@v4 # - name: Install required packages @@ -106,8 +74,15 @@ jobs: # with: # github-token: ${{ secrets.GITHUB_TOKEN }} # - # - name: Test ignored in release profile - # run: cargo test --package ${{ matrix.crate }} --release -- ignored --nocapture + # - name: Test in release profile + # run: | + # cargo test --verbose --release --workspace --all-targets ${{ matrix.cargo-args }} + # # Run sequentially due to core assignment tests that otherwise might + # # interfere with each other + # cargo test --release -p storage-proofs-porep --features isolated-testing ${{ matrix.cargo-args }} -- --test-threads=1 + # # Some `storage-proofs-update` tests need to run sequentially due to + # # their high memory usage. + # cargo test --release -p storage-proofs-update --features isolated-testing ${{ matrix.cargo-args }} -- --test-threads=1 #test_ignored_release: # runs-on: ubuntu-latest @@ -125,29 +100,46 @@ jobs: # - name: Test ignored in release profile # run: cargo test --release --workspace -- ignored --nocapture - test_no_default_features: - runs-on: ubuntu-latest - name: Test without default features - steps: - - uses: actions/checkout@v4 - - name: Install required packages - run: sudo apt install --no-install-recommends --yes libhwloc-dev ocl-icd-opencl-dev - - - name: Download the proof params - uses: ./.github/actions/proof-params-download - with: - github-token: ${{ secrets.GITHUB_TOKEN }} - - - name: Test ignored in release profile - run: cargo test --release --workspace --no-default-features + #test_no_default_features: + # runs-on: ubuntu-latest + # name: Test without default features + # steps: + # - uses: actions/checkout@v4 + # - name: Install required packages + # run: sudo apt install --no-install-recommends --yes libhwloc-dev ocl-icd-opencl-dev + # + # - name: Download the proof params + # uses: ./.github/actions/proof-params-download + # with: + # github-token: ${{ secrets.GITHUB_TOKEN }} + # + # - name: Test ignored in release profile + # run: cargo test --release --workspace --no-default-features + # + #build_gpu: + # runs-on: ubuntu-latest + # name: Build with CUDA and OpenCL support enabled + # steps: + # - uses: actions/checkout@v4 + # - name: Install required packages + # run: sudo apt install --no-install-recommends --yes libhwloc-dev nvidia-cuda-toolkit ocl-icd-opencl-dev + # + # - name: Test ignored in release profile + # run: cargo build --workspace --features cuda,opencl - build_gpu: + multicore_sdr: runs-on: ubuntu-latest - name: Build with CUDA and OpenCL support enabled + name: Run specific multicore SDR tests + env: + RUST_TEST_THREADS: 1 steps: - uses: actions/checkout@v4 - name: Install required packages - run: sudo apt install --no-install-recommends --yes libhwloc-dev nvidia-cuda-toolkit ocl-icd-opencl-dev + run: sudo apt install --no-install-recommends --yes libhwloc-dev ocl-icd-opencl-dev - - name: Test ignored in release profile - run: cargo build --workspace --features cuda,opencl + - name: Without multicore SDR + run: cargo test -p storage-proofs-porep --features isolated-testing --release --lib stacked::vanilla::cores + - name: With multicore SDR + run: cargo test -p storage-proofs-porep --features isolated-testing --release --lib stacked::vanilla::cores + env: + FIL_PROOFS_USE_MULTICORE_SDR: true