From ffc71ddb0ef875bec2527f63a7a68ee442210db2 Mon Sep 17 00:00:00 2001 From: Nabil Ghodbane Date: Mon, 28 Mar 2022 17:15:49 +0200 Subject: [PATCH] move to scotch 6.1.2 --- applications/SALOME-master-MPI.pyconf | 2 +- applications/SALOME-master-native.pyconf | 6 +- applications/SALOME-master.pyconf | 3 +- products/compil_scripts/scotch-6.0.4.sh | 40 +++++++---- products/compil_scripts/scotch-6.1.2.sh | 91 ++++++++++++++++++++++++ products/nlopt.pyconf | 3 +- products/scotch.pyconf | 46 ++++++++---- 7 files changed, 159 insertions(+), 32 deletions(-) create mode 100755 products/compil_scripts/scotch-6.1.2.sh diff --git a/applications/SALOME-master-MPI.pyconf b/applications/SALOME-master-MPI.pyconf index f64ebff..9407044 100644 --- a/applications/SALOME-master-MPI.pyconf +++ b/applications/SALOME-master-MPI.pyconf @@ -111,7 +111,7 @@ APPLICATION : root: '6.22.02' salome_system : 'native' scipy : '1.4.1' - scotch : '6.0.4' + scotch : '6.1.2' setuptools : '38.4.0' sip : '5.5.0' six : '1.10.0' diff --git a/applications/SALOME-master-native.pyconf b/applications/SALOME-master-native.pyconf index 86229ce..bee642b 100644 --- a/applications/SALOME-master-native.pyconf +++ b/applications/SALOME-master-native.pyconf @@ -25,7 +25,6 @@ APPLICATION : SALOME_trace : "local" # local/file:.../with_logger SALOME_MODULES : "SHAPER,SHAPERSTUDY,GEOM,SMESH,PARAVIS,YACS,JOBMANAGER" # specify the first modules to display in gui SALOME_ACTOR_DELEGATE_TO_VTK : '1' - SCOTCH_HPC : '1' } products : { @@ -112,7 +111,7 @@ APPLICATION : rkCommon : '1.5.1' root: '6.22.02' scipy : 'native' - scotch : {tag: 'native', section: 'version_6_0_4_MPI', hpc: 'yes', base: 'no'} + scotch : {tag: 'native', section: 'version_6_1_2_MPI', hpc: 'yes', base: 'no'} setuptools : 'native' sip : 'native' six : 'native' @@ -236,6 +235,7 @@ __overwrite__ : 'APPLICATION.products.cminpack' : '1.3.6' 'APPLICATION.products.PyFMI' : {tag: '2.5', base: 'no', section: 'version_2_5_no_pip' } 'APPLICATION.products.statsmodels' : {tag: '0.6.1', base: 'no', section: 'version_0_6_1_no_pip' } + 'APPLICATION.products.scotch' : {tag:'6.1.2', base: 'no', section: 'version_6_1_2_MPI', hpc: 'yes' } } { __condition__ : "VARS.dist in ['FD32']" @@ -243,6 +243,7 @@ __overwrite__ : 'APPLICATION.products.PyFMI' : {tag: '2.5', base: 'no', section: 'version_2_5_no_pip' } 'APPLICATION.products.openturns' : {tag: '1.17', base: 'no', section: 'version_1_17_FD32' } 'APPLICATION.products.Sphinx' : {tag: '1.7.6', base: 'no', section: 'version_1_7_6_no_pip' } + 'APPLICATION.products.scotch' : {tag:'6.1.2', base: 'no', section: 'version_6_1_2_MPI', hpc: 'yes' } } { __condition__ : "VARS.dist in ['FD34']" @@ -252,5 +253,6 @@ __overwrite__ : 'APPLICATION.products.PyFMI' : {tag: '2.5', base: 'no', section: 'version_2_5_no_pip' } 'APPLICATION.products.root' : {tag:'6.22.02', base: 'no', section: 'version_6_22_02_FD34' } 'APPLICATION.products.gdal' : {tag:'2.4.0', base: 'no', section: 'version_2_4_0_FD34' } # spns #29324 + 'APPLICATION.products.scotch' : {tag:'6.1.2', base: 'no', section: 'version_6_1_2_MPI', hpc: 'yes' } } ] diff --git a/applications/SALOME-master.pyconf b/applications/SALOME-master.pyconf index add4e60..ef9fa4d 100644 --- a/applications/SALOME-master.pyconf +++ b/applications/SALOME-master.pyconf @@ -25,7 +25,6 @@ APPLICATION : SALOME_trace : "local" # local/file:.../with_logger SALOME_MODULES : "SHAPER,SHAPERSTUDY,GEOM,SMESH,PARAVIS,YACS,JOBMANAGER" # specify the first modules to display in gui SALOME_ACTOR_DELEGATE_TO_VTK : '1' - SCOTCH_HPC : '1' } products : { @@ -111,7 +110,7 @@ APPLICATION : root: '6.22.02' salome_system : 'native' scipy : '1.4.1' - scotch : {tag: '6.0.4', section: 'version_6_0_4_MPI', hpc: 'yes', base: 'no'} + scotch : {tag: '6.1.2', section: 'version_6_1_2_MPI', hpc: 'yes', base: 'no'} setuptools : '38.4.0' sip : '5.5.0' six : '1.10.0' diff --git a/products/compil_scripts/scotch-6.0.4.sh b/products/compil_scripts/scotch-6.0.4.sh index c685510..69f47ff 100755 --- a/products/compil_scripts/scotch-6.0.4.sh +++ b/products/compil_scripts/scotch-6.0.4.sh @@ -34,21 +34,35 @@ then exit 2 fi -echo -echo "*** Check if node is a virtual machine" -ISVM=$(hostnamectl status|grep -i chassis:|grep vm) -if [ ! -z "$ISVM" ]; then - echo "*** oversubscribe..." - sed -i 's/mpirun -n 4/mpirun -n 4 --oversubscribe/g' $BUILD_DIR/src/check/Makefile -else - echo "*** hostnamectl says that $HOSTNAME is *NOT* a virtual machine" -fi +NO_CHECK=0 +LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION" +case $LINUX_DISTRIBUTION in + CO*|FD*) + NO_CHECK=1 + ;; +esac -cd $BUILD_DIR/src -if [ -n "$SAT_HPC" ]; then +if [ $NO_CHECK -eq 1 ]; then echo - echo "*** make ptcheck" - make ptcheck + echo "*** Check if node is a virtual machine" + ISVM=$(hostnamectl status|grep -i chassis:|grep vm) + if [ ! -z "$ISVM" ]; then + echo "*** oversubscribe..." + sed -i 's/mpirun -n 4/mpirun -n 4 --oversubscribe/g' $BUILD_DIR/src/check/Makefile + else + echo "*** hostnamectl says that $HOSTNAME is *NOT* a virtual machine" + fi + + cd $BUILD_DIR/src + if [ -n "$SAT_HPC" ]; then + echo + echo "*** make ptcheck" + make ptcheck + else + echo + echo "*** make check" + make check + fi if [ $? -ne 0 ] then echo "ERROR on make check" diff --git a/products/compil_scripts/scotch-6.1.2.sh b/products/compil_scripts/scotch-6.1.2.sh new file mode 100755 index 0000000..db8c4d2 --- /dev/null +++ b/products/compil_scripts/scotch-6.1.2.sh @@ -0,0 +1,91 @@ +#!/bin/bash + +echo "##########################################################################" +echo "ptscotch" $VERSION +echo "##########################################################################" + +echo +echo "*** mkdir" $PRODUCT_INSTALL +mkdir -p $PRODUCT_INSTALL +if [ $? -ne 0 ] +then + echo "ERROR on mkdir" + exit 1 +fi +cp -ar $SOURCE_DIR/* ${BUILD_DIR}/ +cd ${BUILD_DIR}/src + +echo +echo "*** create Makefile" +if [ -n "$SAT_HPC" ]; then + sed -e "s%CFLAGS\([[:space:]]*\)=\([[:space:]]*\)\(.*\)%CFLAGS\1=\2-fPIC -DPIC -DINTSIZE64 -DSCOTCH_PTHREAD -I${MPI_INCLUDE_DIR} \3%g" Make.inc/Makefile.inc.x86-64_pc_linux2 > Makefile.inc +else + sed -e "s%CFLAGS\([[:space:]]*\)=\([[:space:]]*\)\(.*\)%CFLAGS\1=\2-fPIC -DPIC -DINTSIZE64 -DSCOTCH_PTHREAD \3%g" Make.inc/Makefile.inc.x86-64_pc_linux2 > Makefile.inc +fi +sed -e "s%LDFLAGS\([[:space:]]*\)=\([[:space:]]*\)\(.*\)%LDFLAGS\1=\2 \3 -lpthread%g" Makefile.inc > Makefile.in_new +mv Makefile.in_new Makefile.inc + +echo +if [ -n "$SAT_HPC" ]; then + SCOTCH_TARGET=ptscotch +else + SCOTCH_TARGET=scotch +fi + +echo "*** make" $MAKE_OPTIONS $SCOTCH_TARGET +make $MAKE_OPTIONS $SCOTCH_TARGET +if [ $? -ne 0 ] +then + echo "ERROR on make" + exit 2 +fi + +NO_CHECK=0 +LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION" +case $LINUX_DISTRIBUTION in + CO*|FD*) + NO_CHECK=1 + ;; +esac + +if [ $NO_CHECK -eq 1 ]; then + echo + echo "*** Check if node is a virtual machine" + ISVM=$(hostnamectl status|grep -i chassis:|grep vm) + if [ ! -z "$ISVM" ]; then + echo "*** oversubscribe..." + sed -i 's/mpirun -n 4/mpirun -n 4 --oversubscribe/g' $BUILD_DIR/src/check/Makefile + else + echo "*** hostnamectl says that $HOSTNAME is *NOT* a virtual machine" + fi + + cd $BUILD_DIR/src + if [ -n "$SAT_HPC" ]; then + echo + echo "*** make ptcheck" + make ptcheck + else + echo + echo "*** make check" + make check + fi + if [ $? -ne 0 ] + then + echo "ERROR on make check" + exit 3 + fi +fi + +echo +echo "*** Install" +cd $BUILD_DIR +for d in include lib bin; do + cp -r $d $PRODUCT_INSTALL/$d + if [ $? -ne 0 ]; then + echo "FATAL: failed to deploy: $d" + exit 3 + fi +done + +echo +echo "########## END" diff --git a/products/nlopt.pyconf b/products/nlopt.pyconf index 11fcd35..f242c76 100644 --- a/products/nlopt.pyconf +++ b/products/nlopt.pyconf @@ -8,7 +8,7 @@ default : { env_script : $name + ".py" } - depend : ['Python'] + depend : ['Python', 'numpy'] # numpy mandatory otherwise no python API is generated build_depend : ["cmake", "swig"] patches : [] source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + $name @@ -23,7 +23,6 @@ default : default_win: { - depend : ['Python'] properties : { incremental : "yes" diff --git a/products/scotch.pyconf b/products/scotch.pyconf index 87e429f..d18f265 100644 --- a/products/scotch.pyconf +++ b/products/scotch.pyconf @@ -26,20 +26,26 @@ default : } } -version_5_1_12b : +version_6_1_2 : { - name : "scotch" - build_source : "script" - compil_script : $name + "-5.1.12.sh" - get_source : "archive" + compil_script: "scotch-6.1.2.sh" +} + +version_6_1_2_MPI : +{ + system_info : + { + rpm : [] + rpm_dev : [] # not compatible on FD34 - so embed + apt : ["libptscotch"] + apt_dev : ["libptscotch-dev"] + } environ : { - env_script : $name + ".py" + env_script : "ptscotch.py" } - depend : [] - source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + $name - build_dir : $APPLICATION.workdir + $VARS.sep + 'BUILD' + $VARS.sep + $name - install_dir : 'base' + compil_script: "scotch-6.1.2.sh" + depend: ['openmpi'] } version_6_0_4 : @@ -51,8 +57,8 @@ version_6_0_4_MPI : { system_info : { - rpm : ["ptscotch-openmpi"] - rpm_dev : ["ptscotch-openmpi-devel"] + rpm : [] + rpm_dev : [] apt : ["libptscotch"] apt_dev : ["libptscotch-dev"] } @@ -63,3 +69,19 @@ version_6_0_4_MPI : compil_script: "scotch-6.0.4.sh" depend: ['openmpi'] } + +version_5_1_12b : +{ + name : "scotch" + build_source : "script" + compil_script : $name + "-5.1.12.sh" + get_source : "archive" + environ : + { + env_script : $name + ".py" + } + depend : [] + source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + $name + build_dir : $APPLICATION.workdir + $VARS.sep + 'BUILD' + $VARS.sep + $name + install_dir : 'base' +} -- 2.39.2