From 5fca90473bdbc5c6d761270efa3bae6287199fcb Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Thu, 17 Dec 2020 08:32:31 -0700 Subject: [PATCH 01/12] ATDM/ats1: Fix env (ATDV-409) - Drop support for intel-18. - Update intel-19 support to use mpich 7.7.15, gcc 8.3.0, and git 2.21.0. --- ...-19.0.4_mpich-7.7.15_openmp_static_dbg.sh} | 0 ...-19.0.4_mpich-7.7.15_openmp_static_opt.sh} | 0 ...el-18.0.5_mpich-7.7.6_openmp_static_dbg.sh | 5 -- ...el-18.0.5_mpich-7.7.6_openmp_static_opt.sh | 6 -- ...-19.0.4_mpich-7.7.15_openmp_static_dbg.sh} | 0 ...-19.0.4_mpich-7.7.15_openmp_static_opt.sh} | 0 ...el-19.0.4_mpich-7.7.6_openmp_static_dbg.sh | 5 -- ...el-19.0.4_mpich-7.7.6_openmp_static_opt.sh | 6 -- cmake/std/atdm/ats1/custom_builds.sh | 21 +---- cmake/std/atdm/ats1/environment.sh | 85 ++----------------- 10 files changed, 10 insertions(+), 118 deletions(-) rename cmake/ctest/drivers/atdm/ats1/drivers/{Trilinos-atdm-ats1-hsw_intel-18.0.5_mpich-7.7.6_openmp_static_dbg.sh => Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.15_openmp_static_dbg.sh} (100%) rename cmake/ctest/drivers/atdm/ats1/drivers/{Trilinos-atdm-ats1-hsw_intel-18.0.5_mpich-7.7.6_openmp_static_opt.sh => Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.15_openmp_static_opt.sh} (100%) delete mode 100755 cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_dbg.sh delete mode 100755 cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_opt.sh rename cmake/ctest/drivers/atdm/ats1/drivers/{Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.6_openmp_static_dbg.sh => Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.15_openmp_static_dbg.sh} (100%) rename cmake/ctest/drivers/atdm/ats1/drivers/{Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.6_openmp_static_opt.sh => Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.15_openmp_static_opt.sh} (100%) delete mode 100755 cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_dbg.sh delete mode 100755 cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_opt.sh diff --git a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-18.0.5_mpich-7.7.6_openmp_static_dbg.sh b/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.15_openmp_static_dbg.sh similarity index 100% rename from cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-18.0.5_mpich-7.7.6_openmp_static_dbg.sh rename to cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.15_openmp_static_dbg.sh diff --git a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-18.0.5_mpich-7.7.6_openmp_static_opt.sh b/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.15_openmp_static_opt.sh similarity index 100% rename from cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-18.0.5_mpich-7.7.6_openmp_static_opt.sh rename to cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.15_openmp_static_opt.sh diff --git a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_dbg.sh b/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_dbg.sh deleted file mode 100755 index 11988eb87b20..000000000000 --- a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_dbg.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash -if [ "${Trilinos_TRACK}" == "" ] ; then - export Trilinos_TRACK=Specialized -fi -$WORKSPACE/Trilinos/cmake/ctest/drivers/atdm/ats1/local-driver.sh diff --git a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_opt.sh b/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_opt.sh deleted file mode 100755 index 1128151c2bfb..000000000000 --- a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_opt.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -if [ "${Trilinos_TRACK}" == "" ] ; then - export Trilinos_TRACK=Specialized -fi -export Trilinos_SKIP_CTEST_ADD_TEST=FALSE -$WORKSPACE/Trilinos/cmake/ctest/drivers/atdm/ats1/local-driver.sh diff --git a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.6_openmp_static_dbg.sh b/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.15_openmp_static_dbg.sh similarity index 100% rename from cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.6_openmp_static_dbg.sh rename to cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.15_openmp_static_dbg.sh diff --git a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.6_openmp_static_opt.sh b/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.15_openmp_static_opt.sh similarity index 100% rename from cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-hsw_intel-19.0.4_mpich-7.7.6_openmp_static_opt.sh rename to cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.15_openmp_static_opt.sh diff --git a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_dbg.sh b/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_dbg.sh deleted file mode 100755 index 11988eb87b20..000000000000 --- a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_dbg.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash -if [ "${Trilinos_TRACK}" == "" ] ; then - export Trilinos_TRACK=Specialized -fi -$WORKSPACE/Trilinos/cmake/ctest/drivers/atdm/ats1/local-driver.sh diff --git a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_opt.sh b/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_opt.sh deleted file mode 100755 index 1128151c2bfb..000000000000 --- a/cmake/ctest/drivers/atdm/ats1/drivers/Trilinos-atdm-ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_opt.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -if [ "${Trilinos_TRACK}" == "" ] ; then - export Trilinos_TRACK=Specialized -fi -export Trilinos_SKIP_CTEST_ADD_TEST=FALSE -$WORKSPACE/Trilinos/cmake/ctest/drivers/atdm/ats1/local-driver.sh diff --git a/cmake/std/atdm/ats1/custom_builds.sh b/cmake/std/atdm/ats1/custom_builds.sh index ad4a37871dec..1ca1b01e0b02 100644 --- a/cmake/std/atdm/ats1/custom_builds.sh +++ b/cmake/std/atdm/ats1/custom_builds.sh @@ -8,24 +8,12 @@ # Custom compiler selection logic if atdm_match_any_buildname_keyword \ - intel-19.0.4-mpich-7.7.6 \ - intel-19.0.4_mpich-7.7.6 \ + intel-19.0.4-mpich-7.7.15 \ + intel-19.0.4_mpich-7.7.15 \ intel-19.0.4 \ intel-19 \ ; then - export ATDM_CONFIG_COMPILER=INTEL-19.0.4_MPICH-7.7.6 -# Note: matching "intel" below is dangerous. The user could easily make a typo -# and wind up with the intel-18 env. Leaving "intel" as a match below due to -# customer request. -elif atdm_match_any_buildname_keyword \ - intel-18.0.5-mpich-7.7.6 \ - intel-18.0.5_mpich-7.7.6 \ - intel-18.0.5 \ - intel-18 \ - default \ - intel \ - ; then - export ATDM_CONFIG_COMPILER=INTEL-18.0.5_MPICH-7.7.6 + export ATDM_CONFIG_COMPILER=INTEL-19.0.4_MPICH-7.7.15 else echo echo "***" @@ -33,8 +21,7 @@ else echo "***" echo "*** Supported compilers include:" echo "***" - echo "**** intel-19.0.4-mpich-7.7.6 (intel-19)" - echo "**** intel-18.0.5-mpich-7.7.6 (intel-18, intel, default)" + echo "**** intel-19.0.4-mpich-7.7.15 (intel-19)" echo "***" return diff --git a/cmake/std/atdm/ats1/environment.sh b/cmake/std/atdm/ats1/environment.sh index 39f882d16ea1..06deabdf2eaa 100755 --- a/cmake/std/atdm/ats1/environment.sh +++ b/cmake/std/atdm/ats1/environment.sh @@ -7,7 +7,7 @@ ################################################################################ if [ "$ATDM_CONFIG_COMPILER" == "DEFAULT" ] ; then - export ATDM_CONFIG_COMPILER=INTEL-19.0.4_MPICH-7.7.6 + export ATDM_CONFIG_COMPILER=INTEL-19.0.4_MPICH-7.7.15 fi if [ "$ATDM_CONFIG_KOKKOS_ARCH" == "DEFAULT" ] ; then @@ -34,24 +34,15 @@ export ATDM_CONFIG_BUILD_COUNT=32 # 64 processes so we reduced this to just 32 to try to avoid these. (See # ATDV-361) -# Common sparc tpl path values -sparc_tpl_prefix_path="/usr/projects/sparc/tpls" -system_name="ats1" -node_arch="" - if [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "HSW" ]]; then - node_arch="hsw" - module unload craype-mic-knl - module load craype-haswell + module load sparc-dev/intel-19.0.4_mpich-7.7.15_hsw # HSW nodes have 64 virtual cores. # Allow no more than 8 virtual cores per task. export ATDM_CONFIG_MPI_POST_FLAGS="-c 4" # If we have 1 MPI rank per srun command and 1 cpu per task, we can run up to 32 2-threaded tests "in parallel" on virtual cores. export ATDM_CONFIG_CTEST_PARALLEL_LEVEL=1 elif [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "KNL" ]]; then - node_arch="knl" - module unload craype-haswell - module load craype-mic-knl + module load sparc-dev/intel-19.0.4_mpich-7.7.15_knl export SLURM_TASKS_PER_NODE=16 export OMP_PLACES=threads export OMP_PROC_BIND=spread @@ -69,8 +60,7 @@ else echo "*** ERROR: COMPILER=$ATDM_CONFIG_COMPILER and KOKKOS_ARCH=$ATDM_CONFIG_KOKKOS_ARCH is not" echo "*** a supported combination on this system!" echo "*** Combinations that are supported: " - echo "*** > intel-19.0.4_mpich-7.7.6" - echo "*** > intel-18.0.5_mpich-7.7.6" + echo "*** > intel-19.0.4_mpich-7.7.15" echo "***" return fi @@ -84,49 +74,14 @@ export OMP_NUM_THREADS=2 # Common modules and paths module load cmake/3.14.6 -module load git/2.19.1 +module load git/2.21.0 export PATH=/projects/netpub/atdm/ninja-1.8.2/bin:$PATH -module unload cray-mpich -module load cray-mpich/7.7.6 -module unload cray-libsci -module unload gcc - -if [[ "$ATDM_CONFIG_COMPILER" == "INTEL-19.0.4"* ]]; then - module load gcc/8.2.0 - module unload intel - module load intel/19.0.4 - #sparc_tpl_ext=${system_name}-${node_arch}_intel-19.0.4 - #sparc_tpl_mpi_ext=${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 -elif [[ "$ATDM_CONFIG_COMPILER" == "INTEL-18.0.5"* ]]; then - module unload intel - module load intel/18.0.5 - #sparc_tpl_ext=${system_name}-${node_arch}_intel-18.0.5 - #sparc_tpl_mpi_ext=${system_name}-${node_arch}_intel-18.0.5_mpich-7.7.6 -else - echo - echo "***" - echo "*** ERROR: COMPILER=$ATDM_CONFIG_COMPILER and KOKKOS_ARCH=$ATDM_CONFIG_KOKKOS_ARCH is not" - echo "*** a supported combination on this system!" - echo "*** Combinations that are supported: " - echo "*** > intel-19.0.4_mpich-7.7.6_openmp-HSW" - echo "*** > intel-19.0.4_mpich-7.7.6_openmp-KNL" - echo "*** > intel-18.0.5_mpich-7.7.6_openmp-HSW" - echo "*** > intel-18.0.5_mpich-7.7.6_openmp-KNL" - echo "***" - return -fi -export PATH=/usr/projects/hpcsoft/cle6.0/common/intel-clusterstudio/2019.4-068/compilers_and_libraries_2019/linux/mkl/bin:$PATH -export LD_LIBRARY_PATH=/usr/projects/hpcsoft/cle6.0/common/intel-clusterstudio/2019.4-068/compilers_and_libraries_2019/linux/mkl/lib/intel64:$LD_LIBRARY_PATH # This linker path is needed for cmake's C, CXX, and Ftn compiler tests. This linker path is not shown # anywhere in SPARC's environment but is needed in ATDM's environment. Cmake's compiler tests are # ignoring LD_{CRAY,CRAYPAT,}_LIBRARY_PATH for some reason, so we add this path via LDFLAGS via # s.t. it is added to CMAKE_EXE_LINKER_FLAGS before trilinos's cmake config invokes PROJECT(). -export LDFLAGS="-L/opt/gcc/8.2.0/snos/lib/gcc/x86_64-suse-linux/8.2.0/ $LDFLAGS" - -export CBLAS_ROOT=/usr/projects/hpcsoft/cle6.0/common/intel-clusterstudio/2019.4-068/compilers_and_libraries_2019/linux -export COMPILER_ROOT=/usr/projects/hpcsoft/cle6.0/common/intel-clusterstudio/2019.4-068/compilers_and_libraries_2019/linux -export MPI_ROOT=/opt/cray/pe/mpt/7.7.6/gni/mpich-intel/16.0 +export LDFLAGS="-L/opt/gcc/8.3.0/snos/lib/gcc/x86_64-suse-linux/8.3.0/ $LDFLAGS" export ATDM_CONFIG_TPL_FIND_SHARED_LIBS=OFF export ATDM_CONFIG_Trilinos_LINK_SEARCH_START_STATIC=ON @@ -154,11 +109,6 @@ export ATDM_CONFIG_LAPACK_LIBS="-L${CBLAS_ROOT}/mkl/lib/intel64;-L${CBLAS_ROOT}/ # Blas (intel) settings export ATDM_CONFIG_BLAS_LIBS="-L${CBLAS_ROOT}/mkl/lib/intel64;-L${CBLAS_ROOT}/compiler/lib/intel64;-mkl;-lmkl_intel_lp64;-lmkl_intel_thread;-lmkl_core;-liomp5" -# Boost 1.65.1 settings -export BOOST_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/boost-1.72.0/00000000/${system_name}-${node_arch}_intel-19.0.4 - -# Hdf5 1.10.5 settings -export HDF5_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/hdf5-1.10.5/00000000/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 export ATDM_CONFIG_HDF5_LIBS="-L${HDF5_ROOT}/lib;${HDF5_ROOT}/lib/libhdf5_hl.a;${HDF5_ROOT}/lib/libhdf5.a;-lz;-ldl" #export ATDM_CONFIG_HDF5_NO_SYSTEM_PATHS=ON @@ -166,39 +116,16 @@ export ATDM_CONFIG_HDF5_LIBS="-L${HDF5_ROOT}/lib;${HDF5_ROOT}/lib/libhdf5_hl.a;$ export BINUTILS_ROOT="/usr" export ATDM_CONFIG_BINUTILS_LIBS="${BINUTILS_ROOT}/lib64/libbfd.a;-lz;${BINUTILS_ROOT}/lib64/libiberty.a" -# Cgns settings -export CGNS_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/cgns-c09a5cd/d313cc2f822078e47c7dbdee074ecb0431e573eb/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 export ATDM_CONFIG_CGNS_LIBRARY_NAMES="cgns" -# Pnetcdf 1.10.0 settings -export PNETCDF_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/pnetcdf-1.12.1/6144dc67b2041e4093063a04e89fc1e33398bd09/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 - -# Netcdf 4.7.0 settings -export NETCDF_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/netcdf-4.7.0/24baa07a3fa1ff9dbc8e70dc591ebbdec56783b2/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 export ATDM_CONFIG_NETCDF_LIBS="-L${BOOST_ROOT}/lib;-L${NETCDF_ROOT}/lib64;-L${PNETCDF_ROOT}/lib;-L${HDF5_ROOT}/lib;${BOOST_ROOT}/lib/libboost_program_options.a;${BOOST_ROOT}/lib/libboost_system.a;${NETCDF_ROOT}/lib64/libnetcdf.a;${PNETCDF_ROOT}/lib/libpnetcdf.a;${HDF5_ROOT}/lib/libhdf5_hl.a;${HDF5_ROOT}/lib/libhdf5.a;-lz;-ldl;-lm" -# Libhio 1.4.1.2 settings -export LIBHIO_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/libhio-1.4.1.2/00000000/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 - -# Metis 4.0.3 settings -export METIS_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/parmetis-4.0.3/00000000/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 - -# Parmetis 4.0.3 settings -export PARMETIS_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/parmetis-4.0.3/00000000/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 # Force linker order! export ATDM_CONFIG_PARMETIS_LIBS="${PARMETIS_ROOT}/lib/libparmetis.a;${METIS_ROOT}/lib/libmetis.a" -# Superludist 5.4.0 settings -export SUPERLUDIST_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/superlu_dist-5.4.0/a3121eaff44f7bf7d44e625c3b3d2a9911e58876/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 export ATDM_CONFIG_SUPERLUDIST_INCLUDE_DIRS="${SUPERLUDIST_ROOT}/include" export ATDM_CONFIG_SUPERLUDIST_LIBS="${SUPERLUDIST_ROOT}/lib64/libsuperlu_dist.a" -# Sgm 20.23 settings -export SGM_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/sgm-20.23/00000000/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 - -# Euclid 20.23 settings -export EUCLID_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/euclid-20.23/8b68b12f72b59648c9a0a962a6d55ea978199860/${system_name}-${node_arch}_intel-19.0.4_mpich-7.7.6 - # Define and export atdm_run_script_on_compute_node source $ATDM_SCRIPT_DIR/common/define_run_on_slurm_compute_node_func.sh From 45e1cf7492e7af5ed33ae0c336ddaa9d3ac2ee6f Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Thu, 17 Dec 2020 08:39:37 -0700 Subject: [PATCH 02/12] ATDM/ats1: Update all_supported_builds.sh (ATDV-409) --- cmake/std/atdm/ats1/all_supported_builds.sh | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/cmake/std/atdm/ats1/all_supported_builds.sh b/cmake/std/atdm/ats1/all_supported_builds.sh index f7401d28854b..9ffca28a39a2 100644 --- a/cmake/std/atdm/ats1/all_supported_builds.sh +++ b/cmake/std/atdm/ats1/all_supported_builds.sh @@ -2,12 +2,8 @@ export ATDM_CONFIG_CTEST_S_BUILD_NAME_PREFIX=Trilinos-atdm- export ATDM_CONFIG_ALL_SUPPORTED_BUILDS=( - ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_opt - ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_opt - ats1-hsw_intel-19.0.4_mpich-7.7.6_openmp_static_opt - ats1-hsw_intel-18.0.5_mpich-7.7.6_openmp_static_opt - ats1-knl_intel-19.0.4_mpich-7.7.6_openmp_static_dbg - ats1-knl_intel-18.0.5_mpich-7.7.6_openmp_static_dbg - ats1-hsw_intel-19.0.4_mpich-7.7.6_openmp_static_dbg - ats1-hsw_intel-18.0.5_mpich-7.7.6_openmp_static_dbg + ats1-knl_intel-19.0.4_mpich-7.7.15_openmp_static_opt + ats1-hsw_intel-19.0.4_mpich-7.7.15_openmp_static_opt + ats1-knl_intel-19.0.4_mpich-7.7.15_openmp_static_dbg + ats1-hsw_intel-19.0.4_mpich-7.7.15_openmp_static_dbg ) From 922efea36cde887d208023e819aa1dd861be7b08 Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Thu, 17 Dec 2020 10:59:57 -0700 Subject: [PATCH 03/12] ATDM/ats1: Update custom_builds and unit_tests (ATDV-409) --- cmake/std/atdm/ats1/custom_builds.sh | 1 + .../std/atdm/ats1/custom_builds_unit_tests.sh | 39 ++++--------------- 2 files changed, 8 insertions(+), 32 deletions(-) diff --git a/cmake/std/atdm/ats1/custom_builds.sh b/cmake/std/atdm/ats1/custom_builds.sh index 1ca1b01e0b02..ac454cf74cc5 100644 --- a/cmake/std/atdm/ats1/custom_builds.sh +++ b/cmake/std/atdm/ats1/custom_builds.sh @@ -12,6 +12,7 @@ if atdm_match_any_buildname_keyword \ intel-19.0.4_mpich-7.7.15 \ intel-19.0.4 \ intel-19 \ + default \ ; then export ATDM_CONFIG_COMPILER=INTEL-19.0.4_MPICH-7.7.15 else diff --git a/cmake/std/atdm/ats1/custom_builds_unit_tests.sh b/cmake/std/atdm/ats1/custom_builds_unit_tests.sh index 54e69f419aba..d80fe5318145 100755 --- a/cmake/std/atdm/ats1/custom_builds_unit_tests.sh +++ b/cmake/std/atdm/ats1/custom_builds_unit_tests.sh @@ -11,51 +11,26 @@ testAll() { ATDM_CONFIG_SYSTEM_DIR=${ATDM_CONFIG_SCRIPT_DIR}/ats1 - ATDM_CONFIG_BUILD_NAME=before-intel-19.0.4-mpich-7.7.6_after + ATDM_CONFIG_BUILD_NAME=before-intel-19.0.4-mpich-7.7.15_after . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-19.0.4_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} + ${_ASSERT_EQUALS_} INTEL-19.0.4_MPICH-7.7.15 ${ATDM_CONFIG_COMPILER} - ATDM_CONFIG_BUILD_NAME=before-intel-19.0.4_mpich-7.7.6-after + ATDM_CONFIG_BUILD_NAME=before-intel-19.0.4_mpich-7.7.15-after . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-19.0.4_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} + ${_ASSERT_EQUALS_} INTEL-19.0.4_MPICH-7.7.15 ${ATDM_CONFIG_COMPILER} ATDM_CONFIG_BUILD_NAME=before_intel-19.0.4-after . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-19.0.4_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} + ${_ASSERT_EQUALS_} INTEL-19.0.4_MPICH-7.7.15 ${ATDM_CONFIG_COMPILER} ATDM_CONFIG_BUILD_NAME=before_intel-19-after . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-19.0.4_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} + ${_ASSERT_EQUALS_} INTEL-19.0.4_MPICH-7.7.15 ${ATDM_CONFIG_COMPILER} ATDM_CONFIG_BUILD_NAME=default . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-18.0.5_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} + ATDM_CONFIG_COMPILER=INTEL-19.0.4_MPICH-7.7.15 - ATDM_CONFIG_BUILD_NAME=before-intel-after - . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-18.0.5_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} - - ATDM_CONFIG_BUILD_NAME=before-intel-18.0.5-mpich-7.7.6_after - . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-18.0.5_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} - - ATDM_CONFIG_BUILD_NAME=before-intel-18.0.5_mpich-7.7.6-after - . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-18.0.5_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} - - ATDM_CONFIG_BUILD_NAME=before_intel-18.0.5-after - . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-18.0.5_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} - - ATDM_CONFIG_BUILD_NAME=before_intel-18-after - . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-18.0.5_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} - - ATDM_CONFIG_BUILD_NAME=BEFORE-INTEL-AFTER - . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh - ${_ASSERT_EQUALS_} INTEL-18.0.5_MPICH-7.7.6 ${ATDM_CONFIG_COMPILER} - - # Make sure 'arms' does not match 'arm' ATDM_CONFIG_BUILD_NAME=anything-intell . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh ${_ASSERT_EQUALS_} DEFAULT ${ATDM_CONFIG_COMPILER} From cac8010587c83338c2ff86fc7b944c7178593e50 Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Thu, 17 Dec 2020 13:23:22 -0700 Subject: [PATCH 04/12] Implement PR feedback --- cmake/std/atdm/ats1/custom_builds.sh | 3 ++- cmake/std/atdm/ats1/environment.sh | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cmake/std/atdm/ats1/custom_builds.sh b/cmake/std/atdm/ats1/custom_builds.sh index ac454cf74cc5..c51eaf9d0523 100644 --- a/cmake/std/atdm/ats1/custom_builds.sh +++ b/cmake/std/atdm/ats1/custom_builds.sh @@ -12,6 +12,7 @@ if atdm_match_any_buildname_keyword \ intel-19.0.4_mpich-7.7.15 \ intel-19.0.4 \ intel-19 \ + intel \ default \ ; then export ATDM_CONFIG_COMPILER=INTEL-19.0.4_MPICH-7.7.15 @@ -22,7 +23,7 @@ else echo "***" echo "*** Supported compilers include:" echo "***" - echo "**** intel-19.0.4-mpich-7.7.15 (intel-19)" + echo "**** intel-19.0.4-mpich-7.7.15 (intel-19, intel, default)" echo "***" return diff --git a/cmake/std/atdm/ats1/environment.sh b/cmake/std/atdm/ats1/environment.sh index 06deabdf2eaa..fa7cd0a3291b 100755 --- a/cmake/std/atdm/ats1/environment.sh +++ b/cmake/std/atdm/ats1/environment.sh @@ -73,7 +73,7 @@ export ATDM_CONFIG_SBATCH_EXTRA_ARGS="$ATDM_CONFIG_SBATCH_EXTRA_ARGS --exclude=n export OMP_NUM_THREADS=2 # Common modules and paths -module load cmake/3.14.6 +module load sparc-cmake/3.18.1 module load git/2.21.0 export PATH=/projects/netpub/atdm/ninja-1.8.2/bin:$PATH From cccf77b210a1afdb8769d99ccc65df2c2298800b Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Thu, 17 Dec 2020 13:44:20 -0700 Subject: [PATCH 05/12] Implement PR feedback --- cmake/std/atdm/ats1/environment.sh | 5 ----- 1 file changed, 5 deletions(-) diff --git a/cmake/std/atdm/ats1/environment.sh b/cmake/std/atdm/ats1/environment.sh index fa7cd0a3291b..8e1242d4f7ff 100755 --- a/cmake/std/atdm/ats1/environment.sh +++ b/cmake/std/atdm/ats1/environment.sh @@ -5,11 +5,6 @@ # This source script gets the settings from the ATDM_CONFIG_BUILD_NAME var. # ################################################################################ - -if [ "$ATDM_CONFIG_COMPILER" == "DEFAULT" ] ; then - export ATDM_CONFIG_COMPILER=INTEL-19.0.4_MPICH-7.7.15 -fi - if [ "$ATDM_CONFIG_KOKKOS_ARCH" == "DEFAULT" ] ; then export ATDM_CONFIG_KOKKOS_ARCH=HSW fi From ee158c430dc98b01e10eebe8ec69e7e2480469b6 Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Thu, 17 Dec 2020 15:56:15 -0700 Subject: [PATCH 06/12] Implement PR feedback --- cmake/std/atdm/ats1/custom_builds_unit_tests.sh | 4 ++++ cmake/std/atdm/ats1/environment.sh | 2 -- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/cmake/std/atdm/ats1/custom_builds_unit_tests.sh b/cmake/std/atdm/ats1/custom_builds_unit_tests.sh index d80fe5318145..222b814799aa 100755 --- a/cmake/std/atdm/ats1/custom_builds_unit_tests.sh +++ b/cmake/std/atdm/ats1/custom_builds_unit_tests.sh @@ -35,6 +35,10 @@ testAll() { . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh ${_ASSERT_EQUALS_} DEFAULT ${ATDM_CONFIG_COMPILER} + ATDM_CONFIG_BUILD_NAME=intel + . ${ATDM_CONFIG_SCRIPT_DIR}/utils/set_build_options.sh + ${_ASSERT_EQUALS_} INTEL-19.0.4_MPICH-7.7.15 ${ATDM_CONFIG_COMPILER} + } diff --git a/cmake/std/atdm/ats1/environment.sh b/cmake/std/atdm/ats1/environment.sh index 8e1242d4f7ff..827f9b1df69d 100755 --- a/cmake/std/atdm/ats1/environment.sh +++ b/cmake/std/atdm/ats1/environment.sh @@ -68,8 +68,6 @@ export ATDM_CONFIG_SBATCH_EXTRA_ARGS="$ATDM_CONFIG_SBATCH_EXTRA_ARGS --exclude=n export OMP_NUM_THREADS=2 # Common modules and paths -module load sparc-cmake/3.18.1 -module load git/2.21.0 export PATH=/projects/netpub/atdm/ninja-1.8.2/bin:$PATH # This linker path is needed for cmake's C, CXX, and Ftn compiler tests. This linker path is not shown From 4fe27cbe0c27b55a12d68aae2590d6ba6ec22252 Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Sat, 9 Jan 2021 15:32:17 -0700 Subject: [PATCH 07/12] ATDM/ats1: Fix Seacas and Percept link errors (ATDV-409) --- cmake/std/atdm/ats1/environment.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cmake/std/atdm/ats1/environment.sh b/cmake/std/atdm/ats1/environment.sh index 827f9b1df69d..cdde164a8c6e 100755 --- a/cmake/std/atdm/ats1/environment.sh +++ b/cmake/std/atdm/ats1/environment.sh @@ -74,7 +74,10 @@ export PATH=/projects/netpub/atdm/ninja-1.8.2/bin:$PATH # anywhere in SPARC's environment but is needed in ATDM's environment. Cmake's compiler tests are # ignoring LD_{CRAY,CRAYPAT,}_LIBRARY_PATH for some reason, so we add this path via LDFLAGS via # s.t. it is added to CMAKE_EXE_LINKER_FLAGS before trilinos's cmake config invokes PROJECT(). -export LDFLAGS="-L/opt/gcc/8.3.0/snos/lib/gcc/x86_64-suse-linux/8.3.0/ $LDFLAGS" +export LDFLAGS="-L/opt/gcc/8.3.0/snos/lib/gcc/x86_64-suse-linux/8.3.0/ -lpthread $LDFLAGS" + +# 2021-01-09 -- Resolve linker errors in Seacas and Percept +export LDFLAGS="-L${MPI_ROOT}/lib -lmpich -lrt ${ATP_INSTALL_DIR}/lib/libAtpSigHandler.a ${ATP_INSTALL_DIR}/lib/libbreakpad_client_nostdlib.a $LDFLAGS" export ATDM_CONFIG_TPL_FIND_SHARED_LIBS=OFF export ATDM_CONFIG_Trilinos_LINK_SEARCH_START_STATIC=ON From 4c296a25cecc5097f4a18a2af1051503ac2f101a Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Sat, 9 Jan 2021 15:46:46 -0700 Subject: [PATCH 08/12] ATDM/ats1: Fix comment typo (ATDV-409) --- cmake/std/atdm/ats1/environment.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/std/atdm/ats1/environment.sh b/cmake/std/atdm/ats1/environment.sh index cdde164a8c6e..572d57755162 100755 --- a/cmake/std/atdm/ats1/environment.sh +++ b/cmake/std/atdm/ats1/environment.sh @@ -32,7 +32,7 @@ export ATDM_CONFIG_BUILD_COUNT=32 if [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "HSW" ]]; then module load sparc-dev/intel-19.0.4_mpich-7.7.15_hsw # HSW nodes have 64 virtual cores. - # Allow no more than 8 virtual cores per task. + # Allow no more than 4 virtual cores per task. export ATDM_CONFIG_MPI_POST_FLAGS="-c 4" # If we have 1 MPI rank per srun command and 1 cpu per task, we can run up to 32 2-threaded tests "in parallel" on virtual cores. export ATDM_CONFIG_CTEST_PARALLEL_LEVEL=1 From 1a3c72caea8a3a5cddfa0fb03094efdd979f43f7 Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Sun, 10 Jan 2021 07:32:00 -0700 Subject: [PATCH 09/12] ATDM/ats1: Fix hsw test timeouts (ATDV-409) --- cmake/std/atdm/ats1/environment.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/cmake/std/atdm/ats1/environment.sh b/cmake/std/atdm/ats1/environment.sh index 572d57755162..08d7ebd044e4 100755 --- a/cmake/std/atdm/ats1/environment.sh +++ b/cmake/std/atdm/ats1/environment.sh @@ -31,11 +31,9 @@ export ATDM_CONFIG_BUILD_COUNT=32 if [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "HSW" ]]; then module load sparc-dev/intel-19.0.4_mpich-7.7.15_hsw - # HSW nodes have 64 virtual cores. - # Allow no more than 4 virtual cores per task. - export ATDM_CONFIG_MPI_POST_FLAGS="-c 4" # If we have 1 MPI rank per srun command and 1 cpu per task, we can run up to 32 2-threaded tests "in parallel" on virtual cores. export ATDM_CONFIG_CTEST_PARALLEL_LEVEL=1 + unset OMP_PLACES elif [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "KNL" ]]; then module load sparc-dev/intel-19.0.4_mpich-7.7.15_knl export SLURM_TASKS_PER_NODE=16 From 147a0b855912b3227b65fc618f1e0181fcf83129 Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Sun, 10 Jan 2021 08:26:41 -0700 Subject: [PATCH 10/12] ATDM/ats1: Increase ctest -j arg from 1 to 16 (ATDV-409) --- cmake/std/atdm/ats1/environment.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cmake/std/atdm/ats1/environment.sh b/cmake/std/atdm/ats1/environment.sh index 08d7ebd044e4..1a90026ee314 100755 --- a/cmake/std/atdm/ats1/environment.sh +++ b/cmake/std/atdm/ats1/environment.sh @@ -31,8 +31,7 @@ export ATDM_CONFIG_BUILD_COUNT=32 if [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "HSW" ]]; then module load sparc-dev/intel-19.0.4_mpich-7.7.15_hsw - # If we have 1 MPI rank per srun command and 1 cpu per task, we can run up to 32 2-threaded tests "in parallel" on virtual cores. - export ATDM_CONFIG_CTEST_PARALLEL_LEVEL=1 + export ATDM_CONFIG_CTEST_PARALLEL_LEVEL=16 unset OMP_PLACES elif [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "KNL" ]]; then module load sparc-dev/intel-19.0.4_mpich-7.7.15_knl From 103bb18fe7339fe2a748e12355e17f7078b6a017 Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Sun, 10 Jan 2021 09:00:09 -0700 Subject: [PATCH 11/12] ATDM/ats1: Improve knl test performance (ATDV-409) --- cmake/std/atdm/ats1/environment.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/std/atdm/ats1/environment.sh b/cmake/std/atdm/ats1/environment.sh index 1a90026ee314..5afeccb18d44 100755 --- a/cmake/std/atdm/ats1/environment.sh +++ b/cmake/std/atdm/ats1/environment.sh @@ -36,8 +36,6 @@ if [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "HSW" ]]; then elif [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "KNL" ]]; then module load sparc-dev/intel-19.0.4_mpich-7.7.15_knl export SLURM_TASKS_PER_NODE=16 - export OMP_PLACES=threads - export OMP_PROC_BIND=spread # Ensure that no more than 8 tasks, per srun command, are launched. export ATDM_CONFIG_MPI_PRE_FLAGS="--mpi=pmi2;--ntasks-per-node=8" # KNL nodes have 272 virtual cores. @@ -46,6 +44,8 @@ elif [[ "$ATDM_CONFIG_KOKKOS_ARCH" == "KNL" ]]; then export ATDM_CONFIG_CTEST_PARALLEL_LEVEL=1 export ATDM_CONFIG_SBATCH_EXTRA_ARGS="-p knl -C cache --hint=multithread" export ATDM_CONFIG_BUILD_COUNT=8 + unset OMP_PLACES + unset OMP_PROC_BIND else echo echo "***" From 17f340e7e12be17846b5556b442b3f54f0017f43 Mon Sep 17 00:00:00 2001 From: Evan Harvey Date: Mon, 11 Jan 2021 18:07:00 -0700 Subject: [PATCH 12/12] ATDM/ats1: Fix C compiler check in updated Trilinos (ATDV-409) --- cmake/std/atdm/ATDMDevEnvSettings.cmake | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cmake/std/atdm/ATDMDevEnvSettings.cmake b/cmake/std/atdm/ATDMDevEnvSettings.cmake index 65bd6ae0c120..669d76802c8d 100644 --- a/cmake/std/atdm/ATDMDevEnvSettings.cmake +++ b/cmake/std/atdm/ATDMDevEnvSettings.cmake @@ -6,6 +6,9 @@ INCLUDE("${CMAKE_CURRENT_LIST_DIR}/utils/ATDMDevEnvUtils.cmake") +# Ensure that LDFLAGS is picked up by the CMake compiler checks +SET(CMAKE_EXE_LINKER_FLAGS "$ENV{LDFLAGS} ${CMAKE_EXE_LINKER_FLAGS}") + # # A) Assert the right env vars are set, read in env vars, and set local # defaults