diff --git a/templates/wrf/4.6.0/data.wrf.arm.cpu.config b/templates/wrf/4.6.0/data.wrf.arm.cpu.config index 06c04d13077331bf2889266bda6ddc6ea6a11a79..92a3e1d81da209aed03c7da6b224fd7f45f778ef 100644 --- a/templates/wrf/4.6.0/data.wrf.arm.cpu.config +++ b/templates/wrf/4.6.0/data.wrf.arm.cpu.config @@ -3,43 +3,50 @@ [DOWNLOAD] wrf/4.6.0 https://github.com/wrf-model/WRF/releases/download/v4.6.0/v4.6.0.tar.gz WRFV4.6.0.tar.gz +case/conus12km https://www2.mmm.ucar.edu/wrf/src/conus12km.tar.gz [DEPENDENCY] set -e set -x -module purge -source /hpcrunner/HPCKit.env -export CC=`which mpicc` -export CXX=`which mpicxx` -export FC=`which mpifort` - -# basic system components -wget https://github.com/Unidata/netcdf-fortran/archive/refs/tags/v4.5.4.tar.gz -O /hpcrunner/downloads/netcdf-fortran-4.5.4.tar.gz --no-check-certificate -wget https://github.com/Unidata/netcdf-c/archive/refs/tags/v4.8.1.tar.gz/ -O /hpcrunner/downloads/netcdf-c-4.8.1.tar.gz --no-check-certificate - +yum install -y csh +module purge +./jarvis -install hpckit/${HPCKIT_VERSION} any +module use ./software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule +module load bisheng/hmpi${HPCKIT_VERSION}/release bisheng/kml${HPCKIT_VERSION}/kml export CC=clang CXX=clang++ FC=flang export CFLAGS="-Wno-implicit-function-declaration -Wno-incompatible-function-pointer-types" ./jarvis -install jasper/1.900.2 bisheng -module use /hpcrunner/software/moduledeps -module load bisheng4.0.0/jasper/1.900.2 +module use ./software/moduledeps/bisheng${BISHENG_VERSION}/ +module load jasper/1.900.2 export CC=mpicc CXX=mpicxx FC=mpifort ./jarvis -install hdf5/1.12.0/clang bisheng+mpi -module load bisheng4.0.0-hmpi2.4.1/hdf5-clang/1.12.0 +module use ./software/moduledeps/bisheng${BISHENG_VERSION}-hmpi${HPCKIT_VERSION} +module load hdf5-clang/1.12.0 ./jarvis -install pnetcdf/1.12.1 bisheng+mpi -module load bisheng4.0.0-hmpi2.4.1/pnetcdf/1.12.1 +module load pnetcdf/1.12.1 ./jarvis -install netcdf/4.8.1/clang bisheng+mpi -module load bisheng4.0.0-hmpi2.4.1/netcdf-clang/4.8.1 - +module load netcdf-clang/4.8.1 +rm -rf WRFV4.6.0 tar -xvf ${JARVIS_DOWNLOAD}/WRFV4.6.0.tar.gz - +rm -rf conus12km +tar -vzxf ${JARVIS_DOWNLOAD}/conus12km.tar.gz [ENV] #!/bin/bash -module purge -source /hpcrunner/HPCKit.env - -module use /hpcrunner/software/moduledeps -module load bisheng4.0.0/jasper/1.900.2 bisheng4.0.0-hmpi2.4.1/hdf5-clang/1.12.0 bisheng4.0.0-hmpi2.4.1/pnetcdf/1.12.1 bisheng4.0.0-hmpi2.4.1/netcdf-clang/4.8.1 +module purge +module use ./software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule +module load bisheng/hmpi${HPCKIT_VERSION}/release bisheng/kml${HPCKIT_VERSION}/kml +export CC=clang CXX=clang++ FC=flang +export CFLAGS="-Wno-implicit-function-declaration -Wno-incompatible-function-pointer-types" +module use ./software/moduledeps/bisheng${BISHENG_VERSION} +module load jasper/1.900.2 +export CC=mpicc CXX=mpicxx FC=mpifort +module use ./software/moduledeps/bisheng${BISHENG_VERSION}-hmpi${HPCKIT_VERSION} +module load hdf5-clang/1.12.0 +module load pnetcdf/1.12.1 +module load netcdf-clang/4.8.1 export WRFIO_NCD_LARGE_FILE_SUPPORT=1 export NETCDF=${NETCDF_CLANG_PATH} @@ -52,18 +59,18 @@ export JASPREINC=${JASPER_PATH}/include 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 CC=mpicc CXX=mpicxx FC=mpif90 F77=mpif90 F90=mpif90 -export WRF_DIR=/hpcrunner/WRFV4.6.0 -export MPI_LIB="-L${HMPI_PATH}/lib -lmpi -lomp" +export WRF_DIR=${JARVIS_ROOT}/WRFV4.6.0 +export MPI_LIB="-L${JARVIS_ROOT}/software/utils/hpckit/25.1.0/HPCKit/25.1.0/hmpi/bisheng/release/xucg/lib -lmpi -lomp" export INCLUDE=${WRF_DIR}/include:$INCLUDE -export KML_LIB=${KML_BISHENG_PATH}/lib +export KML_LIB=${JARVIS_ROOT}/software/utils/hpckit/25.1.0/HPCKit/25.1.0/kml/bisheng/lib export CASE_DIR=${WRF_DIR}/case/conus12km -export PATH=/hpcrunner/WRFV4.6.0/main:/hpcrunner/WRFV4.6.0/external/io_netcdf:$PATH +export PATH=${JARVIS_ROOT}/WRFV4.6.0/main:${JARVIS_ROOT}/WRFV4.6.0/external/io_netcdf:$PATH [APP] app_name = WRF build_dir = ${WRF_DIR} -binary_dir = ${WRF_DIR}/run -case_dir = ${CASE_DIR} +binary_dir = +case_dir = $JARVIS_ROOT/conus12km [BUILD] set -x @@ -73,14 +80,21 @@ sed -i "2181c\SFC = flang" arch/configure.defaults sed -i "2182c\SCC = clang" arch/configure.defaults sed -i "2183c\CCOMP = clang" arch/configure.defaults echo -e "12\n1" | ./configure - ./compile -j 16 em_real 2>&1 | tee -a compile.log +cd $JARVIS_ROOT +rm -rf conus12km +tar -zxvf $JARVIS_DOWNLOAD/conus12km.tar.gz +rsync -av --exclude='namelist.input' $JARVIS_ROOT/WRFV4.6.0/run/* conus12km/ +cd conus12km +ln -sf $JARVIS_ROOT/WRFV4.6.0/main/*.exe ./ + [CLEAN] ./clean -a [RUN] -run = mpirun --allow-run-as-root -n 32 -x OMP_NUM_THREADS=1 -bind-to core ${WRF_DIR}/run/wrf.exe +run = time mpirun --allow-run-as-root -np 16 ./wrf.exe binary = nodes = 1 + diff --git a/templates/wrf/4.6.0/data.wrf.arm.cpu.sve.config b/templates/wrf/4.6.0/data.wrf.arm.cpu.sve.config index ab8b12bc8f4482815677f864e652f5e4c5a9fa41..b6152b6d4b9432c5f7d02e565d6b5dde446c583c 100644 --- a/templates/wrf/4.6.0/data.wrf.arm.cpu.sve.config +++ b/templates/wrf/4.6.0/data.wrf.arm.cpu.sve.config @@ -3,43 +3,48 @@ [DOWNLOAD] wrf/4.6.0 https://github.com/wrf-model/WRF/releases/download/v4.6.0/v4.6.0.tar.gz WRFV4.6.0.tar.gz +case/conus12km https://www2.mmm.ucar.edu/wrf/src/conus12km.tar.gz [DEPENDENCY] set -e set -x -module purge -source $JARVIS_ROOT/HPCKit.env -export CC=`which mpicc` -export CXX=`which mpicxx` -export FC=`which mpifort` - -# basic system components -wget https://github.com/Unidata/netcdf-fortran/archive/refs/tags/v4.5.4.tar.gz -O /hpcrunner/downloads/netcdf-fortran-4.5.4.tar.gz --no-check-certificate -wget https://github.com/Unidata/netcdf-c/archive/refs/tags/v4.8.1.tar.gz/ -O /hpcrunner/downloads/netcdf-c-4.8.1.tar.gz --no-check-certificate +yum install -y csh +module purge +./jarvis -install hpckit/${HPCKIT_VERSION} any +module use ./software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule +module load bisheng/hmpi${HPCKIT_VERSION}/release bisheng/kml${HPCKIT_VERSION}/kml export CC=clang CXX=clang++ FC=flang export CFLAGS="-Wno-implicit-function-declaration -Wno-incompatible-function-pointer-types" ./jarvis -install jasper/1.900.2 bisheng -module use $JARVIS_ROOT/software/moduledeps -module load bisheng4.0.0/jasper/1.900.2 +module use ./software/moduledeps/bisheng${BISHENG_VERSION}/ +module load jasper/1.900.2 export CC=mpicc CXX=mpicxx FC=mpifort ./jarvis -install hdf5/1.12.0/clang bisheng+mpi -module load bisheng4.0.0-hmpi2.4.1/hdf5-clang/1.12.0 +module use ./software/moduledeps/bisheng${BISHENG_VERSION}-hmpi${HPCKIT_VERSION} +module load hdf5-clang/1.12.0 ./jarvis -install pnetcdf/1.12.1 bisheng+mpi -module load bisheng4.0.0-hmpi2.4.1/pnetcdf/1.12.1 +module load pnetcdf/1.12.1 ./jarvis -install netcdf/4.8.1/clang bisheng+mpi -module load bisheng4.0.0-hmpi2.4.1/netcdf-clang/4.8.1 - +module load netcdf-clang/4.8.1 +rm -rf WRFV4.6.0 tar -xvf ${JARVIS_DOWNLOAD}/WRFV4.6.0.tar.gz - [ENV] #!/bin/bash -module purge -source /hpcrunner/HPCKit.env - -module use /hpcrunner/software/moduledeps -module load bisheng4.0.0/jasper/1.900.2 bisheng4.0.0-hmpi2.4.1/hdf5-clang/1.12.0 bisheng4.0.0-hmpi2.4.1/pnetcdf/1.12.1 bisheng4.0.0-hmpi2.4.1/netcdf-clang/4.8.1 +module purge +module use ./software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule +module load bisheng/hmpi${HPCKIT_VERSION}/release bisheng/kml${HPCKIT_VERSION}/kml +export CFLAGS="-Wno-implicit-function-declaration -Wno-incompatible-function-pointer-types" +module use ./software/moduledeps/bisheng${BISHENG_VERSION}/ +module load jasper/1.900.2 +export CC=mpicc CXX=mpicxx FC=mpifort +module use ./software/moduledeps/bisheng${BISHENG_VERSION}-hmpi${HPCKIT_VERSION} +module load hdf5-clang/1.12.0 +module load pnetcdf/1.12.1 +module load netcdf-clang/4.8.1 export WRFIO_NCD_LARGE_FILE_SUPPORT=1 export NETCDF=${NETCDF_CLANG_PATH} @@ -52,38 +57,45 @@ export JASPREINC=${JASPER_PATH}/include 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 CC=mpicc CXX=mpicxx FC=mpif90 F77=mpif90 F90=mpif90 -export WRF_DIR=/hpcrunner/WRFV4.6.0 -export MPI_LIB="-L${HMPI_PATH}/lib -lmpi -lomp" +export WRF_DIR=${JARVIS_ROOT}/WRFV4.6.0 +export MPI_LIB="-L${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/hmpi/bisheng/release/xucg/lib -lmpi -lomp" export INCLUDE=${WRF_DIR}/include:$INCLUDE +export KML_LIB=${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/kml/bisheng/lib export CASE_DIR=${WRF_DIR}/case/conus12km -export PATH=/hpcrunner/WRFV4.6.0/main:/hpcrunner/WRFV4.6.0/external/io_netcdf:$PATH +export PATH=${JARVIS_ROOT}/WRFV4.6.0/main:${JARVIS_ROOT}/WRFV4.6.0/external/io_netcdf:$PATH [APP] app_name = WRF build_dir = ${WRF_DIR} -binary_dir = ${WRF_DIR}/run -case_dir = ${CASE_DIR} +binary_dir = +case_dir = $JARVIS_ROOT/conus12km [BUILD] set -x cd ${JARVIS_ROOT}/WRFV4.6.0 sed -i "2181c\SFC = flang" arch/configure.defaults -sed -i "2182c\SCC = clang" arch/configure.defaults +sed -i "2182c\SCC = clang -fGNU-compatibility" arch/configure.defaults sed -i "2183c\CCOMP = clang" arch/configure.defaults -sed -i "2192c\CFLAGS_LOCAL = -w -O3 -c -Wno-implicit-function-declaration -Wno-int-conversion -Wno-implicit-int -mtune=native -mcpu=linxicore9100 -mllvm -force-customized-pipeline=true" arch/configure.defaults -sed -i "2194c\FCOPTIM = -Ofast -mcpu=native -funroll-loops -mtune=native -mcpu=linxicore9100 -mllvm -force-customized-pipeline=true" arch/configure.defaults -sed -i "2193c\LDFLAGS_LOCAL = -fopenmp -L/hpcrunner/HPCKit/latest/kml/bisheng/lib -lkm" arch/configure.defaults - +sed -i "2192c\CFLAGS_LOCAL = -w -O3 -c -fGNU-compatibility" arch/configure.defaults +#sed -i "2194c\FCOPTIM = -Ofast -mcpu=native -funroll-loops -mtune=native -mcpu=linxicore9100 -mllvm -force-customized-pipeline=true" arch/configure.defaults +#sed -i "2193c\LDFLAGS_LOCAL = -fopenmp -L${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/kml/bisheng/lib -lkm" arch/configure.defaults echo -e "12\n1" | ./configure - ./compile -j 16 em_real 2>&1 | tee -a compile.log +cd $JARVIS_ROOT +rm -rf conus12km +tar -zxvf $JARVIS_DOWNLOAD/conus12km.tar.gz +rsync -av --exclude='namelist.input' $JARVIS_ROOT/WRFV4.6.0/run/* conus12km/ +cd conus12km +ln -sf $JARVIS_ROOT/WRFV4.6.0/main/*.exe ./ + [CLEAN] ./clean -a [RUN] -run = mpirun --allow-run-as-root -n 32 -x OMP_NUM_THREADS=1 -bind-to core ${WRF_DIR}/run/wrf.exe +run = time mpirun --allow-run-as-root -np 16 ./wrf.exe binary = nodes = 1 + diff --git a/templates/wrf/4.6.0/data.wrf.cpu.sve.config b/templates/wrf/4.6.0/data.wrf.cpu.sve.config index 785f3ff4fc01207cb7a5e884d2307a76b589abc3..688d910db73fc40abbe7448f262d9e89eb60fd9f 100644 --- a/templates/wrf/4.6.0/data.wrf.cpu.sve.config +++ b/templates/wrf/4.6.0/data.wrf.cpu.sve.config @@ -10,16 +10,16 @@ set -e set -x yum install csh -y module purge -./jarvis -install hpckit/${HPCKIT_VERSION} com -module use ./software/compiler/hpckit/${HPCKIT_VERSION}/HPCKit/latest/modulefiles -module load bisheng/compiler4.2.0/bishengmodule -module load bisheng/hmpi25.0.0/hmpi +./jarvis -install hpckit/${HPCKIT_VERSION} any +module use ./software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule +module load bisheng/hmpi${HPCKIT_VERSION}/release bisheng/kml${HPCKIT_VERSION}/kml export CC="clang -Wno-implicit-function-declaration -Wno-incompatible-function-pointer-types" CXX=clang++ FC=flang ./jarvis -install jasper/1.900.2 clang -module use ./software/moduledeps/bisheng4.2.0 +module use ./software/moduledeps/bisheng${BISHENG_VERSION} module load jasper/1.900.2 export CC=mpicc CXX=mpicxx FC=mpifort -module use ./software/moduledeps/bisheng4.2.0-hmpi25.0.0 +module use ./software/moduledeps/bisheng${BISHENG_VERSION}-hmpi${HPCKIT_VERSION} ./jarvis -install hdf5/1.12.0/clang clang+mpi module load hdf5-clang/1.12.0 ./jarvis -install pnetcdf/1.12.1 clang+mpi @@ -32,14 +32,16 @@ tar -zxvf $JARVIS_DOWNLOAD/v4.6.0.tar.gz [ENV] #!/bin/bash module purge -module use ${JARVIS_ROOT}//software/compiler/hpckit/${HPCKIT_VERSION}/HPCKit/latest/modulefiles -module load bisheng/compiler4.2.0/bishengmodule -module use ${JARVIS_ROOT}/software/moduledeps/bisheng4.2.0 -module use ${JARVIS_ROOT}/software/moduledeps/bisheng4.2.0-hmpi25.0.0 +module use ./software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles +module load bisheng/compiler${BISHENG_VERSION}/bishengmodule +module load bisheng/hmpi${HPCKIT_VERSION}/release bisheng/kml${HPCKIT_VERSION}/kml +module use ./software/moduledeps/bisheng${BISHENG_VERSION} module load jasper/1.900.2 -module load bisheng/hmpi25.0.0/hmpi -module load hdf5-clang/1.12.0 pnetcdf/1.12.1 netcdf-clang/4.7.4 -module load bisheng/kml25.0.0/kml +export CC=mpicc CXX=mpicxx FC=mpifort +module use ./software/moduledeps/bisheng${BISHENG_VERSION}-hmpi${HPCKIT_VERSION} +module load hdf5-clang/1.12.0 +module load pnetcdf/1.12.1 +module load netcdf-clang/4.7.4 export WRFIO_NCD_LARGE_FILE_SUPPORT=1 export NETCDF=$NETCDF_CLANG_PATH export HDF5=$HDF5_CLANG_PATH @@ -47,14 +49,14 @@ export PHDF5=$HDF5 export PNETCDF=$PNETCDF_PATH export JASPER=$JASPER_PATH export JASPERLIB=$JASPER_PATH/lib -export JASPERINC=$$JASPER_PATH/include +export JASPERINC=$JASPER_PATH/include 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 CC=mpicc CXX=mpicxx FC=mpif90 F77=mpif90 F90=mpif90 export WRF_DIR=$JARVIS_ROOT/WRF-4.6 -export MPI_LIB="-L$JARVIS_COMPILER/hpckit/${HPCKIT_VERSION}/HPCKit/latest/hmpi/bisheng/hmpi/lib -lmpi -lomp" +export MPI_LIB="-L${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/hmpi/bisheng/release/xucg/lib -lmpi -lomp" export INCLUDE=$WRF_DIR/include:$INCLUDE -export KML_LIB=$JARVIS_COMPILER/hpckit/${HPCKIT_VERSION}/HPCKit/latest/kml/bisheng/lib/noarch +export KML_LIB=${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/kml/bisheng/lib/noarch [APP] app_name = WRF