ci: debug build #21
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: 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: | |
GITHUB_WORKSPACE: ${{ github.workspace }} # I think checkout uses this variable, but it's not set in the container? | |
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" |