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..8a4a50ed2bb12a6ed6fba0cf6352605a9ca3497d 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 "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/hpcrunner/HPCKit/latest/kml/bisheng/lib -lkm" arch/configure.defaults - +sed -i "2193c\LDFLAGS_LOCAL = -fopenmp -L${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/kml/bisheng/lib/noarch -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 $(nproc) ./wrf.exe binary = nodes = 1 +