Skip to content

Commit

Permalink
#1: Add a Cuda build pipeline to CI (#2)
Browse files Browse the repository at this point in the history
* #1: add selfhosted runner

* #1: build with j=10

* #1: specify architecture

* #1: build vt without tests/examples, increase np

* #1: fix syntax
  • Loading branch information
cwschilly authored Dec 15, 2023
1 parent 5b59440 commit 5f754d7
Showing 1 changed file with 122 additions and 0 deletions.
122 changes: 122 additions & 0 deletions .github/workflows/ci-baseline-cuda.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
name: ci-baseline-cuda

on:
pull_request:
types: [ opened, reopened, synchronize ]
push:
branches:
- 'main'

concurrency:
group: ${{ github.event_name }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

jobs:
CI:
name: baseline
continue-on-error: false
strategy:
fail-fast: false
matrix:
image:
- nvidia/cuda:11.4.3-devel-ubuntu20.04
build_type:
- Release
- Debug

runs-on: self-hosted
container:
image: ${{ matrix.image }}

steps:
- uses: actions/checkout@v4

- name: Install dependencies
run: |
apt update \
&& DEBIAN_FRONTEND="noninteractive" apt install -y \
bzip2 \
git \
gpg \
gpgconf \
libmpich-dev \
libncurses5-dev \
libsigsegv-dev \
libsigsegv2 \
m4 \
perl \
pkg-config \
python3 \
python3-distutils \
python3-pip \
software-properties-common \
wget \
xz-utils \
zip \
zlib1g \
zlib1g-dev \
&& wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null \
&& echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null \
&& apt update \
&& DEBIAN_FRONTEND="noninteractive" apt install -y \
cmake-data=3.26.4-0kitware1ubuntu20.04.1 \
cmake=3.26.4-0kitware1ubuntu20.04.1 \
&& rm -rf /var/lib/apt/lists/*
- name: Checkout vt
uses: actions/checkout@v4
with:
repository: DARMA-tasking/vt
path: vt

- name: Checkout magistrate
uses: actions/checkout@v4
with:
repository: DARMA-tasking/magistrate
path: vt/lib/checkpoint

- name: Checkout kokkos
uses: actions/checkout@v4
with:
repository: kokkos/kokkos
path: kokkos
ref: develop

- name: Configure vt
working-directory: vt
run: |
cmake -B builddir \
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
-DVT_build_examples=OFF \
-Dvt_build_tests=OFF \
-Dvt_build_tools=OFF \
-Dvt_trace_enabled=ON
- name: Build vt
working-directory: vt
run: |
cmake --build builddir -j 14 --target install
- name: Configure kokkos
working-directory: kokkos
run: |
cmake -B builddir \
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
-DKokkos_ENABLE_CUDA=ON \
-DKokkos_ENABLE_CUDA_LAMBDA=ON \
-DKokkos_ARCH_AMPERE86=ON
- name: Build kokkos
working-directory: kokkos
run: |
cmake --build builddir -j 14 --target install
- name: Configure distBVH
run: |
cmake -B builddir \
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
-DBVH_ENABLE_CUDA=ON
- name: Build distBVH
run: |
cmake --build builddir -j 14 --target install

0 comments on commit 5f754d7

Please sign in to comment.