diff --git a/templates/grapes/3.0.2/grapes.arm.cpu.bisheng.hmpi.config b/templates/grapes/3.0.2/grapes.arm.cpu.bisheng.hmpi.config index f317f482165bc08b65e0c2a3adf668575438c405..d6f59430482b093a1827946cd98c893224fa83c4 100644 --- a/templates/grapes/3.0.2/grapes.arm.cpu.bisheng.hmpi.config +++ b/templates/grapes/3.0.2/grapes.arm.cpu.bisheng.hmpi.config @@ -1,6 +1,8 @@ [SERVER] 11.11.11.11 +[DOWNLOAD] + [DEPENDENCY] module purge module use ./software/modulefiles diff --git a/templates/grapes/3.0.2/grapes.arm.cpu.hpckit.config b/templates/grapes/3.0.2/grapes.arm.cpu.hpckit.config new file mode 100644 index 0000000000000000000000000000000000000000..c98ebe11894e2c555f454d1363657b6f3bd1635d --- /dev/null +++ b/templates/grapes/3.0.2/grapes.arm.cpu.hpckit.config @@ -0,0 +1,62 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +trams/3.02 https://github.com/jarviscanada/jarvis_data/releases/download/v0.0.1/trams_v3.02.tar.gz trams_v3.02.tar.gz + + + + +[DEPENDENCY] +module purge +if [[ $UseLatest -eq 1 ]]; then + HPCKit_Version=latest +else + HPCKit_Version=25.0.0 +fi + +./jarvis -install hpckit/${HPCKit_Version}/ any +BISHENG_VERSION=`ls software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles/bisheng|grep compiler|awk -F "compiler" '{print $2}'` +HMPI_VERSION=`ls software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles/bisheng|grep hmpi|awk -F "hmpi" '{print $2}'` +module use software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule +module load bisheng/hmpi${HMPI_VERSION} +export CC=mpicc CXX=mpicxx FC=mpifort F77=mpifort +./jarvis -install hdf5/1.13.0/clang bisheng+mpi +module load bisheng${BISHENG_VERSION}-hmpi${HMPI_VERSION}/hdf5-clang/1.13.0 +./jarvis -install pnetcdf/1.14.0 bisheng+mpi +module load bisheng${BISHENG_VERSION}-hmpi${HMPI_VERSION}/pnetcdf/1.14.0 +./jarvis -install netcdf/4.9.3/clang bisheng+mpi +module load bisheng${BISHENG_VERSION}-hmpi${HMPI_VERSION}/netcdf-clang/4.9.3 + + +tar -zxvf $JARVIS_DOWNLOAD/trams_v3.02.tar.gz + +[ENV] +module purge +module use ./software/modulefiles +module load bisheng/2.1.0 +module load hmpi/1.1.1 +module load netcdf/4.7.0 +export NETCDF=$JARVIS_ROOT/software/libs/bisheng2.1.0/hmpi1.1.1/netcdf/4.7.0 + +[APP] +app_name = Grapes +build_dir = $JARVIS_ROOT/trams_v3.02 +binary_dir = $JARVIS_ROOT/trams_v3.02/run +case_dir = $JARVIS_ROOT/trams_v3.02/run + +[BUILD] +./clean -a +sed -i "30c\FCBASEOPTS = -O1 -mcpu=tsv110 ${OPTION} -fveclib=MATHLIB -finline-functions -ftree-vectorize -falign-functions -mllvm -min-prefetch-stride=2 -ffree-form -finit-zero -freciprocal-math -mrecip=vec-div:1 -faarch64-pow-alt-precision -mllvm --aarch64-recip-alt-accuracy -fstack-arrays -mllvm -disable-sincos-opt" configure.grapes +./compile grapes + +[CLEAN] +cd .. +sh run_plevchk.sh trams_v3.02/run/ +cat chk/ab22062500 + +[RUN] +run = mpirun --allow-run-as-root -np 4 --map-by socket --rank-by core -x LD_LIBRARY_PATH -x PATH -x OMP_NUM_THREADS=1 +binary = grapes.exe +nodes = 1 \ No newline at end of file diff --git a/templates/grapes/3.0.2/grapes.arm.cpu.kgcc.hmpi.config b/templates/grapes/3.0.2/grapes.arm.cpu.kgcc.hmpi.config index f3bcdcd174312340a6b5c4ff7a5995f133719c3f..9123f6f017c208849085989a6ae95de8076f1658 100644 --- a/templates/grapes/3.0.2/grapes.arm.cpu.kgcc.hmpi.config +++ b/templates/grapes/3.0.2/grapes.arm.cpu.kgcc.hmpi.config @@ -1,6 +1,8 @@ [SERVER] 11.11.11.11 +[DOWNLOAD] + [DEPENDENCY] module purge module use ./software/modulefiles diff --git a/templates/gromacs/2025.3/data.gromacs.arm.cpu.config b/templates/gromacs/2025.3/data.gromacs.arm.cpu.config new file mode 100644 index 0000000000000000000000000000000000000000..9905eb61c5af0d37d579c803a12fd01de57aed5d --- /dev/null +++ b/templates/gromacs/2025.3/data.gromacs.arm.cpu.config @@ -0,0 +1,94 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +gromacs/2025.3 http://ftp.gromacs.org/gromacs/gromacs-2025.3.tar.gz +Testcase https://repository.prace-ri.eu/ueabs/GROMACS/2.2/GROMACS_TestCaseC.tar.xz + +[DEPENDENCY] +module purge +if [[ $UseLatest -eq 1 ]]; then + HPCKit_Version=latest +else + HPCKit_Version=25.0.0 +fi +./jarvis -install hpckit/${HPCKit_Version}/ any +./jarvis -install cmake/3.28.2 any +module load ./software/modulefiles/cmake/3.28.2 + + +[ENV] +module purge +if [[ $UseLatest -eq 1 ]]; then + HPCKit_Version=latest +else + HPCKit_Version=25.0.0 +fi +BISHENG_VERSION=`ls software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles/bisheng|grep compiler|awk -F "compiler" '{print $2}'` +HMPI_VERSION=`ls software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles/bisheng|grep hmpi|awk -F "hmpi" '{print $2}'` +module use software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule +module load bisheng/hmpi${HMPI_VERSION} +module load bisheng/kml${HMPI_VERSION}/kml +module load bisheng/kml${HMPI_VERSION}/kblas/multi + +export PATH=$JARVIS_ROOT/software/apps/bisheng${BISHENG_VERSION}-hmpi${HMPI_VERSION}/gromacs-2025.3/bin:$PATH +module load ./software/modulefiles/cmake/3.28.2 +[APP] +app_name = gromacs +build_dir = $JARVIS_TMP +binary_dir = $JARVIS_ROOT/software/apps/bisheng${BISHENG_VERSION}-hmpi${HMPI_VERSION}/gromacs-2025.3/bin +case_dir = $JARVIS_TMP + +[BUILD] +cd $JARVIS_TMP +tar -xf ${JARVIS_DOWNLOAD}/gromacs-2025.3.tar.gz +cd gromacs-2025.3 +mkdir -p build +cd build +export KML_LIB_PATH=${JARVIS_ROOT}/software/utils/hpckit/24.0.0/HPCKit/24.12.30/kml/bisheng/lib + +cmake ../ -DCMAKE_INSTALL_PREFIX=$JARVIS_ROOT/software/apps/bisheng${BISHENG_VERSION}-hmpi${HMPI_VERSION}/gromacs-2025.3 -DCMAKE_BUILD_TYPE=Release -DGMX_MPI=ON -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DMPI_C_COMPILER=mpicc -DMPI_CXX_COMPILER=mpicxx -DGMX_INSTALL_LEGACY_API=ON -DGMX_HWLOC=ON -DGMX_EXTERNAL_LAPACK=ON -DGMX_LAPACK_USER=$KML_LIB_PATH/${kp}/libklapack_full.so -DGMX_EXTERNAL_BLAS=ON -DGMX_BLAS_USER=$KML_LIB_PATH/${kp}/kblas/pthread/libkblas.so -DGMX_SIMD=ARM_SVE -DGMX_OPENMP=ON -DGMX_FFT_LIBRARY=fftw3 -DFFTWF_LIBRARY=$KML_LIB_PATH/noarch/libfftw3f.so -DCMAKE_CXX_FLAGS="-L$KML_LIB_PATH/noarch -lkm" -DGMX_SIMD_ARM_SVE_LENGTH=256 +make -j +make install + +[CLEAN] +rm -rf $JARVIS_TMP/gromacs-2025.3/build/* + +[RUN] +run = +binary = mpirun -np 128 --allow-run-as-root -x UCX_TLS=sm --bind-to cpulist:ordered -mca pml ucx -mca btl ^vader,tcp,openib,uct $JARVIS_ROOT/software/apps/bisheng${BISHENG_VERSION}-hmpi${HMPI_VERSION}/gromacs-2025.3/bin/gmx_mpi mdrun -dlb yes -v -nsteps 4000 -noconfout -pin on -pinoffset 0 -ntomp 1 -npme 40 -g md_sve_0229-ucpg-bisheng.log -s stmv.28M.tpr +nodes = 1 + +[BATCH] +#定义日志文件 +LOG_FILE="gromacs-proformance.log" +tar -xf ${JARVIS_DOWNLOAD}/GROMACS_TestCaseC.tar.xz +cd GROMACS_TestCaseC +>"$LOG_FILE" +#$RUN_TOOL "gromacs gmx_mpi" "mpirun --allow-run-as-root -np 128 gmx_mpi mdrun -dlb yes -v -nsteps 4000 -noconfout -pin on -pinoffset 0 -ntomp 1 -npme 40 -g md_sve_0229-ucpg-bisheng.log -s stmv.28M.tpr" $LOG_FILE +mpirun --allow-run-as-root -np 128 gmx_mpi mdrun -dlb yes -v -nsteps 4000 -noconfout -pin on -pinoffset 0 -ntomp 1 -npme 40 -g md_sve_0229-ucpg-bisheng.log -s stmv.28M.tpr + +echo "All commands executed. Performance log saved to $LOG_FILE" + +[JOB] +#!/bin/bash +#DSUB -n gmx +#DSUB --job_type cosched +#DSUB -N 1 +#DSUB -R "cpu=128" +#DSUB -o gmx_%J.log +#DSUB -e gmx_err_%J.log + +LOG_FILE="grpmacs-proformance.log" +tar -xf ${JARVIS_DOWNLOAD}/GROMACS_TestCaseC.tar.xz +cd GROMACS_TestCaseC + +>"$LOG_FILE" +$RUN_TOOL "gromacs gmx_mpi" "mpirun --allow-run-as-root -np 128 gmx_mpi mdrun -dlb yes -v -nsteps 4000 -noconfout -pin on -pinoffset 0 -ntomp 1 -npme 40 -g md_sve_0229-ucpg-bisheng.log -s stmv.28M.tpr" $LOG_FILE + +echo "ALL commands executed. Performance log saved to $LOG_FILE" + +#mpirun -np 128 -x UCX_TLS=sm --bind-to cpulist:ordered -mca pml ucx -mca btl ^vader,tcp,openib,uct $JARVIS_ROOT/software/apps/bisheng${BISHENG_VERSION}-hmpi${HMPI_VERSION}/gromacs-2025.3/bin/gmx_mpi mdrun -dlb yes -v -nsteps 4000 -noconfout -pin on -pinoffset 0 -ntomp 1 -npme 8 -g 3-5-pme8-128C.log -s stmv.28M.tpr + + diff --git a/templates/vasp/6.3.2/data.vasp.arm_clang.cpu.config b/templates/vasp/6.3.2/data.vasp.arm_clang.cpu.config index ac10d347066b87d6b25b1c27d34a479776b728b0..94966ffd278d95fd88dcd22ec54d91c119b6986f 100644 --- a/templates/vasp/6.3.2/data.vasp.arm_clang.cpu.config +++ b/templates/vasp/6.3.2/data.vasp.arm_clang.cpu.config @@ -25,7 +25,6 @@ module load bisheng/hmpi25.0.0/hmpi module load bisheng/kml25.0.0/kml module load bisheng/kml25.0.0/kblas/multi export HPCKIT_PATH=$JARVIS_COMPILER/hpckit/25.0.0 -export HPCKIT_PATH=$JARVIS_COMPILER/hpckit/25.0.0 export KML_LIB=${HPCKIT_PATH}/HPCKit/25.0.0/kml/bisheng/lib export KML_PATH=${HPCKIT_PATH}/HPCKit/25.0.0/kml export LD_LIBRARY_PATH=${KML_LIB}/noarch:${KML_LIB}/${kp}:$LD_LIBRARY_PATH diff --git a/templates/vasp/6.5.1/data.vasp.arm_clang.cpu.config b/templates/vasp/6.5.1/data.vasp.arm_clang.cpu.config new file mode 100644 index 0000000000000000000000000000000000000000..49a095a0d819d17e307a93c99c7b817c611ed287 --- /dev/null +++ b/templates/vasp/6.5.1/data.vasp.arm_clang.cpu.config @@ -0,0 +1,136 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] + +[DEPENDENCY] +set -e +set -x +module purge +./jarvis -install fftw/yum com +if [[ $UseLatest -eq 1 ]]; then + HPCKit_Version=latest +else + HPCKit_Version=25.0.0 +fi +./jarvis -install hpckit/${HPCKit_Version}/ any +cd ${JARVIS_TMP} +rm -rf ${JARVIS_TMP}/vasp.6.5.1 +tar xf ${JARVIS_DOWNLOAD}/vasp.6.5.1.tgz + + + +[ENV] +set -e +set -x +module purge + +if [[ $UseLatest -eq 1 ]]; then + HPCKit_Version=latest +else + HPCKit_Version=25.0.0 +fi +BISHENG_VERSION=`ls software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles/bisheng|grep compiler|awk -F "compiler" '{print $2}'` +HMPI_VERSION=`ls software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles/bisheng|grep hmpi|awk -F "hmpi" '{print $2}'` +module use software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule +module load bisheng/hmpi${HMPI_VERSION} +module load bisheng/kml${HMPI_VERSION}/kml +module load bisheng/kml${HMPI_VERSION}/kblas/multi +export HPCKIT_PATH=$JARVIS_COMPILER/hpckit/${HMPI_VERSION} +export KML_LIB=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib +export KML_PATH=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml +export LD_LIBRARY_PATH=${KML_LIB}/noarch:${KML_LIB}/${kp}:$LD_LIBRARY_PATH +export LD_LIBRARY_PATH=${KML_LIB}/${kp}/kblas/multi:$LD_LIBRARY_PATH +kml_path="-L${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib/noarch -lkm -lkm_l9" +kml_inc=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/include +blas_path="-L${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib/neon/kblas/multi -lkblas" +fftw_path="-L${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib/neon -lkfft -lfftw3" +scalapack_path="-L${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib/neon/ -lkscalapack_full -lklapack_full -lkservice" + +[APP] +app_name = VASP +build_dir = ${JARVIS_TMP}/vasp.6.5.1 +binary_dir = ${JARVIS_TMP}/vasp.6.5.1/bin +case_dir = + +[BUILD] +cat > makefile.include << EOF +# Default precompiler options +CPP_OPTIONS = -DHOST=\"LinuxGNU\" \\ + -DMPI -DMPI_BLOCK=8000 -Duse_collective \\ + -DscaLAPACK \\ + -DCACHE_SIZE=5000 \\ + -Davoidalloc \\ + -Dvasp6 \\ + -Duse_bse_te \\ + -Dtbdyn \\ + -Dfock_dblbuf + +CPP = flang -E -C -w \$*\$(FUFFIX) >\$*\$(SUFFIX) \$(CPP_OPTIONS) + +FC = mpif90 +FCL = mpif90 + +FREE = -ffree-form -ffree-line-length-none + +FFLAGS = -w + +OFLAG = -O3 -ffp-contract=fast -ffpe-trap=invalid,zero,overflow +OFLAG_IN = \$(OFLAG) +DEBUG = -O0 +BLAS = $blas_path +OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o +OBJECTS_O1 += fftw3d.o fftmpi.o fftmpiw.o +OBJECTS_O2 += fft3dlib.o + + +# For what used to be vasp.5.lib +CPP_LIB = \$(CPP) +FC_LIB = \$(FC) +CC_LIB = mpicc +CFLAGS_LIB = -O +FFLAGS_LIB = -O3 +FREE_LIB = \$(FREE) + +OBJECTS_LIB = linpack_double.o + +# For the parser library +CXX_PARS = mpicxx +LLIBS = -lstdc++ + +## +## Customize as of this point! Of course you may change the preceding +## part of this file as well if you like, but it should rarely be +## necessary ... +## + +# When compiling on the target machine itself, change this to the +# relevant target when cross-compiling for another architecture +VASP_TARGET_CPU ?= -march=native +FFLAGS += \$(VASP_TARGET_CPU) + +FFLAGS += -w -O3 -ffast-math -Ofast + +# scaLAPACK (mandatory) +SCALAPACK_ROOT ?= +SCALAPACK = $scalapack_path + +LLIBS += \$(SCALAPACK) \$(BLASPACK) + +# FFTW (mandatory) +FFTW_ROOT ?= +LLIBS += ${scalapack_path} ${blas_path} ${fftw_path} ${kml_path} +INCS += -I$kml_inc +EOF + +echo `pwd` +make DEPS=1 -j all + +[CLEAN] +make veryclean + +[RUN] +run = mpirun --allow-run-as-root -np 32 -x OMP_NUM_THREADS=1 +binary = vasp_std 2>&1 | tee -a vasp.out +nodes = 1 diff --git a/templates/wrf/4.7.1/data.wrf.arm.cpu.config b/templates/wrf/4.7.1/data.wrf.arm.cpu.config index 60d69be4aa5fed43587c918b998330c25776d125..9072d49ec860c7e058c08299bcbb700f9ee2fb0b 100644 --- a/templates/wrf/4.7.1/data.wrf.arm.cpu.config +++ b/templates/wrf/4.7.1/data.wrf.arm.cpu.config @@ -8,13 +8,11 @@ wrf/4.7.1 https://github.com/wrf-model/WRF/releases/download/v4.7.1/v4.7.1.tar.g set -e set -x module purge - if [[ $UseLatest -eq 1 ]]; then HPCKit_Version=latest else HPCKit_Version=25.0.0 fi - ./jarvis -install hpckit/${HPCKit_Version}/ any BISHENG_VERSION=`ls software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles/bisheng|grep compiler|awk -F "compiler" '{print $2}'` HMPI_VERSION=`ls software/utils/hpckit/${HPCKit_Version}/HPCKit/${HPCKit_Version}/modulefiles/bisheng|grep hmpi|awk -F "hmpi" '{print $2}'`