diff --git a/container/openeuler-gcc-9.3.0-mfem.def b/container/openeuler-bisheng2-hmpi1-mfem-4.4.def similarity index 62% rename from container/openeuler-gcc-9.3.0-mfem.def rename to container/openeuler-bisheng2-hmpi1-mfem-4.4.def index b45e03fc6c33f5ed6b73757cf841da0097691ca4..74457ec5f30623784013465be712ede32b43c918 100644 --- a/container/openeuler-gcc-9.3.0-mfem.def +++ b/container/openeuler-bisheng2-hmpi1-mfem-4.4.def @@ -8,11 +8,7 @@ From: openeuler/openeuler %post # Install the necessary development environment - yum install -y environment-modules git dmidecode pciutils wget vim - # Install base gcc - yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran - # install network package - yum install -y tcsh tcl lsof tk bc + yum install -y environment-modules git wget unzip make flex tar source /etc/profile || true git config --global http.sslVerify false git clone https://gitee.com/openeuler/hpcrunner @@ -20,7 +16,7 @@ From: openeuler/openeuler source ./init.sh ./jarvis -i # Switch config - ./jarvis -use templates/mfem/4.4/data.mfem.amd.cpu.config + ./jarvis -use templates/mfem/4.4/data.mfem.arm.cpu.config # install dependency ./jarvis -dp # build hpc @@ -28,7 +24,7 @@ From: openeuler/openeuler # run hpc ./jarvis -r # clean tmp directory - #rm -rf downloads tmp + rm -rf downloads %labels Author blackgaryc \ No newline at end of file diff --git a/package/hypre/2.25.0/install.sh b/package/hypre/2.25.0/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..01a6e16797f3817e6640da4ea3f1394f73767347 --- /dev/null +++ b/package/hypre/2.25.0/install.sh @@ -0,0 +1,8 @@ +. ${DOWNLOAD_TOOL} -u https://github.com/hypre-space/hypre/archive/refs/tags/v2.25.0.tar.gz +cd ${JARVIS_TMP} +rm -rf hypre-2.25.0 +tar -xf ${JARVIS_DOWNLOAD}/v2.25.0.tar.gz +cd hypre-2.25.0/src +./configure --disable-fortran --prefix=$1 +make -j +make install diff --git a/package/metis/4.0.3/install.sh b/package/metis/4.0.3/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..97621ff9e6991a18c180699cec4d692ba064c1bc --- /dev/null +++ b/package/metis/4.0.3/install.sh @@ -0,0 +1,6 @@ +. ${DOWNLOAD_TOOL} -u http://coin-or-tools.github.io/ThirdParty-Metis/metis-4.0.3.tar.gz +cd ${JARVIS_TMP} +rm -rf metis-4.0.3 +tar -xf ${JARVIS_DOWNLOAD}/metis-4.0.3.tar.gz +cd metis-4.0.3 +make diff --git a/package/mfem/4.4/install.sh b/package/mfem/4.4/install.sh index 66ac7f626161f797f06326da735c3ad010e38d96..362b6bfbf302752b34479bc397a821932a9590bb 100644 --- a/package/mfem/4.4/install.sh +++ b/package/mfem/4.4/install.sh @@ -7,5 +7,5 @@ rm -rf mfem-4.4 tar -xvf ${JARVIS_DOWNLOAD}/v4.4.tar.gz sed -i 's/>= MINSIGSTKSZ.*/;/' mfem-4.4/tests/unit/catch.hpp cd mfem-4.4 -make serial -j +make parallel make install PREFIX=$1 \ No newline at end of file diff --git a/templates/mfem/4.4/data.mfem.amd.cpu.config b/templates/mfem/4.4/data.mfem.amd.cpu.config index 2c5c68259f11b3e4b20f53a20ca3c1ed3ac1a049..35bebd3139a40b5a0d5ad917235d67409ae5b86e 100644 --- a/templates/mfem/4.4/data.mfem.amd.cpu.config +++ b/templates/mfem/4.4/data.mfem.amd.cpu.config @@ -7,28 +7,35 @@ set -x ./jarvis -install gcc/9.3.0 com module purge module use ./software/modulefiles -module load gcc/9.3.0 +module load gcc9/9.3.0 export CC=`which gcc` export CXX=`which g++` export FC=`which gfortran` +./jarvis -install hmpi/1.1.1 gcc +module load hmpi1/1.1.1 +export CC=mpicc CXX=mpicxx FC=mpifort F77=mpifort +./jarvis -install hypre/2.25.0 gcc+mpi +./jarvis -install metis/4.0.3 gcc+mpi +ln -sf ${JARVIS_TMP}/hypre-2.25.0 ${JARVIS_TMP}/hypre +ln -sf ${JARVIS_TMP}/metis-4.0.3 ${JARVIS_TMP}/metis-4.0 + [ENV] module purge module use ${JARVIS_ROOT}/software/modulefiles -module load gcc/9.3.0 -export CC=`which gcc` -export CXX=`which g++` -export FC=`which gfortran` +module load gcc9/9.3.0 +module load hmpi1/1.1.1 +export CC=mpicc CXX=mpicxx FC=mpifort F77=mpifort [APP] app_name = mfem -build_dir = ${JARVIS_ROOT} +build_dir = ${JARVIS_TMP}/mfem-4.4 binary_dir = -case_dir = +case_dir = ${JARVIS_TMP}/mfem-4.4 [BUILD] -./jarvis -install mfem/4.4 gcc +cd ${JARVIS_ROOT} && ./jarvis -install mfem/4.4 gcc+mpi [RUN] -run = cd ${JARVIS_ROOT}/tmp/mfem-4.4 && make test +run = make test OMPI_ALLOW_RUN_AS_ROOT=1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1 binary = nodes = 1 diff --git a/templates/mfem/4.4/data.mfem.arm.cpu.config b/templates/mfem/4.4/data.mfem.arm.cpu.config new file mode 100644 index 0000000000000000000000000000000000000000..17c83d5660a46a1ed4034bc8f23cc74f2e3484d7 --- /dev/null +++ b/templates/mfem/4.4/data.mfem.arm.cpu.config @@ -0,0 +1,40 @@ +[SERVER] +11.11.11.11 + +[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 F77=mpifort +./jarvis -install hypre/2.25.0 bisheng+mpi +./jarvis -install metis/4.0.3 bisheng+mpi +ln -sf ${JARVIS_TMP}/hypre-2.25.0 ${JARVIS_TMP}/hypre +ln -sf ${JARVIS_TMP}/metis-4.0.3 ${JARVIS_TMP}/metis-4.0 + +[ENV] +module purge +module use ${JARVIS_ROOT}/software/modulefiles +module load bisheng2/2.1.0 +export CC=clang CXX=clang++ FC=flang +module load hmpi1/1.1.1 +export CC=mpicc CXX=mpicxx FC=mpifort F77=mpifort + +[APP] +app_name = mfem +build_dir = ${JARVIS_TMP}/mfem-4.4 +binary_dir = +case_dir = ${JARVIS_TMP}/mfem-4.4 + +[BUILD] +cd ${JARVIS_ROOT} && ./jarvis -install mfem/4.4 bisheng+mpi +# clang not suport this option +sed -i "s/-march=native/''/g" ${JARVIS_TMP}/mfem-4.4/miniapps/performance/makefile + +[RUN] +run = make test OMPI_ALLOW_RUN_AS_ROOT=1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1 +binary = +nodes = 1 \ No newline at end of file