Skip to content

Commit 5a8e4cb

Browse files
committed
ci: run PW GPU cases with compatible rank widths
1 parent 3e194e5 commit 5a8e4cb

1 file changed

Lines changed: 16 additions & 12 deletions

File tree

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

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -97,25 +97,29 @@ jobs:
9797
fi
9898
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:-}"
9999
100-
run_suite() {
100+
run_cases() {
101101
local suite="$1"
102-
local ranks=4
103-
if [[ "$suite" == 11_PW_GPU ]]; then
104-
# bpcg/use_k_continuity and out_wfc cases are intentionally
105-
# single-rank because their k-point layouts are not MPI-safe.
106-
ranks=1
107-
fi
108-
if [[ "$ranks" == 1 ]]; then
102+
local ranks="$2"
103+
local cases_file="$3"
104+
local regex="$4"
105+
if [[ "$ranks" -lt 4 ]]; then
109106
(unset OMPI_MCA_rmaps_base_mapping_policy; cd "$CI_SRC/tests/$suite" && \
110-
bash ../integrate/Autotest.sh -a "$ABACUS" -n 1 -o 1 -f CASES_GPU.txt)
107+
bash ../integrate/Autotest.sh -a "$ABACUS" -n "$ranks" -o 1 \
108+
-f "$cases_file" -r "$regex")
111109
else
112110
(cd "$CI_SRC/tests/$suite" && bash ../integrate/Autotest.sh \
113-
-a "$ABACUS" -n "$ranks" -o 1 -f CASES_GPU.txt)
111+
-a "$ABACUS" -n "$ranks" -o 1 -f "$cases_file" -r "$regex")
114112
fi
115113
}
116114
117-
for suite in 11_PW_GPU 12_NAO_Gamma_GPU 13_NAO_multik_GPU 15_rtTDDFT_GPU 16_SDFT_GPU; do
118-
run_suite "$suite"
115+
cases_11="$CI_SRC/tests/11_PW_GPU/CASES_CI_GPU.txt"
116+
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$'
120+
121+
for suite in 12_NAO_Gamma_GPU 13_NAO_multik_GPU 15_rtTDDFT_GPU 16_SDFT_GPU; do
122+
run_cases "$suite" 4 CASES_GPU.txt '^[^#].*_.*$'
119123
done
120124
121125
if [[ "${RUN_CUSOLVERMP:-false}" == true ]]; then

0 commit comments

Comments
 (0)