Skip to content

fix: CI (distributed) for Intel #254

fix: CI (distributed) for Intel

fix: CI (distributed) for Intel #254

Workflow file for this run

# SPDX-FileCopyrightText: (C) The Kokkos-FFT development team, see COPYRIGHT.md file
#
# SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception
name: CI (spack)
on:
pull_request:
branches: [ "main" ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
backend:
- name: nvcc
image: gcc
compiler: nvcc_wrapper
kokkos: +cuda +wrapper cuda_arch=90
kokkos_fft: device_backend=cufft
spack_path: ~/.spack/
- name: rocm
image: rocm
compiler: hipcc
kokkos: +rocm amdgpu_target=gfx90a
kokkos_fft: device_backend=hipfft
spack_path: /work/spack-configs/rocm
steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
with:
tool-cache: true
large-packages: false
- name: Checkout built branch
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Clone and install spack
run: |
docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
bash -c "git clone --depth=2 --branch=v1.1.0 https://github.com/spack/spack.git"
- name: Configure and build with CMake
run: |
docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
bash -c "source spack/share/spack/setup-env.sh && \
export SPACK_USER_CONFIG_PATH=${{ matrix.backend.spack_path }} && \
spack compiler find && \
spack spec kokkos-fft ${{ matrix.backend.kokkos_fft }} +tests ^kokkos ${{ matrix.backend.kokkos }} && \
spack install kokkos-fft ${{ matrix.backend.kokkos_fft }} +tests ^kokkos ${{ matrix.backend.kokkos }} && \
spack load kokkos kokkos-fft && \
cd install_test/as_library && \
cmake -D CMAKE_CXX_COMPILER=${{ matrix.backend.compiler }} -B build && \
cmake --build build -j 4"
build-sycl:
runs-on: ubuntu-latest
strategy:
matrix:
backend:
- name: sycl
compiler: icpx
image: intel
spec: kokkos-fft device_backend=onemkl +tests ^kokkos +sycl intel_gpu_arch=intel_gen %oneapi ^[email protected] ^intel-oneapi-tbb
steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
with:
tool-cache: true
large-packages: false
- name: Checkout built branch
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Clone and install spack
run: |
docker run -v ${{ github.workspace }}:/work ubuntu:24.04 \
bash -c "apt update && \
apt install --yes --no-install-recommends file bzip2 ca-certificates g++ gcc gfortran git gzip lsb-release patch python3 tar unzip xz-utils zstd && \
git clone --depth=1 --branch=v1.1.0 https://github.com/spack/spack.git && \
. spack/share/spack/setup-env.sh && \
spack install intel-oneapi-compilers@2025 && \
spack spec ${{ matrix.backend.spec }} && \
spack install ${{ matrix.backend.spec }} && \
spack load cmake intel-oneapi-compilers kokkos kokkos-fft && \
cd /work/install_test/as_library && \
cmake -D CMAKE_CXX_COMPILER=${{ matrix.backend.compiler }} -B build && \
cmake --build build -j 4"