diff --git a/package/hdf5/1.12.0/clang/install.sh b/package/hdf5/1.12.0/clang/install.sh index 448058dc7552c5f01d444c7c74f6270cbd135ec1..aa117ec8fade0ef72c6e35ce7c6b0d474008d6eb 100755 --- a/package/hdf5/1.12.0/clang/install.sh +++ b/package/hdf5/1.12.0/clang/install.sh @@ -1,6 +1,7 @@ #!/bin/bash set -x set -e +. $CHECK_ROOT && yum -y install zlib zlib-devel hdf5_big_version='1.12' hdf5_version="${hdf5_big_version}.0" . ${DOWNLOAD_TOOL} -u https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-${hdf5_big_version}/hdf5-${hdf5_version}/src/hdf5-${hdf5_version}.tar.gz @@ -11,8 +12,5 @@ cd hdf5-${hdf5_version} export CC=mpicc CXX=mpicxx FC=mpif90 F77=mpif90 ./configure --prefix=$1 --enable-fortran --enable-static=yes --with-zlib=/usr/lib --enable-parallel --enable-shared CFLAGS="-O3 -fPIC -Wno-incompatible-pointer-types-discards-qualifiers -Wno-non-literal-null-conversion" FCFLAGS="-O3 -fPIC" LDFLAGS="-Wl,--build-id" sed -i '11835c wl="-Wl,"' libtool - -#./configure --prefix=$1 --with-zlib=/usr/lib --enable-fortran --enable-static=yes --enable-parallel --enable-shared CFLAGS="-O3 -fPIC -Wno-incompatible-pointer-types-discards-qualifiers -Wno-non-literal-null-conversion" FCFLAGS="-O3 -fPIC" LDFLAGS="-Wl,--build-id" -#sed -i '11835c wl="-Wl,"' libtool -make -j +make -j16 make install diff --git a/package/pio/2.5.10/install.sh b/package/pio/2.5.10/install.sh index 6e803e7c6089962e439d9ed77318436f81621436..6fa0faf3b70e7a70ab1d1e2638333e50a1687d9c 100644 --- a/package/pio/2.5.10/install.sh +++ b/package/pio/2.5.10/install.sh @@ -7,10 +7,14 @@ cd ${JARVIS_TMP} rm -rf ParallelIO-pio${pio_ver} tar -xvf ${JARVIS_DOWNLOAD}/pio${pio_ver}.tar.gz cd ParallelIO-pio${pio_ver} + +export CPPFLAGS="-I$PNETCDF_PATH/include -I$NETCDF_CLANG_PATH/include -I$HDF5_CLANG_PATH/include" +export LDFLAGS="-L$PNETCDF_PATH/lib -L$NETCDF_CLANG_PATH/lib" export CC=mpicc FC=mpifort export CFLAGS="-g -Wall ${CFLAGS}" #cmake -DNETCDF_C_PATH=${NETCDF_CLANG_PATH} -DNETCDF_FORTRAN_PATH=${NETCDF_CLANG_PATH} -DPNETCDF_PATH=${PNETCDF_PATH} -DHDF5_PATH=${HDF5_PATH}-DCMAKE_INSTALL_PREFIX=$1 .. autoreconf --install autoconf ./configure --enable-fortran --prefix=$1 +sed -i "s/lt_prog_compiler_wl_FC=''/lt_prog_compiler_wl_FC='-Wl,'/g" config.status make install diff --git a/src/toolService.py b/src/toolService.py index 5d5db5f7297c70440c12f86e4c706a24c467fb83..a585cd82eac2637979d153482e250003ec64fefb 100644 --- a/src/toolService.py +++ b/src/toolService.py @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- import time import os -import requests + class ToolService: def __init__(self): @@ -40,6 +40,7 @@ class ToolService: self.write_file(path, content) def check_url_isvalid(self,url): + import requests try: response = requests.get(url, stream=True) if response.status_code == 200: diff --git a/templates/hpl/hpl.arm.config b/templates/hpl/hpl.arm.config index e0fb42fa2d8d433b4532907ae82e0b8f2b983561..9cbf2edbc50c8c318ccb4a5b76b98f1ce08b1e8c 100644 --- a/templates/hpl/hpl.arm.config +++ b/templates/hpl/hpl.arm.config @@ -54,7 +54,7 @@ LAlib = $(LAdir)/lib/libopenblas.a F2CDEFS = -DAdd__ -DF77_INTEGER=int -DStringSunStyle HPL_INCLUDES = -I$(INCdir) -I$(INCdir)/$(ARCH) $(LAinc) $(MPinc) HPL_LIBS = $(HPLlib) $(LAlib) $(MPlib) -HPL_OPTS = +HPL_OPTS = -DHPL_DETAILED_TIMING -DHPL_PROGRESS_REPORT HPL_DEFS = $(F2CDEFS) $(HPL_OPTS) $(HPL_INCLUDES) CC = mpicc CCNOOPT = $(HPL_DEFS) diff --git a/templates/hpl/hpl.arm.kml.config b/templates/hpl/hpl.arm.kml.config new file mode 100644 index 0000000000000000000000000000000000000000..29843b89de0a93171d4270719eca81d7a366e3e7 --- /dev/null +++ b/templates/hpl/hpl.arm.kml.config @@ -0,0 +1,140 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +hpl/2.3 https://netlib.org/benchmark/hpl/hpl-2.3.tar.gz + +[DEPENDENCY] +module purge +module use ./software/modulefiles +./jarvis -install bisheng/2.5.0 com +module load bisheng/2.5.0 +export CC=`which clang` +export CXX=`which clang++` +export FC=`which flang` +./jarvis -install kml/1.6.0/gcc any +./jarvis -install hmpi/1.2.0 clang +if [ ! -d "hpl-2.3" ]; then + tar -xzvf $JARVIS_DOWNLOAD/hpl-2.3.tar.gz +fi + +[ENV] +source ./init.sh +module purge +module use ./software/modulefiles +module load bisheng/2.5.0 +module load hmpi/1.2.0 +module load kml-gcc/1.6.0 +export LD_LIBRARY_PATH=${KML_GCC_PATH}/lib/kblas/omp:$LD_LIBRARY_PATH +export HPL_HOME=$JARVIS_ROOT/hpl-2.3 + +[APP] +app_name = hpl +build_dir = $HPL_HOME +binary_dir = $HPL_HOME/bin/aarch64 +case_dir = $HPL_HOME/bin/aarch64 + +[BUILD] +cat << \EOF > Make.aarch64 +SHELL = /bin/sh +CD = cd +CP = cp +LN_S = ln -s +MKDIR = mkdir +RM = /bin/rm -f +TOUCH = touch +ARCH = aarch64 +TOPdir = $(HPL_HOME) +INCdir = $(TOPdir)/include +BINdir = $(TOPdir)/bin/$(ARCH) +LIBdir = $(TOPdir)/lib/$(ARCH) +HPLlib = $(LIBdir)/libhpl.a +LAdir = $(KML_GCC_PATH) +LAinc = +LAlib = $(LAdir)/lib/kblas/omp/libkblas.so +F2CDEFS = -DAdd__ -DF77_INTEGER=int -DStringSunStyle +HPL_INCLUDES = -I$(INCdir) -I$(INCdir)/$(ARCH) $(LAinc) $(MPinc) +HPL_LIBS = $(HPLlib) $(LAlib) $(MPlib) +HPL_OPTS = -DHPL_DETAILED_TIMING -DHPL_PROGRESS_REPORT +HPL_DEFS = $(F2CDEFS) $(HPL_OPTS) $(HPL_INCLUDES) +CC = mpicc +CCNOOPT = $(HPL_DEFS) +CCFLAGS = $(HPL_DEFS) -fomit-frame-pointer -O3 -fopenmp -funroll-loops -W -Wall +LINKER = $(CC) +LINKFLAGS = $(CCFLAGS) +ARCHIVER = ar +ARFLAGS = r +RANLIB = echo +EOF +make arch=aarch64 -j +if [ ! -e ./bin/aarch64/xhpl ]; then + echo "Build failed" + exit 1 +fi +echo "check if SVE exists" +objdump -d bin/aarch64/xhpl | grep z0 +cd bin/aarch64 +#rm -rf hpl.* +#modify HPL.dat +cat << \EOF > HPL.dat +HPLinpack benchmark input file +Innovative Computing Laboratory, University of Tennessee +HPL.out output file name (if any) +6 device out (6=stdout,7=stderr,file) +1 # of problems sizes (N) +100000 Ns +1 # of NBs +256 NBs +1 PMAP process mapping (0=Row-,1=Column-major) +1 # of process grids (P x Q) +20 Ps +20 Qs +16.0 threshold +1 # of panel fact +2 1 0 PFACTs (0=left, 1=Crout, 2=Right) +1 # of recursive stopping criterium +2 NBMINs (>= 1) +1 # of panels in recursion +2 NDIVs +1 # of recursive panel fact. +1 0 2 RFACTs (0=left, 1=Crout, 2=Right) +1 # of broadcast +1 BCASTs (0=1rg,1=1rM,2=2rg,3=2rM,4=Lng,5=LnM) +1 # of lookahead depth +0 DEPTHs (>=0) +0 SWAP (0=bin-exch,1=long,2=mix) +1 swapping threshold +1 L1 in (0=transposed,1=no-transposed) form +1 U in (0=transposed,1=no-transposed) form +0 Equilibration (0=no,1=yes) +8 memory alignment in double (> 0) +EOF + +[CLEAN] +make arch=aarch64 clean +rm -rf bin/aarch64 + +[RUN] +run = mpirun --allow-run-as-root -np 32 +binary = xhpl +nodes = 1 + +[JOB] +#!/bin/sh +#DSUB -n hpl_test +#DSUB --job_type cosched:hmpi +#DSUB -A root.default +#DSUB -q root.default +#DSUB -N 25 +#DSUB -R cpu=128 +#DSUB -oo hpl.%J.out +#DSUB -eo hpl.%J.err +echo "mpi hostfile generated." +echo "-----------------------" +cat ${CCS_HOST_FILE} +echo "-----------------------" +date +EXEC_CMD="mpirun $CCS_MPI_OPTIONS --map-by ppr:16:node:pe=8 -x OMP_NUM_THREADS=8 -np 400 ./xhpl" +#EXEC_CMD="mpirun $CCS_MPI_OPTIONS -x OMP_NUM_THREADS=1 -np 3200 ./xhpl" +$EXEC_CMD +date diff --git a/templates/vasp/5.4.4/data.vasp.arm_clang.cpu.config b/templates/vasp/5.4.4/data.vasp.arm_clang.cpu.config index 768cd063e091b8597dc1065285df9cf732925e5c..4c1721be3cef3a8dad0915e2fcbb3e8490677ec1 100644 --- a/templates/vasp/5.4.4/data.vasp.arm_clang.cpu.config +++ b/templates/vasp/5.4.4/data.vasp.arm_clang.cpu.config @@ -12,7 +12,7 @@ export CC=clang CXX=clang++ FC=flang module load hmpi/1.1.1 ./jarvis -install openblas/0.3.18 clang module load openblas/0.3.18 -export LAPACK_PATH=$JARVIS_LIBS/bisheng2.1.0/hmpi1.1.1/openblas/0.3.18/lib +export LAPACK_PATH=${OPENBLAS_PATH}/lib ./jarvis -install scalapack/2.1.0/clang clang+mpi module load scalapack-clang/2.1.0 ./jarvis -install fftw/3.3.8 clang+mpi diff --git a/templates/vasp/5.4.4/makefile.include b/templates/vasp/5.4.4/makefile.include index 19a8d95c48bfec44a3118e98fb2eb423ada21655..4b388915c0b58afc87365b85c1dd80c162e49bdb 100644 --- a/templates/vasp/5.4.4/makefile.include +++ b/templates/vasp/5.4.4/makefile.include @@ -16,8 +16,8 @@ FFLAGS = -w OFLAG = -O1 -ffp-contract=fast -ffpe-trap=invalid,zero,overflow,underflow OFLAG_IN = $(OFLAG) DEBUG = -O0 -LLIBS = -L${JARVIS_LIBS}/bisheng2/hmpi1/scalapack-lapack-bisheng/2.1.0/lib -lscalapack -L${JARVIS_LIBS}/software/libs/bisheng2/openblas/0.3.18/lib -lopenblas -FFTW ?= ${JARVIS_LIBS}/bisheng2/hmpi1/fftw/3.3.8 +LLIBS = -L${SCALAPACK_CLANG_PATH}/lib -lscalapack -L${OPENBLAS_PATH}/lib -lopenblas +FFTW ?= ${FFTW_PATH} LLIBS += -L$(FFTW)/lib -lfftw3 INCS = -I$(FFTW)/include OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o diff --git a/templates/vasp/6.1.0/data.vasp.x86.gpu.config b/templates/vasp/6.1.0/data.vasp.x86.gpu.config index d7e6e56a3a2fb60b6972b59ad0f03dedbfa8264e..de15d7b5ba62d9eba91ea03b016880fd0c8c7264 100644 --- a/templates/vasp/6.1.0/data.vasp.x86.gpu.config +++ b/templates/vasp/6.1.0/data.vasp.x86.gpu.config @@ -3,16 +3,16 @@ [ENV] # add gcc/mpi -export LD_LIBRARY_PATH=/home/HPCRunner/software/arm/gcc/fftw-3.3.8/FFTW/lib:$LD_LIBRARY_PATH +export LD_LIBRARY_PATH=./software/arm/gcc/fftw-3.3.8/FFTW/lib:$LD_LIBRARY_PATH module use /opt/nvidia/hpc_sdk/modulefiles/ module load nvhpc/21.9 source /opt/intel/oneapi/setvars.sh [APP] app_name = VASP -build_dir = /home/HPCRunner/vasp.6.1.0/ -binary_dir = /home/HPCRunner/vasp.6.1.0/bin/ -case_dir = /home/HPCRunner/VASP-std-GPU/ +build_dir = ./vasp.6.1.0/ +binary_dir = ./vasp.6.1.0/bin/ +case_dir = ./workloads/VASP-std-GPU/ [BUILD] make std @@ -26,6 +26,6 @@ binary = vasp_std nodes = 1 [BATCH] -mpirun --allow-run-as-root -n 4 /home/HPCRunner/vasp.6.1.0/bin/vasp_std >> vasp.log -mpirun --allow-run-as-root -n 2 /home/HPCRunner/vasp.6.1.0/bin/vasp_std >> vasp.log -mpirun --allow-run-as-root -n 1 /home/HPCRunner/vasp.6.1.0/bin/vasp_std >> vasp.log \ No newline at end of file +mpirun --allow-run-as-root -n 4 ./vasp.6.1.0/bin/vasp_std >> vasp.log +mpirun --allow-run-as-root -n 2 ./vasp.6.1.0/bin/vasp_std >> vasp.log +mpirun --allow-run-as-root -n 1 ./vasp.6.1.0/bin/vasp_std >> vasp.log \ No newline at end of file