Skip to content

Commit 388fe8e

Browse files
committed
working on new CI
1 parent 6c06332 commit 388fe8e

File tree

1 file changed

+204
-0
lines changed

1 file changed

+204
-0
lines changed
Lines changed: 204 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,204 @@
1+
name: NERSC / Perlmutter (no cache)
2+
3+
on:
4+
push:
5+
workflow_dispatch:
6+
concurrency:
7+
group: "${{ github.ref }}"
8+
cancel-in-progress: true
9+
env:
10+
GOOGLE_CREDENTIALS: "${{ secrets.GOOGLE_CREDENTIALS }}"
11+
GOOGLE_SPREADSHEET_ID: "${{ secrets.GOOGLE_SPREADSHEET_ID }}"
12+
PDC_PROJECT: "${{ secrets.NERSC_PERLMUTTER_PROJECT }}"
13+
14+
jobs:
15+
perlmutter-no-cache-build:
16+
runs-on:
17+
- self-hosted
18+
- perlmutter
19+
timeout-minutes: 2880
20+
env:
21+
PDC_BUILD_PATH: "${{ github.workspace }}/build"
22+
PDC_INSTALL_PATH: "${{ github.workspace }}/install"
23+
SCHEDULER_PARAMETERS: "-A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
24+
SUPERCOMPUTER: perlmutter
25+
MERCURY_DIR: "/global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
26+
steps:
27+
- uses: actions/[email protected]
28+
with:
29+
fetch-depth: 20
30+
lfs: true
31+
- run: module load libfabric
32+
- run: module list
33+
- run: mkdir -p ${PDC_BUILD_PATH}/perlmutter/no-cache
34+
- run: cd ${PDC_BUILD_PATH}/perlmutter/no-cache
35+
- run: cmake ../../.. -DBUILD_MPI_TESTING=ON -DBUILD_SHARED_LIBS=ON -DPDC_SERVER_CACHE=OFF -DBUILD_TESTING=ON -DCMAKE_INSTALL_PREFIX=$PDC_DIR -DPDC_ENABLE_MPI=ON -DMERCURY_DIR=$MERCURY_DIR -DCMAKE_C_COMPILER=cc -DMPI_RUN_CMD="srun -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64" -DCMAKE_INSTALL_PREFIX=${PDC_INSTALL_PATH}/perlmutter/no-cache
36+
- run: make -j
37+
- run: make install
38+
- uses: actions/[email protected]
39+
if: success()
40+
with:
41+
name: "${{ github.job }}"
42+
path: |-
43+
${PDC_BUILD_PATH}/perlmutter/no-cache
44+
${PDC_INSTALL_PATH}/perlmutter/no-cache
45+
46+
perlmutter-no-cache-parallel-pdc:
47+
needs: perlmutter-no-cache-build
48+
runs-on:
49+
- self-hosted
50+
- perlmutter
51+
timeout-minutes: 2880
52+
env:
53+
PDC_BUILD_PATH: "${{ github.workspace }}/build"
54+
PDC_INSTALL_PATH: "${{ github.workspace }}/install"
55+
SCHEDULER_PARAMETERS: "-A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
56+
SUPERCOMPUTER: perlmutter
57+
MERCURY_DIR: "/global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
58+
PDC_TMPDIR: "${PDC_BUILD_PATH}/no-cache/pdc-tmp-paralell-pdc"
59+
PDC_DATA_LOC: "${PDC_BUILD_PATH}/no-cache/pdc-data-paralell-pdc"
60+
steps:
61+
- uses: actions/[email protected]
62+
with:
63+
fetch-depth: 20
64+
lfs: true
65+
- uses: actions/[email protected]
66+
- run: export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
67+
- run: cd ${PDC_BUILD_PATH}/perlmutter/no-cache
68+
- run: ctest -L parallel_pdc
69+
- run: rm -rf ${PDC_TMPDIR} ${PDC_DATA_LOC}
70+
71+
perlmutter-no-cache-parallel-obj:
72+
needs:
73+
- perlmutter-no-cache-build
74+
- perlmutter-no-cache-parallel-pdc
75+
runs-on:
76+
- self-hosted
77+
- perlmutter
78+
timeout-minutes: 2880
79+
env:
80+
PDC_BUILD_PATH: "${{ github.workspace }}/build"
81+
PDC_INSTALL_PATH: "${{ github.workspace }}/install"
82+
SCHEDULER_PARAMETERS: "-A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
83+
SUPERCOMPUTER: perlmutter
84+
MERCURY_DIR: "/global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
85+
PDC_TMPDIR: "${PDC_BUILD_PATH}/no-cache/pdc-tmp-paralell-obj"
86+
PDC_DATA_LOC: "${PDC_BUILD_PATH}/no-cache/pdc-data-paralell-obj"
87+
steps:
88+
- uses: actions/[email protected]
89+
with:
90+
fetch-depth: 20
91+
lfs: true
92+
- uses: actions/[email protected]
93+
- run: export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
94+
- run: cd ${PDC_BUILD_PATH}/perlmutter/no-cache
95+
- run: ctest -L parallel_obj
96+
- run: rm -rf ${PDC_TMPDIR} ${PDC_DATA_LOC}
97+
98+
perlmutter-no-cache-parallel-cont:
99+
needs:
100+
- perlmutter-no-cache-build
101+
- perlmutter-no-cache-parallel-pdc
102+
runs-on:
103+
- self-hosted
104+
- perlmutter
105+
timeout-minutes: 2880
106+
env:
107+
PDC_BUILD_PATH: "${{ github.workspace }}/build"
108+
PDC_INSTALL_PATH: "${{ github.workspace }}/install"
109+
SCHEDULER_PARAMETERS: "-A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
110+
SUPERCOMPUTER: perlmutter
111+
MERCURY_DIR: "/global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
112+
PDC_TMPDIR: "${PDC_BUILD_PATH}/no-cache/pdc-tmp-paralell-cont"
113+
PDC_DATA_LOC: "${PDC_BUILD_PATH}/no-cache/pdc-data-paralell-cont"
114+
steps:
115+
- uses: actions/[email protected]
116+
with:
117+
fetch-depth: 20
118+
lfs: true
119+
- uses: actions/[email protected]
120+
- run: export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
121+
- run: cd ${PDC_BUILD_PATH}/perlmutter/no-cache
122+
- run: ctest -L parallel_cont
123+
- run: rm -rf ${PDC_TMPDIR} ${PDC_DATA_LOC}
124+
125+
perlmutter-no-cache-parallel-prop:
126+
needs:
127+
- perlmutter-no-cache-build
128+
- perlmutter-no-cache-parallel-pdc
129+
runs-on:
130+
- self-hosted
131+
- perlmutter
132+
timeout-minutes: 2880
133+
env:
134+
PDC_BUILD_PATH: "${{ github.workspace }}/build"
135+
PDC_INSTALL_PATH: "${{ github.workspace }}/install"
136+
SCHEDULER_PARAMETERS: "-A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
137+
SUPERCOMPUTER: perlmutter
138+
MERCURY_DIR: "/global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
139+
PDC_TMPDIR: "${PDC_BUILD_PATH}/no-cache/pdc-tmp-paralell-prop"
140+
PDC_DATA_LOC: "${PDC_BUILD_PATH}/no-cache/pdc-data-paralell-prop"
141+
steps:
142+
- uses: actions/[email protected]
143+
with:
144+
fetch-depth: 20
145+
lfs: true
146+
- uses: actions/[email protected]
147+
- run: export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
148+
- run: cd ${PDC_BUILD_PATH}/perlmutter/no-cache
149+
- run: ctest -L parallel_prop
150+
- run: rm -rf ${PDC_TMPDIR} ${PDC_DATA_LOC}
151+
152+
perlmutter-no-cache-parallel-region:
153+
needs:
154+
- perlmutter-no-cache-build
155+
- perlmutter-no-cache-parallel-pdc
156+
runs-on:
157+
- self-hosted
158+
- perlmutter
159+
timeout-minutes: 2880
160+
env:
161+
PDC_BUILD_PATH: "${{ github.workspace }}/build"
162+
PDC_INSTALL_PATH: "${{ github.workspace }}/install"
163+
SCHEDULER_PARAMETERS: "-A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
164+
SUPERCOMPUTER: perlmutter
165+
MERCURY_DIR: "/global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
166+
PDC_TMPDIR: "${PDC_BUILD_PATH}/no-cache/pdc-tmp-paralell-region"
167+
PDC_DATA_LOC: "${PDC_BUILD_PATH}/no-cache/pdc-data-paralell-region"
168+
steps:
169+
- uses: actions/[email protected]
170+
with:
171+
fetch-depth: 20
172+
lfs: true
173+
- uses: actions/[email protected]
174+
- run: export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
175+
- run: cd ${PDC_BUILD_PATH}/perlmutter/no-cache
176+
- run: ctest -L parallel_region_transfer
177+
- run: rm -rf ${PDC_TMPDIR} ${PDC_DATA_LOC}
178+
179+
perlmutter-no-cache-parallel-region-all:
180+
needs:
181+
- perlmutter-no-cache-build
182+
- perlmutter-no-cache-parallel-pdc
183+
runs-on:
184+
- self-hosted
185+
- perlmutter
186+
timeout-minutes: 2880
187+
env:
188+
PDC_BUILD_PATH: "${{ github.workspace }}/build"
189+
PDC_INSTALL_PATH: "${{ github.workspace }}/install"
190+
SCHEDULER_PARAMETERS: "-A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
191+
SUPERCOMPUTER: perlmutter
192+
MERCURY_DIR: "/global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
193+
PDC_TMPDIR: "${PDC_BUILD_PATH}/no-cache/pdc-tmp-paralell-region-all"
194+
PDC_DATA_LOC: "${PDC_BUILD_PATH}/no-cache/pdc-data-paralell-region-all"
195+
steps:
196+
- uses: actions/[email protected]
197+
with:
198+
fetch-depth: 20
199+
lfs: true
200+
- uses: actions/[email protected]
201+
- run: export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
202+
- run: cd ${PDC_BUILD_PATH}/perlmutter/no-cache
203+
- run: ctest -L parallel_region_transfer_all
204+
- run: rm -rf ${PDC_TMPDIR} ${PDC_DATA_LOC}

0 commit comments

Comments
 (0)