Skip to content

Commit 22b04ae

Browse files
authored
Merge pull request #217 from Sichao25/yus/ci_petsc
Add PETSc to CI
2 parents 2d9dc85 + da1bbce commit 22b04ae

File tree

2 files changed

+51
-0
lines changed

2 files changed

+51
-0
lines changed

.github/workflows/clang-tidy.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,29 @@ jobs:
140140
cache: true
141141
options: '-DADIOS2_USE_CUDA=OFF'
142142

143+
- name: Cache PETSc
144+
id: cache-petsc
145+
uses: actions/cache@v3
146+
with:
147+
path: ${{ runner.temp }}/petsc-openmpi
148+
key: build-petsc-openmpi
149+
150+
# PETSc check is removed due to a PETSc test failure using openmpi
151+
- name: build petsc
152+
if: steps.cache-petsc.outputs.cache-hit != 'true'
153+
run: |
154+
cd ${{ runner.temp }}
155+
git clone -b release https://gitlab.com/petsc/petsc.git petsc-openmpi
156+
cd petsc-openmpi
157+
./configure \
158+
PETSC_ARCH=ubuntu-kokkos \
159+
--with-kokkos-dir="${{ runner.temp }}/build-kokkos-openmpi/install/" \
160+
--with-kokkos-kernels-dir="${{ runner.temp }}/build-kokkos-kernels-openmpi/install/" \
161+
--with-cuda=0 \
162+
--with-shared-libraries=0 \
163+
--download-fblaslapack
164+
make all
165+
143166
- name: build redev
144167
uses: ./.github/actions/install-repo
145168
with:
@@ -173,6 +196,9 @@ jobs:
173196
-DCMAKE_C_COMPILER=mpicc \
174197
-DCMAKE_CXX_COMPILER=mpicxx \
175198
-DCMAKE_Fortran_COMPILER=mpifort \
199+
-DPCMS_ENABLE_PETSC=ON \
200+
-DPETSC_DIR=${{ runner.temp }}/petsc-openmpi \
201+
-DPETSC_ARCH=ubuntu-kokkos \
176202
-DPCMS_TIMEOUT=10 \
177203
-DCatch2_DIR=${{ runner.temp }}/build-Catch2-openmpi/install/lib/cmake/Catch2 \
178204
-DOmega_h_DIR=${{ runner.temp }}/build-omega_h-openmpi/install/lib/cmake/Omega_h \

.github/workflows/cmake-test.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,28 @@ jobs:
154154
-DADIOS2_DIR=${{ runner.temp }}/build-ADIOS2/install/lib/cmake/adios2
155155
-Dperfstubs_DIR=${{ runner.temp }}/build-perfstubs/install/lib/cmake'
156156

157+
- name: Cache PETSc
158+
id: cache-petsc
159+
uses: actions/cache@v3
160+
with:
161+
path: ${{ runner.temp }}/petsc
162+
key: build-petsc
163+
164+
- name: build petsc
165+
if: steps.cache-petsc.outputs.cache-hit != 'true'
166+
run: |
167+
cd ${{ runner.temp }}
168+
git clone -b release https://gitlab.com/petsc/petsc.git petsc
169+
cd petsc
170+
./configure \
171+
PETSC_ARCH=ubuntu-kokkos \
172+
--with-kokkos-dir="${{ runner.temp }}/build-kokkos/install/" \
173+
--with-kokkos-kernels-dir="${{ runner.temp }}/build-kokkos-kernels/install/" \
174+
--with-cuda=0 \
175+
--with-shared-libraries=0 \
176+
--download-fblaslapack
177+
make all check
178+
157179
- name: checkout pcms_testcases
158180
uses: actions/checkout@v3
159181
with:
@@ -175,6 +197,9 @@ jobs:
175197
-DCMAKE_CXX_COMPILER=`which mpicxx`
176198
-DCMAKE_Fortran_COMPILER=`which mpifort`
177199
-DMPIEXEC_PREFLAGS="--oversubscribe"
200+
-DPCMS_ENABLE_PETSC=ON
201+
-DPETSC_DIR=${{ runner.temp }}/petsc
202+
-DPETSC_ARCH=ubuntu-kokkos
178203
-DPCMS_TIMEOUT=10
179204
-DCatch2_DIR=${{ runner.temp }}/build-Catch2/install/lib/cmake/Catch2
180205
-DOmega_h_DIR=${{ runner.temp }}/build-omega_h/install/lib/cmake/Omega_h

0 commit comments

Comments
 (0)