From ceefcae92b9c573e0a8a96ce23d0f34c5aad96d7 Mon Sep 17 00:00:00 2001 From: Nabil Ghodbane Date: Thu, 18 Nov 2021 17:03:10 +0100 Subject: [PATCH] =?utf8?q?spns=20#26662=20SOLVERLAB:=20mise=20=C3=A0=20jou?= =?utf8?q?r=20+=20mpi4py?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- applications/SALOME-master-MPI.pyconf | 2 +- applications/SALOME-master.pyconf | 2 +- products/compil_scripts/petsc-3.16.0.sh | 63 +++++++++++++++++++++++++ products/mpi4py.pyconf | 1 + products/petsc.pyconf | 29 +++++------- 5 files changed, 79 insertions(+), 18 deletions(-) create mode 100755 products/compil_scripts/petsc-3.16.0.sh diff --git a/applications/SALOME-master-MPI.pyconf b/applications/SALOME-master-MPI.pyconf index 7b8b811..ccc6177 100644 --- a/applications/SALOME-master-MPI.pyconf +++ b/applications/SALOME-master-MPI.pyconf @@ -85,7 +85,7 @@ APPLICATION : pandas : '0.25.2' patsy : '0.5.2' ParaView : {tag : '5.9.0', hpc : 'yes', section: 'version_5_9_0_MPI'} - petsc : {tag : '3.15.0', section: 'version_3_15_0'} + petsc : {tag : '3.16.0', section: 'version_3_16_0'} Pillow : '7.1.1' planegcs : '0.18-3cb6890' psutil : '5.7.2' diff --git a/applications/SALOME-master.pyconf b/applications/SALOME-master.pyconf index 5f721bd..ff51b9a 100644 --- a/applications/SALOME-master.pyconf +++ b/applications/SALOME-master.pyconf @@ -83,7 +83,7 @@ APPLICATION : pandas : '0.25.2' patsy : '0.5.2' ParaView : '5.9.0' - petsc : {tag : '3.15.0', section: 'version_3_15_0'} + petsc : {tag : '3.16.0', section: 'version_3_16_0'} Pillow : '7.1.1' planegcs : '0.18-3cb6890' psutil : '5.7.2' diff --git a/products/compil_scripts/petsc-3.16.0.sh b/products/compil_scripts/petsc-3.16.0.sh new file mode 100755 index 0000000..a3f990c --- /dev/null +++ b/products/compil_scripts/petsc-3.16.0.sh @@ -0,0 +1,63 @@ +#!/bin/bash + +echo "##########################################################################" +echo "Petsc" $VERSION +echo "##########################################################################" + +cp -r $SOURCE_DIR/* . + +CONFIGURE_FLAGS= +CONFIGURE_FLAGS+=" --download-f2cblaslapack=ext/f2cblaslapack-3.4.2.q4.tar.gz" +CONFIGURE_FLAGS+=" --download-slepc=ext/slepc-3.16.0.tar.gz" +CONFIGURE_FLAGS+=" --with-hdf5-dir=${HDF5_ROOT_DIR}" +CONFIGURE_FLAGS+=" --download-metis=ext/metis-5.1.0-p10.tar.gz" +CONFIGURE_FLAGS+=" --with-debugging=0" # by default Petsc is build in debug mode +CONFIGURE_FLAGS+=" --with-petsc4py=yes" +CONFIGURE_FLAGS+=" --download-slepc-configure-arguments=\" --with-slepc4py=yes\" " +echo +if [ -n "${MPI_ROOT_DIR}" ] +then + echo "*** configure with mpi" + CONFIGURE_FLAGS+=" --download-hypre=ext/hypre-2.20.0.tar.gz" + CONFIGURE_FLAGS+=" --download-parms=ext/parms-3.2-p5.tar.gz" + CONFIGURE_FLAGS+=" --download-parmetis=ext/parmetis-4.0.3-p6.tar.gz" + CONFIGURE_FLAGS+=" --download-ptscotch=ext/scotch_6.1.0.tar.gz" + CONFIGURE_FLAGS+=" --with-mpi4py-dir=${MPI4PY_ROOT_DIR}" + ./configure --prefix=${PRODUCT_INSTALL} --with-mpi-dir=${MPI_ROOT_DIR} ${CONFIGURE_FLAGS} +else + echo "*** configure without mpi" + ./configure --prefix=${PRODUCT_INSTALL} --with-mpi=0 ${CONFIGURE_FLAGS} +fi + +if [ $? -ne 0 ] +then + echo "ERROR on configure" + exit 1 +fi + +MAKE_OPTIONS="PETSC_DIR=${BUILD_DIR}" + +echo +echo "*** make" $MAKE_OPTIONS +make $MAKE_OPTIONS +if [ $? -ne 0 ] +then + echo "ERROR on make" + exit 2 +fi + +# CentOS 6 automatically set PETSC_ARCH to arch-linux2-c-debug : remove arch specification +# MAKE_OPTIONS=$MAKE_OPTIONS" PETSC_ARCH=arch-linux-c-debug" + +echo +echo "*** make install" +make $MAKE_OPTIONS install +if [ $? -ne 0 ] +then + echo "ERROR on make install" + exit 3 +fi + +echo +echo "########## END" + diff --git a/products/mpi4py.pyconf b/products/mpi4py.pyconf index f1cf5e4..4f90fd1 100644 --- a/products/mpi4py.pyconf +++ b/products/mpi4py.pyconf @@ -13,6 +13,7 @@ default : } environ : { + MPI4PY_ROOT_DIR : $install_dir } depend : ["Python", 'openmpi'] source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + $name diff --git a/products/petsc.pyconf b/products/petsc.pyconf index b28fb95..5572919 100644 --- a/products/petsc.pyconf +++ b/products/petsc.pyconf @@ -8,28 +8,25 @@ default : { env_script : $name + ".py" } - depend : [] - opt_depend : ["openmpi"] + depend : ["hdf5"] + opt_depend : ["openmpi", "mpi4py"] source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + $name build_dir : $APPLICATION.workdir + $VARS.sep + 'BUILD' + $VARS.sep + $name install_dir : 'base' patches : [] + properties: + { + incremental : "yes" + } +} + +version_3_16_0 : +{ + compil_script : "petsc-3.16.0.sh" + depend : ["hdf5", "Python"] } version_3_15_0 : { - name : "petsc" - build_source : "script" - compil_script : $name + "-3.15.0.sh" - get_source : "archive" - environ : - { - env_script : $name + ".py" - } - depend : ["hdf5"] - opt_depend : ["openmpi"] - source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + $name - build_dir : $APPLICATION.workdir + $VARS.sep + 'BUILD' + $VARS.sep + $name - install_dir : 'base' - patches : [] + compil_script : "petsc-3.15.0.sh" } -- 2.39.2