已开启
【轻量级 PR】:add templates/vasp/6.4.3/data.vasp.arm_clang.cpu.config. #878
AtomGit-Bot创建于 2025年12月11日
【轻量级 PR】:add templates/vasp/6.4.3/data.vasp.arm_clang.cpu.config. #878
已开启
从refs/pull/878/head合入到master
共 1 个文件变更+130-0
| @@ -0,0 +1,130 @@ | |||
| 1 | +[SERVER] | ||
| 2 | +11.11.11.11 | ||
| 3 | + | ||
| 4 | +[DOWNLOAD] | ||
| 5 | + | ||
| 6 | +[DEPENDENCY] | ||
| 7 | +set -e | ||
| 8 | +set -x | ||
| 9 | +module purge | ||
| 10 | + | ||
| 11 | +./jarvis -install hpckit/${HPCKIT_VERSION}/ any | ||
| 12 | +cd ${JARVIS_TMP} | ||
| 13 | +rm -rf ${JARVIS_TMP}/vasp.6.4.3 | ||
| 14 | +tar xf ${JARVIS_DOWNLOAD}/vasp.6.4.3.tgz | ||
| 15 | + | ||
| 16 | + | ||
| 17 | + | ||
| 18 | +[ENV] | ||
| 19 | +module purge | ||
| 20 | +module use software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles | ||
| 21 | +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule | ||
| 22 | +module load bisheng/hmpi${HMPI_VERSION} | ||
H | |||
| 23 | +module load bisheng/kml${HMPI_VERSION}/kml | ||
| 24 | +module load bisheng/kml${HMPI_VERSION}/kblas/multi | ||
| 25 | +export HPCKIT_PATH=$JARVIS_UTILS/hpckit/${HMPI_VERSION} | ||
| 26 | +export KML_LIB=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib | ||
| 27 | +export KML_PATH=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml | ||
| 28 | +export LD_LIBRARY_PATH=${KML_LIB}/noarch:${KML_LIB}/${kp}:$LD_LIBRARY_PATH | ||
| 29 | +export LD_LIBRARY_PATH=${KML_LIB}/${kp}/kblas/multi:$LD_LIBRARY_PATH | ||
| 30 | +kml_path="-L${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib/noarch -lkm -lkm_l9" | ||
| 31 | +kml_inc=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/include | ||
| 32 | +blas_path="-L${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib/${kp}/kblas/multi -lkblas" | ||
| 33 | +fftw_path="-L${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib/${kp} -lkfft -L/usr/lib64 -lfftw3" | ||
| 34 | +scalapack_path="-L${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib/${kp}/ -lkscalapack_full -lklapack_full -lkservice" | ||
| 35 | + | ||
| 36 | +[APP] | ||
| 37 | +app_name = VASP | ||
| 38 | +build_dir = ${JARVIS_TMP}/vasp.6.4.3 | ||
| 39 | +binary_dir = ${JARVIS_TMP}/vasp.6.4.3/bin | ||
| 40 | +case_dir = | ||
| 41 | + | ||
| 42 | +[BUILD] | ||
| 43 | +sed -i ' | ||
| 44 | + s@^[[:space:]]*FORALL (N=1:SIZE(BSE_INDEX%INDEX,1)) W1(N)%WDES1 => WDESK1@ !FORALL (N=1:SIZE(BSE_INDEX%INDEX,1)) W1(N)%WDES1 => WDESK1\n DO N=1,SIZE(BSE_INDEX%INDEX,1)\n W1(N)%WDES1 => WDESK1\n ENDDO@ | ||
| 45 | + s@^[[:space:]]*FORALL (N=1:SIZE(BSE_INDEX%INDEX,2)) W3(N)%WDES1 => WDESK3@ !FORALL (N=1:SIZE(BSE_INDEX%INDEX,2)) W3(N)%WDES1 => WDESK3\n DO N=1,SIZE(BSE_INDEX%INDEX,2)\n W3(N)%WDES1 => WDESK3\n ENDDO@ | ||
| 46 | +' src/bse_driver.F | ||
| 47 | +sed -i ' | ||
| 48 | + s@^[[:space:]]*FORALL (N=1:SIZE(BSE_INDEX%INDEX,1)) W1(N)%WDES1 => WDESK1@ !FORALL (N=1:SIZE(BSE_INDEX%INDEX,1)) W1(N)%WDES1 => WDESK1\n DO N=1,SIZE(BSE_INDEX%INDEX,1)\n W1(N)%WDES1 => WDESK1\n ENDDO@ | ||
| 49 | + s@^[[:space:]]*FORALL (N=1:SIZE(BSE_INDEX%INDEX,2)) W3(N)%WDES1 => WDESK3@ !FORALL (N=1:SIZE(BSE_INDEX%INDEX,2)) W3(N)%WDES1 => WDESK3\n DO N=1,SIZE(BSE_INDEX%INDEX,2)\n W3(N)%WDES1 => WDESK3\n ENDDO@ | ||
| 50 | +' src/bse.F | ||
| 51 | +cat > makefile.include << EOF | ||
| 52 | +# Default precompiler options | ||
| 53 | +CPP_OPTIONS = -DHOST=\"LinuxGNU\" \\ | ||
| 54 | + -DMPI -DMPI_BLOCK=8000 -Duse_collective \\ | ||
| 55 | + -DscaLAPACK \\ | ||
| 56 | + -DCACHE_SIZE=5000 \\ | ||
| 57 | + -Davoidalloc \\ | ||
| 58 | + -Dvasp6 \\ | ||
| 59 | + -Duse_bse_te \\ | ||
| 60 | + -Dtbdyn \\ | ||
| 61 | + -Dfock_dblbuf | ||
| 62 | + | ||
| 63 | +CPP = flang -E -C -w \$*\$(FUFFIX) >\$*\$(SUFFIX) \$(CPP_OPTIONS) | ||
| 64 | + | ||
| 65 | +FC = mpif90 | ||
| 66 | +FCL = mpif90 | ||
| 67 | + | ||
| 68 | +FREE = -ffree-form -ffree-line-length-none | ||
| 69 | + | ||
| 70 | +FFLAGS = -w | ||
| 71 | + | ||
| 72 | +OFLAG = -O3 -ffp-contract=fast -ffpe-trap=invalid,zero,overflow | ||
| 73 | +OFLAG_IN = \$(OFLAG) | ||
| 74 | +DEBUG = -O0 | ||
| 75 | +BLAS = $blas_path | ||
| 76 | +OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o | ||
| 77 | +OBJECTS_O1 += fftw3d.o fftmpi.o fftmpiw.o | ||
| 78 | +OBJECTS_O2 += fft3dlib.o | ||
| 79 | + | ||
| 80 | + | ||
| 81 | +# For what used to be vasp.5.lib | ||
| 82 | +CPP_LIB = \$(CPP) | ||
| 83 | +FC_LIB = \$(FC) | ||
| 84 | +CC_LIB = mpicc | ||
| 85 | +CFLAGS_LIB = -O | ||
| 86 | +FFLAGS_LIB = -O3 | ||
| 87 | +FREE_LIB = \$(FREE) | ||
| 88 | + | ||
| 89 | +OBJECTS_LIB = linpack_double.o | ||
| 90 | + | ||
| 91 | +# For the parser library | ||
| 92 | +CXX_PARS = mpicxx | ||
| 93 | +LLIBS = -lstdc++ | ||
| 94 | + | ||
| 95 | +## | ||
| 96 | +## Customize as of this point! Of course you may change the preceding | ||
| 97 | +## part of this file as well if you like, but it should rarely be | ||
| 98 | +## necessary ... | ||
| 99 | +## | ||
| 100 | + | ||
| 101 | +# When compiling on the target machine itself, change this to the | ||
| 102 | +# relevant target when cross-compiling for another architecture | ||
| 103 | +VASP_TARGET_CPU ?= -march=native | ||
| 104 | +FFLAGS += \$(VASP_TARGET_CPU) | ||
| 105 | + | ||
| 106 | +FFLAGS += -w -O3 -ffast-math -Ofast | ||
| 107 | + | ||
| 108 | +# scaLAPACK (mandatory) | ||
| 109 | +SCALAPACK_ROOT ?= | ||
| 110 | +SCALAPACK = $scalapack_path | ||
| 111 | + | ||
| 112 | +LLIBS += \$(SCALAPACK) \$(BLASPACK) | ||
| 113 | + | ||
| 114 | +# FFTW (mandatory) | ||
| 115 | +FFTW_ROOT ?= | ||
| 116 | +LLIBS += ${scalapack_path} ${blas_path} ${fftw_path} ${kml_path} | ||
| 117 | +INCS += -I$kml_inc | ||
| 118 | +EOF | ||
| 119 | + | ||
| 120 | +echo `pwd` | ||
| 121 | +make DEPS=1 -j all | ||
| 122 | + | ||
| 123 | +[CLEAN] | ||
| 124 | +make veryclean | ||
| 125 | + | ||
| 126 | +[RUN] | ||
| 127 | +run = mpirun --allow-run-as-root -np 32 -x OMP_NUM_THREADS=1 | ||
| 128 | +binary = vasp_std 2>&1 | tee -a vasp.out | ||
| 129 | +nodes = 1 | ||
| 130 | + | ||
建议写清楚是release还是debug