All out of source kernels from Thorin2 Framework #12
Workflow file for this run
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
name: Self-hosted CI | |
on: [push, pull_request] | |
jobs: | |
test-gpu-nvidia: | |
if: github.repository_id == '140986400' | |
name: NVIDIA with clang ${{ matrix.clang_version }}, CUDA ${{matrix.cuda}} | |
runs-on: [self-hosted, gpu-nvidia] | |
strategy: | |
matrix: | |
clang_version: ['15'] | |
cuda: ['11.0'] | |
nvhpc_version: ['22.11'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: build | |
run : | | |
mkdir build && cd build | |
cmake -DCMAKE_CXX_COMPILER=/usr/bin/clang++-${{matrix.clang_version}} -DCLANG_EXECUTABLE_PATH=/usr/bin/clang++-${{matrix.clang_version}} -DLLVM_DIR=/usr/lib/llvm-${{matrix.clang_version}}/cmake -DWITH_CUDA_BACKEND=ON -DWITH_ROCM_BACKEND=ON -DCMAKE_INSTALL_PREFIX=`pwd`/install -DCUDA_TOOLKIT_ROOT_DIR=/opt/cuda-${{matrix.cuda}} -DROCM_PATH=/opt/rocm .. | |
make -j16 install | |
cp /.singularity.d/libs/libcuda.* `pwd`/install/lib/ | |
- name: build generic SSCP tests | |
if: matrix.clang_version >= 14 | |
run: | | |
mkdir ${GITHUB_WORKSPACE}/build/tests-sscp | |
cd ${GITHUB_WORKSPACE}/build/tests-sscp | |
cmake -DACPP_TARGETS="generic" -DAdaptiveCpp_DIR=${GITHUB_WORKSPACE}/build/install/lib/cmake/AdaptiveCpp -DWITH_PSTL_TESTS=ON ${GITHUB_WORKSPACE}/tests | |
make -j16 | |
- name: build CUDA tests (integrated multipass) | |
run: | | |
mkdir ${GITHUB_WORKSPACE}/build/tests-cuda | |
cd ${GITHUB_WORKSPACE}/build/tests-cuda | |
cmake -DACPP_TARGETS="omp;cuda:sm_61" -DAdaptiveCpp_DIR=${GITHUB_WORKSPACE}/build/install/lib/cmake/AdaptiveCpp -DWITH_PSTL_TESTS=ON ${GITHUB_WORKSPACE}/tests | |
make -j16 | |
- name: build CUDA tests (explicit multipass) | |
run: | | |
mkdir ${GITHUB_WORKSPACE}/build/tests-cuda-emp | |
cd ${GITHUB_WORKSPACE}/build/tests-cuda-emp | |
cmake -DACPP_TARGETS="omp;cuda.explicit-multipass:sm_61;hip:gfx906" -DAdaptiveCpp_DIR=${GITHUB_WORKSPACE}/build/install/lib/cmake/AdaptiveCpp ${GITHUB_WORKSPACE}/tests | |
make -j16 | |
# NVC++ is commented out for now, because the build takes ages | |
# and it seems that nvc++ currently miscompiles some tests | |
# (e.g. group algorithms) that would need fixing first. | |
# | |
#- name: build CUDA tests (nvc++) | |
# run: | | |
# mkdir ${GITHUB_WORKSPACE}/build/tests-cuda-nvcxx | |
# cd ${GITHUB_WORKSPACE}/build/tests-cuda-nvcxx | |
# export NV_HPC_SDK_ROOT=/opt/nvidia/hpc_sdk/Linux_x86_64/${{matrix.nvhpc_version}} | |
# export ACPP_NVCXX=${NV_HPC_SDK_ROOT}/compilers/bin/nvc++ | |
# cmake -DACPP_TARGETS="cuda-nvcxx" -DAdaptiveCpp_DIR=${GITHUB_WORKSPACE}/build/install/lib/cmake/AdaptiveCpp ${GITHUB_WORKSPACE}/tests | |
# make -j16 | |
- name: run CUDA tests (integrated multipass) | |
run: | | |
echo "Running tests on CUDA..." | |
cd ${GITHUB_WORKSPACE}/build/tests-cuda | |
ACPP_VISIBILITY_MASK="omp;cuda" ./sycl_tests | |
- name: run CUDA tests (explicit multipass) | |
run: | | |
echo "Running tests on CUDA..." | |
cd ${GITHUB_WORKSPACE}/build/tests-cuda-emp | |
ACPP_VISIBILITY_MASK="omp;cuda" ./sycl_tests | |
- name: run PSTL CUDA tests (integrated multipass) | |
run: | | |
cd ${GITHUB_WORKSPACE}/build/tests-cuda | |
ACPP_VISIBILITY_MASK="omp;cuda" ./pstl_tests | |
- name: run PSTL CUDA tests (SSCP) | |
run: | | |
cd ${GITHUB_WORKSPACE}/build/tests-sscp | |
ACPP_VISIBILITY_MASK="omp;cuda" ./pstl_tests | |
#- name: run CUDA tests (nvc++) | |
# run: | | |
# echo "Running tests on CUDA..." | |
# cd ${GITHUB_WORKSPACE}/build/tests-cuda-nvcxx | |
# ./sycl_tests | |
- name: run CPU tests | |
run: | | |
cd ${GITHUB_WORKSPACE}/build/tests-cuda | |
ACPP_VISIBILITY_MASK=omp LD_LIBRARY_PATH=${GITHUB_WORKSPACE}/build/install/lib ./sycl_tests | |
- name: run CPU tests (SSCP) | |
run: | | |
cd ${GITHUB_WORKSPACE}/build/tests-sscp | |
ACPP_VISIBILITY_MASK=omp LD_LIBRARY_PATH=${GITHUB_WORKSPACE}/build/install/lib ./sycl_tests -t '!group_functions_tests/*' -t '!extension_tests/*' -t '!kernel_invocation_tests/hierarchical*' | |
- name: run PSTL CPU tests (SSCP) | |
run: | | |
cd ${GITHUB_WORKSPACE}/build/tests-sscp | |
ACPP_VISIBILITY_MASK=omp LD_LIBRARY_PATH=${GITHUB_WORKSPACE}/build/install/lib ./pstl_tests | |
test-gpu-amd: | |
if: github.repository_id == '140986400' | |
name: AMD with clang ${{ matrix.clang_version }} | |
runs-on: [self-hosted, gpu-amd] | |
strategy: | |
matrix: | |
clang_version: ['15'] | |
cuda: ['11.0'] # Just to be able to build the backend for explicit multipass | |
steps: | |
- uses: actions/checkout@v4 | |
- name: build | |
run : | | |
mkdir build && cd build | |
cmake -DCMAKE_CXX_COMPILER=/usr/bin/clang++-${{matrix.clang_version}} -DCLANG_EXECUTABLE_PATH=/usr/bin/clang++-${{matrix.clang_version}} -DLLVM_DIR=/usr/lib/llvm-${{matrix.clang_version}}/cmake -DWITH_CUDA_BACKEND=ON -DWITH_ROCM_BACKEND=ON -DCMAKE_INSTALL_PREFIX=`pwd`/install -DCUDA_TOOLKIT_ROOT_DIR=/opt/cuda-${{matrix.cuda}} -DROCM_PATH=/opt/rocm .. | |
make -j3 install | |
- name: build generic SSCP tests | |
if: matrix.clang_version >= 14 | |
run: | | |
mkdir ${GITHUB_WORKSPACE}/build/tests-sscp | |
cd ${GITHUB_WORKSPACE}/build/tests-sscp | |
cmake -DACPP_TARGETS="generic" -DAdaptiveCpp_DIR=${GITHUB_WORKSPACE}/build/install/lib/cmake/AdaptiveCpp -DWITH_PSTL_TESTS=ON ${GITHUB_WORKSPACE}/tests | |
make -j3 | |
- name: build ROCm tests (integrated multipass) | |
run: | | |
mkdir ${GITHUB_WORKSPACE}/build/tests-rocm | |
cd ${GITHUB_WORKSPACE}/build/tests-rocm | |
cmake -DACPP_TARGETS="omp;hip:gfx906" -DAdaptiveCpp_DIR=${GITHUB_WORKSPACE}/build/install/lib/cmake/AdaptiveCpp ${GITHUB_WORKSPACE}/tests | |
make -j3 | |
- name: build ROCm tests (explicit multipass) | |
run: | | |
mkdir ${GITHUB_WORKSPACE}/build/tests-rocm-emp | |
cd ${GITHUB_WORKSPACE}/build/tests-rocm-emp | |
cmake -DACPP_TARGETS="omp;hip.explicit-multipass:gfx906;cuda:sm_61" -DAdaptiveCpp_DIR=${GITHUB_WORKSPACE}/build/install/lib/cmake/AdaptiveCpp ${GITHUB_WORKSPACE}/tests | |
make -j3 | |
- name: run ROCm tests (integrated multipass) | |
run: | | |
echo "Running tests on AMD..." | |
cd ${GITHUB_WORKSPACE}/build/tests-rocm | |
ACPP_VISIBILITY_MASK="omp;hip" ./sycl_tests | |
- name: run ROCm tests (explicit multipass) | |
run: | | |
echo "Running tests on AMD..." | |
cd ${GITHUB_WORKSPACE}/build/tests-rocm-emp | |
ACPP_VISIBILITY_MASK="omp;hip" ./sycl_tests | |
- name: run PSTL ROCm tests (SSCP) | |
run: | | |
cd ${GITHUB_WORKSPACE}/build/tests-sscp | |
ACPP_VISIBILITY_MASK="omp;hip" ./pstl_tests | |
test-gpu-intel: | |
if: github.repository_id == '140986400' | |
name: Intel with clang ${{ matrix.clang_version }} | |
runs-on: [self-hosted, gpu-intel] | |
strategy: | |
matrix: | |
clang_version: ['15'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: build | |
run : | | |
mkdir build && cd build | |
cmake -DCMAKE_CXX_COMPILER=/usr/bin/clang++-${{matrix.clang_version}} -DCLANG_EXECUTABLE_PATH=/usr/bin/clang++-${{matrix.clang_version}} -DLLVM_DIR=/usr/lib/llvm-${{matrix.clang_version}}/cmake -DWITH_LEVEL_ZERO_BACKEND=ON -DWITH_OPENCL_BACKEND=ON -DCMAKE_INSTALL_PREFIX=`pwd`/install .. | |
make -j3 install | |
- name: build generic SSCP tests | |
if: matrix.clang_version >= 14 | |
run: | | |
mkdir ${GITHUB_WORKSPACE}/build/tests-sscp | |
cd ${GITHUB_WORKSPACE}/build/tests-sscp | |
cmake -DACPP_TARGETS="generic" -DAdaptiveCpp_DIR=${GITHUB_WORKSPACE}/build/install/lib/cmake/AdaptiveCpp -DWITH_PSTL_TESTS=ON ${GITHUB_WORKSPACE}/tests | |
make pstl_tests -j3 | |
- name: run PSTL Intel tests (L0) | |
if: matrix.clang_version >= 14 | |
run: | | |
cd ${GITHUB_WORKSPACE}/build/tests-sscp | |
ACPP_VISIBILITY_MASK="omp;ze" ./pstl_tests | |
- name: run PSTL Intel tests (OpenCL) | |
if: matrix.clang_version >= 14 | |
run: | | |
cd ${GITHUB_WORKSPACE}/build/tests-sscp | |
ACPP_VISIBILITY_MASK="omp;ocl:Graphics.*" ./pstl_tests |