Support for input vectors bigger that 2GB (#728) #18
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# SPDX-FileCopyrightText: Intel Corporation | |
# | |
# SPDX-License-Identifier: BSD-3-Clause | |
name: "PR Tests" | |
permissions: read-all | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
env: | |
CTEST_OUTPUT_ON_FAILURE: 1 | |
jobs: | |
checks: | |
runs-on: intel-ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Ubuntu dependencies | |
run: scripts/install-doxygen.sh | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
cache: 'pip' | |
- name: Install python dependencies | |
run: pip install -r requirements.txt | |
- name: Run checkers | |
run: pre-commit run --all | |
unit_tests: | |
runs-on: pvc | |
strategy: | |
# test everything, even if one fails | |
fail-fast: false | |
matrix: | |
include: | |
- cxx: icpx | |
- cxx: g++-11 | |
name: ${{ matrix.cxx }} | |
env: | |
CXX: ${{ matrix.cxx }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Generate | |
run: cmake -B build | |
- name: Build | |
run: make -C build -j | |
- name: MHP unit tests | |
run: ctest --test-dir build -L MHP -j 4 | |
- name: SHP unit tests | |
# Does not work on CPU | |
if: false | |
run: ctest --test-dir build -L SHP -j 4 | |
- uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: log-gcc-${{ env.CXX }} | |
path: | | |
build/Testing | |
build/test/gtest/mhp/*.log | |
build/benchmarks/gbench/mhp/*.log | |
build/examples/mhp/*.log | |
pvc_unit_tests: | |
runs-on: pvc | |
strategy: | |
# test everything, even if one fails | |
fail-fast: false | |
matrix: | |
include: | |
# Disabled because it gets a timeout 1/2 the time | |
#- config: Debug | |
- config: Release | |
name: pvc-impi-icpx-${{ matrix.config }} | |
env: | |
CXX: icpx | |
FI_PROVIDER: tcp | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Generate | |
run: cmake -B build -DCMAKE_BUILD_TYPE=${{ matrix.config }} | |
- name: Build tests | |
run: cmake --build build --target all-tests -- -j | |
- name: Unit tests | |
run: srun -p cluster scripts/run_command_on_compute_node.sh build/Testing/tests.outerr.txt ctest --test-dir build -L TESTLABEL -j 4 | |
- uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: log-pvc-impi-icpx-${{ matrix.config }} | |
path: | | |
build/Testing | |
build/test/gtest/mhp/*.log | |
build/benchmarks/gbench/mhp/*.log | |
build/examples/mhp/*.log | |
ishmem_unit_tests: | |
runs-on: pvc | |
strategy: | |
# test everything, even if one fails | |
fail-fast: false | |
matrix: | |
include: | |
# Disabled because also gets a timeout | |
# - config: Debug | |
- config: Release | |
name: ishmem-impi-icpx-${{ matrix.config }} | |
env: | |
CXX: icpx | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Generate | |
run: cmake -B build -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DENABLE_ISHMEM=on -DENABLE_L0=on -DENABLE_OFI=on -DOFI_PROVIDER=psm3 | |
- name: Build ISHMEM | |
run: cmake --build build --target shmem -- -j | |
- name: Build MHP tests | |
run: cmake --build build --target mhp-tests mhp-tests-3 -- -j | |
- name: MHP unit tests | |
run: srun -p cluster scripts/run_command_on_compute_node.sh build/Testing/mhptests.outerr.txt ctest --test-dir build -R ^mhp-tests-sycl -L MHP -j 4 | |
- uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: log-ishmem-impi-icpx-${{ matrix.config }} | |
path: | | |
build/Testing | |
build/test/gtest/mhp/*.log | |
build/benchmarks/gbench/mhp/*.log | |
build/examples/mhp/*.log | |
publish: | |
needs: [checks, unit_tests, pvc_unit_tests, ishmem_unit_tests] | |
runs-on: intel-ubuntu-latest | |
permissions: | |
contents: write | |
env: | |
SPHINXOPTS: -q -W | |
if: ${{ github.ref == 'refs/heads/main' }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
cache: 'pip' | |
- run: pip install -r requirements.txt | |
- name: Ubuntu dependencies | |
run: scripts/install-doxygen.sh | |
- name: Build doc | |
run: | | |
make -C doc/spec html | |
- name: Checkout gh-pages | |
uses: actions/checkout@v4 | |
with: | |
ref: gh-pages | |
path: gh-pages | |
- name: Publish to github pages | |
run: | | |
rm -rf gh-pages/spec gh-pages/doxygen | |
touch gh-pages/.nojekyll | |
cp -r doc/spec/build/html gh-pages/spec | |
cp -r doc/spec/build/doxygen-html gh-pages/doxygen | |
cd gh-pages | |
git config user.name github-actions | |
git config user.email [email protected] | |
git add . | |
# Ignore errors because no updates returns an error status. | |
git commit --reset-author --amend -m "Update from github actions" | |
git push --force origin gh-pages |