@@ -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