From 3f9b977e900461c255f7a7754264ad29654b930a Mon Sep 17 00:00:00 2001 From: "Kelly (KT) Thompson" Date: Tue, 6 Apr 2021 12:05:18 -0600 Subject: [PATCH] Release draco-7_10_0. + Update release scripts for ATS-1, CTS-1, Darwin, cp. --- CMakeLists.txt | 2 +- ChangeLog | 34 +++++++++++++++ src/ds++/Release.cc | 18 ++++---- tools/ats1-env.sh | 35 ++++++++++++--- tools/ats2-env.sh | 8 ++-- tools/cray-env.sh | 88 ++++++++++---------------------------- tools/cts1-env.sh | 2 +- tools/darwin-arm-env.sh | 2 +- tools/darwin-power9-env.sh | 11 +++-- tools/darwin-x86_64-env.sh | 2 +- tools/release.msub | 2 +- 11 files changed, 109 insertions(+), 95 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 07f1c90e10..f944b9d5b1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,7 +13,7 @@ cmake_minimum_required(VERSION 3.18.0 FATAL_ERROR) set(ddesc "An object-oriented component library supporting radiation") string(APPEND ddesc " transport applications.") -project( Draco DESCRIPTION ${ddesc} VERSION 7.9 LANGUAGES CXX C) +project( Draco DESCRIPTION ${ddesc} VERSION 7.10 LANGUAGES CXX C) # Export compile commands for compiler tools set(CMAKE_EXPORT_COMPILE_COMMANDS TRUE) diff --git a/ChangeLog b/ChangeLog index 566f0d5120..671378b3e3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,37 @@ +2021-04-06 Kelly (KT) Thompson + + * Draco has been updated to version 7_10_0 and is tied to theb + release of Jayenne-8_8_0 and Capsaicin-1_8_0. + - https://rtt.lanl.gov/redmine/versions/96 + - https://rtt.lanl.gov/redmine/versions/97 + - https://rtt.lanl.gov/redmine/projects/capsaicin + + Draco-7_10_0, build date , build type: Debug, DBC: 7, DRACO_DIAGNOSTICS: 0 + + CCS-2 Draco Team: Kelly G. Thompson, Kent G. Budge, Matt A. Cleveland, Ryan T. Wollaeger, + Ben R. Ryan, Alex R. Long, Kendra P. Long, James S. Warsa, Tim Kelley, Jae H. Chang, + Andrew T. Till, Ondrej Certik, David A. Dixon, and Howard Pritchard. + + Prior Contributors: Gabriel M. Rockefeller, Allan B. Wollaber, Rob B. Lowrie, Paul W. Talbot, + Katerine J. Wang, Seth D. Cook, Peter Ahrens, Massimiliano Rosa, Todd J. Urbatsch, + Daniel Holladay, Jeff D. Densmore, Jeff Furnish, John McGhee, Kris C. Garrett, Mike Buksas, + Nick Myers, Paul Henning, Randy Roberts, Seth Johnson, Todd Adams, Tom Evans, + and Lori Pritchett-Sheats. + + Copyright (C) 2016-2021 Triad National Security, LLC. (C19028, LA-CC-16-016), + Released under a 3-Clause BSD License. + + * Summary of changes: + + - 76 files changed, added or removed in 43 commits. + - Begin using flake8 sytle and lint checks for commits. + - Begin supporting cce/11 on Cray systems. + - Begin running regressions on rzansel that report back to rtt.lanl.gov/cdash3. + - Extend policy for CDI integrations + - Fix NDI DEDX wrapper bug + - Provide work arounds for cmake-3.19 on Cray PEs + + 2021-01-06 Kelly (KT) Thompson * Draco has been updated to version 7_9_0 and is tied to theb diff --git a/src/ds++/Release.cc b/src/ds++/Release.cc index 3e1f7d9a11..068e60d772 100644 --- a/src/ds++/Release.cc +++ b/src/ds++/Release.cc @@ -4,7 +4,7 @@ * \author Thomas Evans * \date Thu Jul 15 09:31:44 1999 * \brief Provides the function definition for Release. - * \note Copyright (C) 2016-2020 Triad National Security, LLC., All rights reserved. */ + * \note Copyright (C) 2016-2021 Triad National Security, LLC., All rights reserved. */ //------------------------------------------------------------------------------------------------// #include "Release.hh" @@ -99,20 +99,20 @@ const std::string author_list(bool const use_doxygen_formatting) { mmdevs current_developers; // not totally fair... KT got credit for LOC when svn repository was converted to git. - current_developers.insert(fomdev(174857, "Kelly G. Thompson")); - current_developers.insert(fomdev(22559, "Kent G. Budge")); + current_developers.insert(fomdev(173050, "Kelly G. Thompson")); + current_developers.insert(fomdev(23098, "Kent G. Budge")); current_developers.insert(fomdev(7000, "Matt A. Cleveland")); - current_developers.insert(fomdev(4150, "Ryan T. Wollaeger")); - current_developers.insert(fomdev(3547, "Ben R. Ryan")); - current_developers.insert(fomdev(3224, "Alex R. Long")); - current_developers.insert(fomdev(1577, "Kendra P. Long")); + current_developers.insert(fomdev(4177, "Ryan T. Wollaeger")); + current_developers.insert(fomdev(3545, "Ben R. Ryan")); + current_developers.insert(fomdev(3047, "Alex R. Long")); + current_developers.insert(fomdev(1571, "Kendra P. Long")); current_developers.insert(fomdev(1270, "James S. Warsa")); current_developers.insert(fomdev(905, "Tim Kelley")); current_developers.insert(fomdev(360, "Jae H. Chang")); current_developers.insert(fomdev(127, "Andrew T. Till")); current_developers.insert(fomdev(91, "Ondrej Certik")); current_developers.insert(fomdev(15, "David A. Dixon")); - current_developers.insert(fomdev(5, "Howard Pritchard")); + current_developers.insert(fomdev(4, "Howard Pritchard")); mmdevs prior_developers; @@ -176,7 +176,7 @@ const std::string copyright() { msg << author_list() << "\n" << Term::ccolor(Term::fg::green) - << "Copyright (C) 2016-2020 Triad National Security, LLC. " + << "Copyright (C) 2016-2021 Triad National Security, LLC. " "(C19028, LA-CC-16-016),\n Released under a 3-Clause BSD License." << Term::ccolor(Term::fg::reset) << std::endl; diff --git a/tools/ats1-env.sh b/tools/ats1-env.sh index 636672e067..8b82dbfa88 100755 --- a/tools/ats1-env.sh +++ b/tools/ats1-env.sh @@ -24,7 +24,7 @@ else fi # The following toolchains will be used when releasing code -environments="intel1904env intel1904env-knl" +environments="cce11env intel1904env intel1904env-knl" # Extra cmake options export CONFIG_BASE+=" -DCMAKE_VERBOSE_MAKEFILE=ON" @@ -49,7 +49,27 @@ fi case "$ddir" in #------------------------------------------------------------------------------------------------# - draco-7_9*) + draco-7_9* | draco-7_10*) + function cce11env() + { + unset partition + unset jobnameext + + sysname=$(/usr/projects/hpcsoft/utilities/bin/sys_name) + module use --append "/usr/projects/draco/Modules/${sysname}" + + run "module unload draco" + run "module unload PrgEnv-intel" + run "module load PrgEnv-cray" + run "module load draco/cce1101" + run "module list" + CC=$(which cc) + CXX=$(which CC) + FC=$(which ftn) + # export LD_LIBRARY_PATH="$CRAY_LD_LIBRARY_PATH":"$LD_LIBRARY_PATH" + export CC CXX FC + } + function intel1904env() { unset partition @@ -58,9 +78,9 @@ case "$ddir" in sysname=$(/usr/projects/hpcsoft/utilities/bin/sys_name) module use --append "/usr/projects/draco/Modules/${sysname}" - if [[ "${CRAY_CPU_TARGET}" == mic-knl ]]; then - run "module swap craype-mic-knl craype-haswell" - fi + run "module unload draco" + run "module unload PrgEnv-cray" + run "module load PrgEnv-intel" run "module load draco/intel19" run "module list" CC=$(which cc) @@ -78,10 +98,13 @@ case "$ddir" in sysname=$(/usr/projects/hpcsoft/utilities/bin/sys_name) module use --append "/usr/projects/draco/Modules/${sysname}" + run "module unload draco" + run "module unload PrgEnv-cray" + run "module load PrgEnv-intel" + run "module load draco/intel19" if ! [[ "${CRAY_CPU_TARGET}" == mic-knl ]]; then run "module swap craype-haswell craype-mic-knl" fi - run "module load draco/intel19" run "module list" CC=$(which cc) CXX=$(which CC) diff --git a/tools/ats2-env.sh b/tools/ats2-env.sh index 0f18f0a9bf..527c1e28ac 100755 --- a/tools/ats2-env.sh +++ b/tools/ats2-env.sh @@ -21,7 +21,7 @@ else fi # The following toolchains will be used when releasing code -environments="gcc831env xl20200819env" +environments="gcc831env xl20201112env" # Extra cmake options export CONFIG_BASE+=" -DCMAKE_VERBOSE_MAKEFILE=ON" @@ -59,7 +59,7 @@ fi case $ddir in #--------------------------------------------------------------------------------------------------# - draco-7_9*) + draco-7_10*) function gcc831env() { run "module purge" @@ -77,7 +77,7 @@ case $ddir in FC=$(which gfortran) export CXX CC FC } - function xl20200819env() + function xl20201112env() { run "module purge" run "module use /usr/gapps/user_contrib/spack.20200402/share/spack/lmod/linux-rhel7-ppc64le/Core" @@ -86,7 +86,7 @@ case $ddir in unset CPATH unset LD_LIBRARY_PATH unset LIBRARY_PATH - run "module load draco/xl2020.08.19-cuda-11.0.2" + run "module load draco/xl2020.11.12-cuda-11.2.0-beta" run "module list" export JSM_JSRUN_NO_WARN_OVERSUBSCRIBE=1 } diff --git a/tools/cray-env.sh b/tools/cray-env.sh index 73da7d7bcf..63cf0868a8 100755 --- a/tools/cray-env.sh +++ b/tools/cray-env.sh @@ -8,7 +8,7 @@ export VENDOR_DIR=/usr/projects/draco/vendors export CRAYPE_LINK_TYPE=dynamic # Sanity Check (Cray machines have very fragile module systems!) -if [[ -d $ParMETIS_ROOT_DIR ]]; then +if [[ -d "${ParMETIS_ROOT_DIR:-false}" ]]; then echo "ERROR: This script should be run from a clean environment." echo " Try running 'rmdracoenv'." exit 1 @@ -16,14 +16,14 @@ fi # symlinks will be generated for each machine that point to the correct # installation directory. -if [[ `df | grep yellow | grep -c lustre` -gt 0 ]]; then +if [[ $(df | grep yellow | grep -c lustre) -gt 0 ]]; then export siblings="capulin" else export siblings="thunder" fi # The following toolchains will be used when releasing code -environments="gcc830" #" cce90180" +environments="cce11env" # Extra cmake options export CONFIG_BASE+=" -DCMAKE_VERBOSE_MAKEFILE=ON" @@ -32,74 +32,33 @@ export CONFIG_BASE+=" -DCMAKE_VERBOSE_MAKEFILE=ON" # Specify environments (modules) #--------------------------------------------------------------------------------------------------# -if ! [[ $ddir ]] ;then +if [[ "${ddir:-false}" == false ]] ;then echo "FATAL ERROR: Expected ddir to be set in the environment. (cray-env.sh)" exit 1 fi -case $ddir in +case "$ddir" in #--------------------------------------------------------------------------------------------------# - draco-7_3* | draco-7_4* | draco-7_5* | draco-7_6*) - function gcc830() + draco-7_10*) + function cce11env() { - run "module load user_contrib friendly-testing" - run "module unload cmake numdiff git" - run "module unload gsl random123 eospac" - run "module unload trilinos ndi" - run "module unload superlu-dist metis parmetis" - run "module unload csk lapack" - run "module unload PrgEnv-allinea PrgEnv-cray PrgEnv-gnu" - run "module unload lapack " - run "module unload cce gcc" - run "module unload papi perftools" - run "module load PrgEnv-gnu" - run "module load gcc/8.3.0" - cver="gcc-8.3.0" - mver="mpt-7.7.10" - run "module load cmake numdiff/5.9.0-${cver} gsl/2.5-${cver}" - run "module load openblas/0.3.6-${cver} metis/5.1.0-${cver}" - run "module load eospac/6.4.0-${cver} random123/1.09-${cver}" - run "module load parmetis/4.0.3-${cver}-${mver}" - run "module load superlu-dist/5.4.0-${cver}-${mver}-openblas" - run "module load trilinos/12.14.1-${cver}-${mver}-openblas" - run "module load cray-python/3.6.5.6 qt" - run "module use --append ${VENDOR_DIR}-ec/modulefiles-capulin" - run "module load csk/0.5.0-${cver} quo" - # ndi - run "module list" - export CC=`which cc` - export CXX=`which CC` - export FC=`which ftn` -# export LD_LIBRARY_PATH=$CRAY_LD_LIBRARY_PATH:$LD_LIBRARY_PATH - } + unset partition + unset jobnameext - function cce90180() - { - run "module load user_contrib friendly-testing" - run "module unload cmake numdiff git" - run "module unload gsl random123 eospac" - run "module unload trilinos ndi" - run "module unload superlu-dist metis parmetis" - run "module unload csk lapack" - run "module unload PrgEnv-allinea PrgEnv-cray PrgEnv-gnu" - run "module unload lapack " - run "module unload cce gcc" - run "module unload papi perftools" + sysname=$(/usr/projects/hpcsoft/utilities/bin/sys_name) + module use --append "/usr/projects/draco/Modules/${sysname}" + + run "module unload draco" + run "module unload PrgEnv-intel" run "module load PrgEnv-cray" - run "module load cmake numdiff/5.9.0-cce-9.0.1.80 gsl/2.5-cce-9.0.1.80" - run "module load metis/5.1.0-cce-9.0.1.80" - run "module load eospac/6.4.0-cce-9.0.1.80 random123/1.09-cce-9.0.1.80" - run "module load parmetis/4.0.3-cce-9.0.1.80-mpt-7.7.8" - # run "module load superlu-dist/5.4.0-cce-9.0.1.80-mpt-7.7.8-openblas" - run "module load cray-python/3.6.5.6 qt" - run "module use --append ${VENDOR_DIR}-ec/modulefiles-capulin" - run "module load csk/0.4.2-cce-9.0.1.80" + run "module load draco/cce11" run "module list" - export CC=`which cc` - export CXX=`which CC` - export FC=`which ftn` -# export LD_LIBRARY_PATH=$CRAY_LD_LIBRARY_PATH:$LD_LIBRARY_PATH + CC=$(which cc) + CXX=$(which CC) + FC=$(which ftn) + # export LD_LIBRARY_PATH="$CRAY_LD_LIBRARY_PATH":"$LD_LIBRARY_PATH" + export CC CXX FC } ;; @@ -116,15 +75,14 @@ esac #--------------------------------------------------------------------------------------------------# for env in $environments; do - if [[ `fn_exists $env` -gt 0 ]]; then - if [[ $verbose ]]; then echo "export -f $env"; fi - export -f $env + if [[ $(fn_exists "$env") -gt 0 ]]; then + if [[ ${verbose:-false} != false ]]; then echo "export -f $env"; fi + export -f "${env?}" else die "Requested environment $env is not defined." fi done - ##---------------------------------------------------------------------------## ## End ##---------------------------------------------------------------------------## diff --git a/tools/cts1-env.sh b/tools/cts1-env.sh index 7d7f14e31f..0b8f51e895 100755 --- a/tools/cts1-env.sh +++ b/tools/cts1-env.sh @@ -44,7 +44,7 @@ fi case "${ddir}" in #--------------------------------------------------------------------------------------------------# - draco-7_9*) + draco-7_9* | draco-7_10*) function intel1904env { run "module purge" diff --git a/tools/darwin-arm-env.sh b/tools/darwin-arm-env.sh index b30215eeb7..bc66d8af5e 100644 --- a/tools/darwin-arm-env.sh +++ b/tools/darwin-arm-env.sh @@ -19,7 +19,7 @@ environments="armgcc930env" case "${ddir}" in #---------------------------------------------------------------------------# - draco-7_9*) + draco-7_10*) function armgcc930env() { export darwin_queue="-p arm" diff --git a/tools/darwin-power9-env.sh b/tools/darwin-power9-env.sh index d596a7f55a..d327626508 100644 --- a/tools/darwin-power9-env.sh +++ b/tools/darwin-power9-env.sh @@ -10,8 +10,7 @@ source "${draco_script_dir:-unknown}/darwin-env.sh" export siblings="darwin-power9" # The following toolchains will be used when releasing code: -environments="p9gcc730env p9xl16117env" -#environments="p9gcc730env" +environments="p9gcc930env p9xl16117env" #--------------------------------------------------------------------------------------------------# # Specify environments (modules) @@ -20,13 +19,13 @@ environments="p9gcc730env p9xl16117env" case "${ddir}" in #---------------------------------------------------------------------------# - draco-7_9*) - function p9gcc730env() + draco-7_10*) + function p9gcc930env() { export darwin_queue="-p power9-asc -A asc-priority" run "module purge" run "module use --append /projects/draco/Modules" - run "module load draco/power9-gcc730" + run "module load draco/power9-gcc930-smpi" run "module list" # work around for known openmpi issues: @@ -59,7 +58,7 @@ case "${ddir}" in echo "VENDOR_DIR = $VENDOR_DIR" echo "DRACO_ARCH = $DRACO_ARCH" run "module use --append /projects/draco/Modules" - run "module load draco/power9-xl16117" + run "module load draco/power9-xl16117-smpi" run "module list" # work around for known openmpi issues: diff --git a/tools/darwin-x86_64-env.sh b/tools/darwin-x86_64-env.sh index edef472053..1c0e62b49d 100644 --- a/tools/darwin-x86_64-env.sh +++ b/tools/darwin-x86_64-env.sh @@ -25,7 +25,7 @@ popd || exit case "${ddir:=notset}" in #---------------------------------------------------------------------------# - draco-7_9*) + draco-7_10*) function x86gcc930env() { export darwin_queue="-p volta-x86" diff --git a/tools/release.msub b/tools/release.msub index ffeb8ffef4..74d4ebdf78 100755 --- a/tools/release.msub +++ b/tools/release.msub @@ -31,7 +31,7 @@ export build_pe verbose=1 if test $verbose == 1; then echo -ne "\nStarting release build for ${package:-unknown} - ${rttversion:-unknown} " - echo "- ${buildflavor} - ${TARGET:-unknown}:" + echo "- ${buildflavor}:" echo "================================================================================" echo "install_prefix = ${install_prefix:-unknown}/$rttversion" echo "build_prefix = ${build_prefix:-unknown}/$rttversion"