Skip to content

ci: debug build

ci: debug build #15

name: Linux-CompileOnly
on: push
jobs:
Kokkos-master-OpenMPI416-CUDA11430-Release:
runs-on: ubuntu-latest
container:
image: nvidia/cuda:11.7.1-devel-ubuntu22.04
env:
ROOT: /opt/workspace
KOKKOS_SRC: $ROOT/_deps/kokkos
KOKKOS_BUILD: $ROOT/_deps/kokkos-build
KOKKOS_INSTALL: $ROOT/_deps/kokkos-install
COMM_SRC: $ROOT
COMM_BUILD: $ROOT/build
timeout-minutes: 20
steps:
- name: Create workspace
run: mkdir -p $ROOT
- name: Install packages
run: |
apt-get update && apt-get install -y cmake wget git
- name: Build MPI
run: |
wget https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.6.tar.bz2
tar -xf openmpi-4.1.6.tar.bz2
(cd openmpi-4.1.6; ./configure --prefix=/usr/local --with-cuda=/usr/local/cuda)
- name: Install MPI
run: |
(cd openmpi-4.1.6; make all install)
ldconfig
- name: Check MPI in path
run: |
which mpirun
mpirun --version
which mpicxx
mpicxx --version
- name: Check MPI's CUDA support
run: ompi_info --parsable --all | grep cuda
- name: Check out repository code
uses: actions/checkout@v4
- name: Build Kokkos
run: |
git clone https://github.com/kokkos/kokkos.git --branch master --depth 1 "$KOKKOS_SRC"
cmake -S "$KOKKOS_SRC" -B "$KOKKOS_BUILD" -DCMAKE_CXX_COMPILER="$KOKKOS_SRC/bin/nvcc_wrapper" -DCMAKE_INSTALL_PREFIX="$KOKKOS_INSTALL" -DCMAKE_BUILD_TYPE=Release -DKokkos_ENABLE_SERIAL=ON -DKokkos_ENABLE_CUDA=ON -DKokkos_ARCH_AMPERE80=ON
cmake --build "$KOKKOS_BUILD" --parallel $(nproc) -t install
- name: Build KokkosComm
run: |
cmake -S "$COMM_SRC" -B "$COMM_BUILD" -DCMAKE_CXX_COMPILER="$KOKKOS_SRC/bin/nvcc_wrapper" -DKokkos_ROOT="$KOKKOS_INSTALL" -DCMAKE_BUILD_TYPE=Release
VERBOSE=1 cmake --build "$COMM_BUILD"