Skip to content

ci: debug build

ci: debug build #20

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:
KOKKOS_SRC: ${{ github.workspace }}/_deps/kokkos
KOKKOS_BUILD: ${{ github.workspace }}/_deps/kokkos-build
KOKKOS_INSTALL: ${{ github.workspace }}/_deps/kokkos-install
COMM_SRC: ${{ github.workspace }}
COMM_BUILD: ${{ github.workspace }}/build
timeout-minutes: 20
steps:
- name: Create workspace
run: mkdir -p ${{ github.workspace }}
- name: Check out repository code
uses: actions/checkout@v4
- name: DEBUG - list
run: |
pwd
ls
ls ${{ github.workspace }}
- name: Install packages
run: |
apt-get update && apt-get install -y cmake wget git
- name: Download 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
- name: Configure MPI
run: cd openmpi-4.1.6 && ./configure --prefix=/usr/local --with-cuda=/usr/local/cuda
- name: Build MPI
run: cd openmpi-4.1.6 && make -j$(nproc)
- 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 CUDA support
run: ompi_info --parsable --all | grep mpi_built_with_cuda_support:value:true
- 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"