Skip to content

Merge branch 'develop' into feature/sycl #27

Merge branch 'develop' into feature/sycl

Merge branch 'develop' into feature/sycl #27

name: oneapi_ghactions_buildrun
on:
push:
branches: [ "feature/sycl" ]
defaults:
run:
shell: bash
env:
BUILD_TYPE: RELEASE
jobs:
buildrun:
runs-on: ubuntu-latest
steps:
- name: Install software
run: |
sudo apt update
sudo apt install -y gpg-agent wget
# download the key to system keyring
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
# add signed entry to apt sources and configure the APT client to use Intel repository:
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt update
sudo apt install intel-oneapi-hpc-toolkit
- name: Setup oneAPI
run: |
source /opt/intel/oneapi/setvars.sh
printenv >> $GITHUB_ENV
which icpx
icpx -v
cat /proc/cpuinfo
- uses: actions/checkout@v4
- name: Ccache for gh actions
uses: hendrikmuhs/ccache-action@v1.2.16
with:
key: ${{ github.job }}
max-size: 2000M
- name: Configure CMake
run: >
cmake
-B ${{github.workspace}}/build
-GNinja
-DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
-DCMAKE_C_COMPILER=icx
-DCMAKE_CXX_COMPILER=icpx
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
-DQUDA_TARGET_TYPE=SYCL
-DQUDA_SYCL_TARGETS=spir64_x86_64
-DCMAKE_CXX_FLAGS="-Wno-unsupported-floating-point-opt"
-DCMAKE_SYCL_FLAGS="-Xs -march=avx512 -Wno-unsupported-floating-point-opt"
-DSYCL_LINK_FLAGS="-Xs -march=avx512 -fsycl-device-code-split=per_kernel -fsycl-max-parallel-link-jobs=4 -flink-huge-device-code"
-DQUDA_DIRAC_COVDEV=OFF
-DQUDA_DIRAC_DISTANCE_PRECONDITIONING=OFF
-DQUDA_MULTIGRID=ON
-DQUDA_INTERFACE_QDPJIT=ON
-DQUDA_FAST_COMPILE_REDUCE=ON
-DQUDA_FAST_COMPILE_DSLASH=ON
-DQUDA_OPENMP=OFF
-DQUDA_MPI=ON
-DQUDA_PRECISION=12
-DQUDA_DIRAC_DEFAULT_OFF=ON
-DQUDA_DIRAC_STAGGERED=ON
-DQUDA_DIRAC_WILSON=ON
- name: Build
run: cmake --build ${{github.workspace}}/build
- name: Install
run: cmake --install ${{github.workspace}}/build
- name: Run
run: |
cd ${{github.workspace}}/build
#ctest
ctest -E 'invert_test_asqtad_single|invert_test_splitgrid_asqtad_single|unitarize_link_single'