-
Notifications
You must be signed in to change notification settings - Fork 5
95 lines (86 loc) · 2.89 KB
/
ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
name: parRSB tests
on:
push:
branch: [main]
pull_request:
branch: [main]
env:
GITHUB.TOKEN: ${{ secrets.token }}
CIDIR: parRSB-github-ci
EXAMPLESDIR: build/examples
MPIEXE: "mpirun --oversubscribe"
jobs:
parRSB:
runs-on: ubuntu-latest
strategy:
matrix:
test: [box_2x2x2, pyramid, tgv, e3q, solid, ethier, vortex, expansion]
np: [1, 2, 3, 4]
fail-fast: false
name: "parRSB: ${{ matrix.test }}, NP = ${{ matrix.np }}"
env:
GSVER: 1.0.7
CC: mpicc
steps:
- uses: actions/checkout@v3
- name: Install apt dependencies
shell: bash
run: |
sudo apt -y update
sudo apt install -y openmpi-bin libopenmpi-dev
sudo apt install -y libblas-dev liblapack-dev
sudo apt install -y build-essential
- name: Build parRSB and clone tests
shell: bash
run: |
# Build gslib
git clone https://github.com/Nek5000/gslib.git
make -C gslib -j4
# Build parRSB
export GSLIBPATH=`pwd`/gslib/build/
make -j4 examples
# Clone tests
git clone https://github.com/thilinarmtb/${CIDIR}.git
- name: gencon
shell: bash
run: |
cp ${EXAMPLESDIR}/gencon ${CIDIR}/${{ matrix.test }}
cd ${CIDIR}/${{ matrix.test }}
tol=(`cat test.txt | grep tol`); tol=${tol[2]}
${MPIEXE} -np ${{ matrix.np }} ./gencon --mesh ${{ matrix.test }} \
--tol=${tol} --dump=0 --test=1
- name: genmap-lanczos
if: always()
shell: bash
run: |
export PARRSB_RSB_ALGO=0
export PARRSB_VERBOSE_LEVEL=2
cp ${EXAMPLESDIR}/genmap ${CIDIR}/${{ matrix.test }}
cd ${CIDIR}/${{ matrix.test }}
tol=(`cat test.txt | grep tol`); tol=${tol[2]}
${MPIEXE} -np ${{ matrix.np }} ./genmap --mesh ${{ matrix.test }} \
--tol=${tol} --dump=0 --test=1
- name: genmap-mg-factor-2
if: always()
shell: bash
run: |
export PARRSB_RSB_ALGO=1
export PARRSB_RSB_MG_FACTOR=2
export PARRSB_VERBOSE_LEVEL=2
cp ${EXAMPLESDIR}/genmap ${CIDIR}/${{ matrix.test }}
cd ${CIDIR}/${{ matrix.test }}
tol=(`cat test.txt | grep tol`); tol=${tol[2]}
${MPIEXE} -np ${{ matrix.np }} ./genmap --mesh ${{ matrix.test }} \
--tol=${tol} --dump=0 --test=1
- name: genmap-mg-factor-4
if: always()
shell: bash
run: |
export PARRSB_RSB_ALGO=1
export PARRSB_RSB_MG_FACTOR=4
export PARRSB_VERBOSE_LEVEL=2
cp ${EXAMPLESDIR}/genmap ${CIDIR}/${{ matrix.test }}
cd ${CIDIR}/${{ matrix.test }}
tol=(`cat test.txt | grep tol`); tol=${tol[2]}
${MPIEXE} -np ${{ matrix.np }} ./genmap --mesh ${{ matrix.test }} \
--tol=${tol} --dump=0 --test=1