diff --git a/README.md b/README.md index bda24f35d575e771c71f60ad5176ee1160c5e14b..d11bde800861d4fda307c1cd38ffdd48f49e0540 100644 --- a/README.md +++ b/README.md @@ -38,8 +38,6 @@ ### 已验证HPC应用 -分子动力学领域: - - [x] CP2K - [x] Amber @@ -48,14 +46,55 @@ - [x] VASP -气象领域: +- [x] ABINIT + +- [x] SIESTA + +气象海洋领域: - [x] WRF +- [x] CMAQ + +- [x] fvcom + +- [x] SPECFEM3D_GLOBE + +- [x] udunits + 流体力学领域: - [x] OpenFOAM +- [x] SU2 + +- [x] miniFE + +计算化学领域: + +- [x] CP2K + +- [x] nwchem + +量子力学领域: + +- [x] octopus + +生命科学领域: + +- [x] bedtools + +- [x] blast + +- [x] bwa + +- [x] gatk + +- [x] octave + +- [x] picard + +- [x] relion ### 使用说明 @@ -234,4 +273,4 @@ eg: ./jarvis -container openeuler:openeuler 揭开HPC应用的神秘面纱:https://zhuanlan.zhihu.com/p/489828346 -我和容器有个约会:https://zhuanlan.zhihu.com/p/499544308 \ No newline at end of file +我和容器有个约会:https://zhuanlan.zhihu.com/p/499544308 diff --git a/software/compiler/bisheng/2.1.0/installed b/software/compiler/bisheng/2.1.0/installed deleted file mode 100644 index 56a6051ca2b02b04ef92d5150c9ef600403cb1de..0000000000000000000000000000000000000000 --- a/software/compiler/bisheng/2.1.0/installed +++ /dev/null @@ -1 +0,0 @@ -1 \ No newline at end of file diff --git a/software/compiler/gcc/9.3.1/installed b/software/compiler/gcc/9.3.1/installed deleted file mode 100644 index c227083464fb9af8955c90d2924774ee50abb547..0000000000000000000000000000000000000000 --- a/software/compiler/gcc/9.3.1/installed +++ /dev/null @@ -1 +0,0 @@ -0 \ No newline at end of file diff --git a/software/compiler/kgcc/10.3.1/installed b/software/compiler/kgcc/10.3.1/installed deleted file mode 100644 index c227083464fb9af8955c90d2924774ee50abb547..0000000000000000000000000000000000000000 --- a/software/compiler/kgcc/10.3.1/installed +++ /dev/null @@ -1 +0,0 @@ -0 \ No newline at end of file diff --git a/software/compiler/kgcc/9.3.1/installed b/software/compiler/kgcc/9.3.1/installed deleted file mode 100644 index c227083464fb9af8955c90d2924774ee50abb547..0000000000000000000000000000000000000000 --- a/software/compiler/kgcc/9.3.1/installed +++ /dev/null @@ -1 +0,0 @@ -0 \ No newline at end of file diff --git a/software/compiler/python3/installed b/software/compiler/python3/installed deleted file mode 100644 index c227083464fb9af8955c90d2924774ee50abb547..0000000000000000000000000000000000000000 --- a/software/compiler/python3/installed +++ /dev/null @@ -1 +0,0 @@ -0 \ No newline at end of file diff --git a/templates/abinit/8.10.3/bisheng/.data.abinit.arm.gpu.config.swp b/templates/abinit/8.10.3/bisheng/.data.abinit.arm.gpu.config.swp new file mode 100644 index 0000000000000000000000000000000000000000..733232f9e70726109f7d9096d25da7bd9e5b177c Binary files /dev/null and b/templates/abinit/8.10.3/bisheng/.data.abinit.arm.gpu.config.swp differ diff --git a/templates/abinit/8.10.3/bisheng/data.abinit.arm.gpu.config b/templates/abinit/8.10.3/bisheng/data.abinit.arm.gpu.config new file mode 100644 index 0000000000000000000000000000000000000000..c12aa77cf3c562c5eef71e54d4bb2c8381ac09f1 --- /dev/null +++ b/templates/abinit/8.10.3/bisheng/data.abinit.arm.gpu.config @@ -0,0 +1,120 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +abinit/8.10.3 https://www.abinit.org/sites/default/files/packages/abinit-8.10.3.tar.gz +atompaw/4.0.1.0 http://forge.abinit.org/fallbacks/atompaw-4.0.1.0.tar.gz +bigdft/1.7.1.25 http://forge.abinit.org/fallbacks/bigdft-1.7.1.25.tar.gz +libxc/3.0.0 http://forge.abinit.org/fallbacks/libxc-3.0.0.tar.gz +wannier90/2.0.1.1 http://forge.abinit.org/fallbacks/wannier90-2.0.1.1.tar.gz +abinit_package https://github.com/abinit/abinit/files/3586400/0001-Patching-m_polynomial_coeff.F90-for-ability-to-compi.patch.txt abinit_patch-8.10.3.patch + +[DEPENDENCY] +module use ./software/modulefiles +module purge +./jarvis -install bisheng/2.1.0 com +module load bisheng2/2.1.0 +export CC=clang CXX=clang++ FC=flang +./jarvis -install hmpi/1.1.1 clang +module load hmpi1/1.1.1 +export CC=mpicc CXX=mpicxx FC=mpifort +./jarvis -install package/hdf5/1.10.1 clang+mpi +./jarvis -install package/pnetcdf/1.11.2 clang+mpi +./jarvis -install package/netcdf/4.7.0 clang+mpi +./jarvis -install package/openblas/0.3.18 clang + + +[ENV] +module use ./software/modulefiles +module purge +#module load kgcc9/9.3.1 +module load bisheng2/2.1.0 +module load hmpi1/1.1.1 +module load hdf5/1.10.1 +module load pnetcdf/1.11.2 +module load netcdf/4.7.0 +module load openblas/0.3.18 +export CC=mpicc CXX=mpicxx FC=mpifort + +[APP] +app_name = abinit +build_dir = $JARVIS_ROOT +binary_dir = $JARVIS_ROOT/software/apps/bisheng2/hmpi1/abinit +case_dir = $JARVIS_ROOT/software/apps/bisheng2/hmpi1/abinit + +[BUILD] +set -x +set -e + +#mkdir -p $JARVIS_ROOT/software/apps/bisheng2/hmpi1/abinit +#rm -rf $JARVIS_ROOT/software/apps/bisheng2/hmpi1/abinit/* +#cd $JARVIS_ROOT/software/apps/bisheng2/hmpi1/abinit + +cd ${JARVIS_TMP} +#ABINIT_INSTALL_DIR="$JARVIS_ROOT/software/apps/kgcc9/hmpi1/abinit/" + +MPI_HOME=`which mpicc` +MPI_HOME=${MPI_HOME%/*/*} + + +hdf5_path=`which h5diff` +hdf5_path=${hdf5_path%/*/*} +netcdf_path=`nc-config --prefix` +pnetcdf_path=`pnetcdf-config --prefix` + +array=(${LD_LIBRARY_PATH//:/ }) +for var in ${array[@]} +do + if [[ $var =~ "openblas" ]];then + openblas_path=${var%/*} + fi +done + + +export CPPFLAGS=" -I${hdf5_path}/include -I${pnetcdf_path}/include -I${netcdf_path}/include -I$MPI_HOME/include" + +export CFLAGS=" -I${hdf5_path}/include -I${pnetcdf_path}/include -I${netcdf_path}/include -I$MPI_HOME/include " + +export CXXFLAGS=" -I${hdf5_path}/include -I${pnetcdf_path}/include -I${netcdf_path}/include -I$MPI_HOME/include " + +export FCFLAGS=" -I${hdf5_path}/include -I${pnetcdf_path}/include" + +export FFLAGS=" -I${hdf5_path}/include -I${pnetcdf_path}/include" + +export LDFLAGS=" -L${hdf5_path}/lib -L${pnetcdf_path}/lib -L${netcdf_path}/lib" + +rm -rf abinit-8.10.3 +tar -zxvf $JARVIS_DOWNLOAD/abinit-8.10.3.tar.gz +cd abinit-8.10.3 +temp_path=`pwd` + +sed -i "16443a generic)\\n abi_fc_vendor_hnt=\"generic\"\\n abi_fc_version_hnt=\"default\"\\n abi_sys_spec_hnt=\"default\"\\n FCFLAGS_32BITS='-m32'\\n FCFLAGS_64BITS='-m64'\\n FCFLAGS_BIGENDIAN='-fconvert=big-endian -frecord-marker=4'\\n FCFLAGS_FIXEDFORM='-ffixed-form'\\n FCFLAGS_FREEFORM='-ffree-form'\\n FCFLAGS_PIC='-fPIC'\\n FCFLAGS_MODDIR='-J\$(abinit_moddir)'\\n FCFLAGS_HINTS='-ffree-line-length-none'\\n FCFLAGS_OPENMP='-fopenmp'\\n ;;" configure + +sed -i '21618s/#define HAVE_FC_INT_QUAD 1//g' configure + +#cp $JARVIS_DOWNLOAD/abinit_patch-8.10.3.patch ./ +#cd ./src +#patch -p2 < ../abinit_patch-8.10.3.patch +#cd .. + +mkdir extral +cd extral +cp $JARVIS_DOWNLOAD/atompaw-4.0.1.0.tar.gz ./ +cp $JARVIS_DOWNLOAD/bigdft-1.7.1.25.tar.gz ./ +cp $JARVIS_DOWNLOAD/libxc-3.0.0.tar.gz ./ +cp $JARVIS_DOWNLOAD/wannier90-2.0.1.1.tar.gz ./ +cd .. +mkdir build +cd build +../configure FC=mpif90 --enable-mpi --with-mpi-prefix=$MPI_HOME --with-dft-flavor="libxc+atompaw" --with-trio-flavor="netcdf" --with-tardir=$temp_path/extral --with-netcdf-incs="-I${netcdf_path}/include" --with-netcdf-libs="-L${netcdf_path}/lib -lnetcdf -L${netcdf_path}/lib -lnetcdff" FCFLAGS="-g -O2 -ffree-line-length-none" --with-linalg-libs="-L${openblas_path}/ -lblas -llapack" + +FC=mpif90 CC=mpicc CXX=mpicxx make multi multi_nprocs=96 + + +[CLEAN] +./clean_build + +[RUN] +run = +binary = +nodes = 1 diff --git a/templates/wrf/4.2/bisheng/data.wrf.arm.cpu.config b/templates/wrf/4.2/bisheng/data.wrf.arm.cpu.config new file mode 100644 index 0000000000000000000000000000000000000000..e357ad4ab7d166c4815ba6445e71b1d1018da0d5 --- /dev/null +++ b/templates/wrf/4.2/bisheng/data.wrf.arm.cpu.config @@ -0,0 +1,114 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +wrf/4.2 https://github.com/wrf-model/WRF/archive/refs/tags/v4.2.tar.gz wrf-4.2.tar.gz + +[DEPENDENCY] +module purge +module use ./software/modulefiles +./jarvis -install bisheng/2.1.0 com +module load bisheng2/2.1.0 +export CC=clang CXX=clang++ FC=flang + +./jarvis -install hmpi/1.1.1 clang +module load hmpi1/1.1.1 +export CC=mpicc CXX=mpicxx FC=mpifort +./jarvis -install hdf5/1.10.1 clang+mpi +./jarvis -install package/pnetcdf/1.11.2 clang+mpi +./jarvis -install package/netcdf/4.7.0 clang+mpi +./jarvis -install optimized-routines/20.02/clang clang+mpi + + +[ENV] +module purge +module use ./software/modulefiles +module load bisheng2/2.1.0 +module load hmpi1/1.1.1 +export CC=mpicc CXX=mpicxx FC=mpifort +module load hdf5/1.10.1 +module load pnetcdf/1.11.2 +module load netcdf/4.7.0 +module load optimized-routines-clang/20.02 + +[APP] +app_name = WRF +build_dir = ${JARVIS_ROOT} +binary_dir = ${JARVIS_ROOT}/software/apps/bisheng2/hmpi1/wrf +case_dir = ${JARVIS_ROOT}/software/apps/bisheng2/hmpi1/wrf + +[BUILD] +cd ${JARVIS_TMP} +rm -rf WRF-4.2 +tar -zxvf $JARVIS_DOWNLOAD/wrf-4.2.tar.gz +cd WRF-4.2 + +export HDF5=`which h5diff` +export HDF5=${HDF5%/*/*} +export NETCDF=`nc-config --prefix` +export PNETCDF=`pnetcdf-config --prefix` + + +export CPPFLAGS="-I$HDF5/include -I$PNETCDF/include -I$NETCDF/include" +export LDFLAGS="-L$HDF5/lib -L$PNETCDF/lib -L$NETCDF/lib -lnetcdf -lnetcdff -lpnetcdf -lhdf5_hl -lhdf5 -lz" +export WRFIO_NCD_LARGE_FILE_SUPPORT=1 + +sed -i $((`sed -n '$=' arch/configure.defaults`-2)),$((`sed -n '$=' arch/configure.defaults`))d arch/configure.defaults + +cat >> arch/configure.defaults <&1 | tee -a compile.log + + + +[CLEAN] + +[RUN] +run = +binary = +nodes = 1 + diff --git a/templates/wrf/4.2/data.wrf.arm.cpu.config b/templates/wrf/4.2/data.wrf.arm.cpu.config new file mode 100644 index 0000000000000000000000000000000000000000..03b096e10bb5e022ce736190a074d4d0d10da5af --- /dev/null +++ b/templates/wrf/4.2/data.wrf.arm.cpu.config @@ -0,0 +1,117 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +wrf/4.2 https://github.com/wrf-model/WRF/archive/refs/tags/v4.2.tar.gz wrf-4.2.tar.gz + +[DEPENDENCY] +module purge +module use ./software/modulefiles +./jarvis -install kgcc/9.3.1 com +module load kgcc9/9.3.1 +export CC=gcc CXX=g++ FC=gfortran + +./jarvis -install hmpi/1.1.1 gcc +module load hmpi1/1.1.1 +export CC=mpicc CXX=mpicxx FC=mpifort +./jarvis -install hdf5/1.10.1 gcc+mpi +./jarvis -install package/pnetcdf/1.11.2 gcc+mpi +./jarvis -install package/netcdf/4.7.0 gcc+mpi +./jarvis -install optimized-routines/20.02 gcc+mpi + + +[ENV] +module purge +module use ./software/modulefiles +module load kgcc9/9.3.1 +module load hmpi1/1.1.1 +export CC=mpicc CXX=mpicxx FC=mpifort +module load pnetcdf/1.11.2 +module load netcdf/4.7.0 +module load optimized-routines/20.02 + +[APP] +app_name = WRF +build_dir = ${JARVIS_ROOT} +binary_dir = ${JARVIS_ROOT}/software/apps/bisheng2/hmpi1/wrf +case_dir = ${JARVIS_ROOT}/software/apps/bisheng2/hmpi1/wrf + +[BUILD] +cd ${JARVIS_TMP} +rm -rf WRF-4.2 +tar -zxvf $JARVIS_DOWNLOAD/wrf-4.2.tar.gz +cd WRF-4.2 + +export HDF5=`which h5diff` +export HDF5=${HDF5%/*/*} +export NETCDF=`nc-config --prefix` +export PNETCDF=`pnetcdf-config --prefix` + + +export CPPFLAGS="-I$HDF5/include -I$PNETCDF/include -I$NETCDF/include" +export LDFLAGS="-L$HDF5/lib -L$PNETCDF/lib -L$NETCDF/lib -lnetcdf -lnetcdff -lpnetcdf -lhdf5_hl -lhdf5 -lz" +export WRFIO_NCD_LARGE_FILE_SUPPORT=1 + +sed -i $((`sed -n '$=' arch/configure.defaults`-2)),$((`sed -n '$=' arch/configure.defaults`))d arch/configure.defaults + +mathlib_path=$JARVIS_ROOT/software/compiler/kgcc/9.3.1/lib64/libhpc +cat >> arch/configure.defaults <&1 | tee -a compile.log + + + +[CLEAN] + +[RUN] +run = +binary = +nodes = 1 +