Skip to content

Commit fcedb4a

Browse files
author
Codex
committed
ci: continue GPU diagnostics after suite failures
1 parent 5da639c commit fcedb4a

1 file changed

Lines changed: 25 additions & 7 deletions

File tree

.github/workflows/sai-gpu-full.yml

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,22 @@ jobs:
9595
CUSOLVERMP="$MATH/targets/x86_64-linux"
9696
CUBLASMP="$MATH/targets/x86_64-linux"
9797
fi
98+
export PATH="$MPI/bin:$PATH"
99+
echo "MPI=$MPI"
100+
echo "CUDA=$CUDA"
101+
echo "CUSOLVERMP=$CUSOLVERMP"
102+
echo "CUBLASMP=$CUBLASMP"
103+
ls -l "$CUSOLVERMP"/lib/libcusolverMp.so* "$CUBLASMP"/lib/libcublasMp.so* 2>/dev/null || true
98104
export LD_LIBRARY_PATH="$MPI/lib:$CUDA/lib64:$CUSOLVERMP/lib:$CUBLASMP/lib:$MATH/lib64:$MATH/targets/x86_64-linux/lib:$NCCL/lib:/home/sai-partner/saiuser01/agent/abacus_beta6_build/install-full-sm70-avx2-mp09/lib:/home/sai-partner/saiuser01/agent/abacus_beta6_build/deps-full/lib:/home/sai-partner/saiuser01/agent/abacus_beta6_build/deps-full/lib64:/home/sai-partner/saiuser01/agent/abacus_beta6_build/deps-deepmd-pt-only/lib:/opt/devtools/elpa/elpa-2026.02.001-2603-gnu/nvidia/lib:/opt/devtools/libxc/libxc-7.0.0-avx2/lib:/opt/devtools/saiblas/2603-gnu-avx2/lib:/opt/devtools/fftw/fftw-3.3.10/lib:/opt/apps/conda_env/deepmd-kit-3.1.2/lib:/opt/apps/abacus/abacus-develop-3.9.0.26_nvhpc263gnu/toolchain/install/NEP_CPU-main/lib:${LD_LIBRARY_PATH:-}"
99105
106+
suite_status=0
107+
run_checked() {
108+
if ! "$@"; then
109+
suite_status=1
110+
echo "[WARN] test command failed; continuing to collect remaining GPU diagnostics"
111+
fi
112+
}
113+
100114
run_cases() {
101115
local suite="$1"
102116
local ranks="$2"
@@ -114,14 +128,14 @@ jobs:
114128
115129
cases_11="$CI_SRC/tests/11_PW_GPU/CASES_CI_GPU.txt"
116130
grep -v -E '^(scf_bpcg|scf_out_wf)$' "$CI_SRC/tests/11_PW_GPU/CASES_GPU.txt" > "$cases_11"
117-
run_cases 11_PW_GPU 4 "$cases_11" '^[^#].*_.*$'
118-
run_cases 11_PW_GPU 2 "$CI_SRC/tests/11_PW_GPU/CASES_GPU.txt" '^scf_bpcg$'
119-
run_cases 11_PW_GPU 1 "$CI_SRC/tests/11_PW_GPU/CASES_GPU.txt" '^scf_out_wf$'
131+
run_checked run_cases 11_PW_GPU 4 "$cases_11" '^[^#].*_.*$'
132+
run_checked run_cases 11_PW_GPU 2 "$CI_SRC/tests/11_PW_GPU/CASES_GPU.txt" '^scf_bpcg$'
133+
run_checked run_cases 11_PW_GPU 1 "$CI_SRC/tests/11_PW_GPU/CASES_GPU.txt" '^scf_out_wf$'
120134
121135
for suite in 12_NAO_Gamma_GPU 13_NAO_multik_GPU 15_rtTDDFT_GPU; do
122-
run_cases "$suite" 4 CASES_GPU.txt '^[^#].*_.*$'
136+
run_checked run_cases "$suite" 4 CASES_GPU.txt '^[^#].*_.*$'
123137
done
124-
run_cases 16_SDFT_GPU 2 CASES_GPU.txt '^[^#].*_.*$'
138+
run_checked run_cases 16_SDFT_GPU 2 CASES_GPU.txt '^[^#].*_.*$'
125139
126140
if [[ "${RUN_CUSOLVERMP:-false}" == true ]]; then
127141
tmp=$(mktemp -d /tmp/abacus-sai-cusolvermp.XXXXXX)
@@ -131,11 +145,15 @@ jobs:
131145
ln -s "$CI_SRC/tests/PP_ORB" "$tmp/PP_ORB"
132146
sed -i 's/^ks_solver[[:space:]]\+cusolver[[:space:]]*$/ks_solver cusolvermp/' \
133147
"$tmp/15_rtTDDFT_GPU/11_NO_O3_TDDFT_GPU/INPUT"
134-
(cd "$tmp/15_rtTDDFT_GPU" && timeout --signal=TERM --kill-after=30s 10m \
148+
if ! (cd "$tmp/15_rtTDDFT_GPU" && timeout --signal=TERM --kill-after=30s 10m \
135149
bash ../integrate/Autotest.sh -a "$ABACUS" -n 4 -o 1 \
136-
-f CASES_GPU.txt -r '^11_NO_O3_TDDFT_GPU$')
150+
-f CASES_GPU.txt -r '^11_NO_O3_TDDFT_GPU$'); then
151+
suite_status=1
152+
echo "[WARN] cuSolverMp RT-TDDFT smoke failed"
153+
fi
137154
fi
138155
echo "SAI_GPU_VALIDATION_PASSED mp_version=$MP_VERSION"
156+
exit "$suite_status"
139157
SBATCH
140158
sed -i "s|__RESULT_ROOT__|$RESULT_ROOT|g" "$script"
141159
export CI_SRC RESULT_ROOT ABACUS=/home/sai-partner/saiuser01/agent/abacus_beta6_build/install-full-sm70-avx2-mp09/bin/abacus MP_VERSION RUN_CUSOLVERMP

0 commit comments

Comments
 (0)