Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/atdm-nightly-manual-updates' int…
Browse files Browse the repository at this point in the history
…o atdm-nightly
  • Loading branch information
bartlettroscoe committed Jan 5, 2020
2 parents 0295a38 + 6072019 commit 5523045
Show file tree
Hide file tree
Showing 6 changed files with 129 additions and 14 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/bin/bash
if [ "${Trilinos_TRACK}" == "" ]; then
export Trilinos_TRACK=Specialized
fi
$WORKSPACE/Trilinos/cmake/ctest/drivers/atdm/cee-rhel6/local-driver.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/bin/bash
if [ "${Trilinos_TRACK}" == "" ]; then
export Trilinos_TRACK=Specialized
fi
$WORKSPACE/Trilinos/cmake/ctest/drivers/atdm/cee-rhel6/local-driver.sh
4 changes: 3 additions & 1 deletion cmake/std/atdm/cee-rhel6/all_supported_builds.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,10 @@
export ATDM_CONFIG_CTEST_S_BUILD_NAME_PREFIX=Trilinos-atdm-

export ATDM_CONFIG_ALL_SUPPORTED_BUILDS=(
cee-rhel6_clang-5.0.1_openmpi-1.10.2_serial_static_opt # SPARC CI build
cee-rhel6_clang-5.0.1_openmpi-1.10.2_serial_static_opt
cee-rhel6_clang-5.0.1_openmpi-4.0.1_serial_static_opt # SPARC CI build
cee-rhel6_gnu-7.2.0_openmpi-1.10.2_serial_shared_opt # SPARC CI build
cee-rhel6_gnu-7.2.0_openmpi-4.0.1_serial_shared_opt # SPARC CI build
cee-rhel6_intel-18.0.2_mpich2-3.2_openmp_static_opt # SPARC CI build
cee-rhel6_intel-19.0.3_intelmpi-2018.4_serial_static_opt # SPARC Nightly bulid
)
18 changes: 16 additions & 2 deletions cmake/std/atdm/cee-rhel6/custom_builds.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,33 @@
#

# Custom compiler selection logic
if [[ $ATDM_CONFIG_BUILD_NAME == *"clang-5.0.1-openmpi-1.10.2"* ]] \

if [[ $ATDM_CONFIG_BUILD_NAME == *"clang-5.0.1-openmpi-4.0.1"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"clang-5.0.1_openmpi-4.0.1"* ]] \
; then
export ATDM_CONFIG_COMPILER=CLANG-5.0.1_OPENMPI-4.0.1

elif [[ $ATDM_CONFIG_BUILD_NAME == *"clang-5.0.1-openmpi-1.10.2"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"clang-5.0.1_openmpi-1.10.2"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"clang-5.0.1"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"clang"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"default" ]] \
; then
export ATDM_CONFIG_COMPILER=CLANG-5.0.1_OPENMPI-1.10.2
# Must list the default clang build last for correct matching of of defaults

elif [[ $ATDM_CONFIG_BUILD_NAME == *"gnu-7.2.0-openmpi-4.0.1"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"gnu-7.2.0_openmpi-4.0.1"* ]] \
; then
export ATDM_CONFIG_COMPILER=GNU-7.2.0_OPENMPI-4.0.1

elif [[ $ATDM_CONFIG_BUILD_NAME == *"gnu-7.2.0-openmpi-1.10.2"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"gnu-7.2.0_openmpi-1.10.2"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"gnu-7.2.0"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"gnu"* ]] \
; then
export ATDM_CONFIG_COMPILER=GNU-7.2.0_OPENMPI-1.10.2
# List default "gnu"* build last for correct matching!
# List default "gnu"* build last for correct matching of defaults

elif [[ $ATDM_CONFIG_BUILD_NAME == *"intel-18.0.2-mpich2-3.2"* ]] \
|| [[ $ATDM_CONFIG_BUILD_NAME == *"intel-18.0.2_mpich2-3.2"* ]] \
Expand All @@ -46,7 +58,9 @@ else
echo "*** Supported compilers include:"
echo "***"
echo "**** clang-5.0.1-openmpi-1.10.2 (default)"
echo "**** clang-5.0.1-openmpi-4.0.1"
echo "**** gnu-7.2.0-openmpi-1.10.2 (default gnu)"
echo "**** gnu-7.2.0-openmpi-4.0.1"
echo "**** intel-18.0.2-mpich2-3.2"
echo "**** intel-19.0.3-intelmpi-2018.4 (default intel)"
echo "***"
Expand Down
32 changes: 32 additions & 0 deletions cmake/std/atdm/cee-rhel6/environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,19 @@ if [[ "$ATDM_CONFIG_COMPILER" == "CLANG-5.0.1_OPENMPI-1.10.2" ]]; then
fi
export ATDM_CONFIG_MKL_ROOT=${CBLAS_ROOT}

elif [[ "$ATDM_CONFIG_COMPILER" == "CLANG-5.0.1_OPENMPI-4.0.1" ]]; then
module load sparc-dev/clang-5.0.1_openmpi-4.0.1
export OMPI_CXX=`which clang++`
export OMPI_CC=`which clang`
export OMPI_FC=`which gfortran`
export MPICC=`which mpicc`
export MPICXX=`which mpicxx`
export MPIF90=`which mpif90`
if [[ "$ATDM_CONFIG_ENABLE_STRONG_WARNINGS" == "1" ]]; then
export ATDM_CONFIG_CXX_FLAGS="${ATDM_CONFIG_GNU_CXX_WARNINGS}"
fi
export ATDM_CONFIG_MKL_ROOT=${CBLAS_ROOT}

elif [[ "$ATDM_CONFIG_COMPILER" == "GNU-7.2.0_OPENMPI-1.10.2" ]] ; then
module load sparc-dev/gcc-7.2.0_openmpi-1.10.2
unset OMP_NUM_THREADS # SPARC module sets these and we must unset!
Expand All @@ -94,6 +107,25 @@ elif [[ "$ATDM_CONFIG_COMPILER" == "GNU-7.2.0_OPENMPI-1.10.2" ]] ; then
export ATDM_CONFIG_MPI_EXEC_NUMPROCS_FLAG=-np
export ATDM_CONFIG_MPI_PRE_FLAGS="--bind-to;none"

elif [[ "$ATDM_CONFIG_COMPILER" == "GNU-7.2.0_OPENMPI-4.0.1" ]] ; then
module load sparc-dev/gcc-7.2.0_openmpi-4.0.1
unset OMP_NUM_THREADS # SPARC module sets these and we must unset!
unset OMP_PROC_BIND
unset OMP_PLACES
export OMPI_CXX=`which g++`
export OMPI_CC=`which gcc`
export OMPI_FC=`which gfortran`
export MPICC=`which mpicc`
export MPICXX=`which mpicxx`
export MPIF90=`which mpif90`
if [[ "$ATDM_CONFIG_ENABLE_STRONG_WARNINGS" == "1" ]]; then
export ATDM_CONFIG_CXX_FLAGS="${ATDM_CONFIG_GNU_CXX_WARNINGS}"
fi
export ATDM_CONFIG_MKL_ROOT=${CBLAS_ROOT}
export ATDM_CONFIG_MPI_EXEC=mpirun
export ATDM_CONFIG_MPI_EXEC_NUMPROCS_FLAG=-np
export ATDM_CONFIG_MPI_PRE_FLAGS="--bind-to;none"

elif [ "$ATDM_CONFIG_COMPILER" == "INTEL-19.0.3_INTELMPI-2018.4" ]; then
module load sparc-dev/intel-19.0.3_intelmpi-2018.4
export OMPI_CXX=`which icpc`
Expand Down
79 changes: 68 additions & 11 deletions cmake/std/atdm/ctest-s-local-test-driver.sh
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,59 @@ if [[ "$@" == "-h" ]] || [[ "$@" == "--help" ]]; then
exit 0
fi


#
# Functions
#

function atdm_ctest_s_get_build_name {
build_name_body=$1
if [[ "${ATDM_CTEST_S_USE_FULL_BUILD_NAME}" == "1" ]] ; then
build_name="${build_name_body}"
else
build_name="${ATDM_CONFIG_CTEST_S_BUILD_NAME_PREFIX}${build_name_body}"
fi
echo ${build_name}
}


function atdm_ctest_s_assert_driver_script_exists {
build_name_body=$1
build_name=$(atdm_ctest_s_get_build_name ${build_name_body})
driver_script="${ATDM_TRILINOS_DIR}/cmake/ctest/drivers/atdm/${ATDM_CONFIG_SYSTEM_NAME}/drivers/${build_name}.sh"
if [[ ! -e "${driver_script}" ]]; then
echo
echo "***"
echo "*** ERROR: The driver script:"
echo "***"
echo "*** ${driver_script}"
echo "***"
echo "*** for the specified build:"
echo "***"
echo "*** ${build_name_body}"
echo "***"
echo "*** does not exist!"
echo "***"
return 1
fi
return 0
}


function atdm_ctest_s_assert_driver_scripts_exist {
all_driver_scripts_exist=1
for build_name in ${ATDM_ARRAY_OF_BUILDS[@]} ; do
atdm_ctest_s_assert_driver_script_exists ${build_name} \
|| all_driver_scripts_exist=0
done
if [[ "${all_driver_scripts_exist}" != "1" ]]; then
echo
echo "Aborting the script and not running any builds!"
exit 1
fi
}


#
# Sound off
#
Expand Down Expand Up @@ -161,7 +214,7 @@ source $STD_ATDM_DIR/load-env.sh ${ATDM_CTEST_S_DEFAULT_ENV}

#
# Get the list of builds to run
#
#

# Must get ATDM_CONFIG_CTEST_S_BUILD_NAME_PREFIX
source $STD_ATDM_DIR/$ATDM_CONFIG_SYSTEM_NAME/all_supported_builds.sh
Expand All @@ -172,11 +225,7 @@ if [[ "$@" == "" ]] ; then
echo "Error, must provide 'all' or a list of supported build names which include:"
echo
for build_name_body in ${ATDM_CONFIG_ALL_SUPPORTED_BUILDS[@]} ; do
if [[ "${ATDM_CTEST_S_USE_FULL_BUILD_NAME}" == "1" ]] ; then
build_name="${ATDM_CONFIG_CTEST_S_BUILD_NAME_PREFIX}${build_name_body}"
else
build_name="${build_name_body}"
fi
build_name=$(atdm_ctest_s_get_build_name ${build_name_body})
echo " ${build_name}"
done
echo
Expand All @@ -195,6 +244,8 @@ for build_name in ${ATDM_ARRAY_OF_BUILDS[@]} ; do
echo " ${build_name}"
done

atdm_ctest_s_assert_driver_scripts_exist

#
# Run the builds using the ctest -S driver script
#
Expand All @@ -205,12 +256,10 @@ ln -sf ${ATDM_TRILINOS_DIR} .

for build_name_body in ${ATDM_ARRAY_OF_BUILDS[@]} ; do

if [[ "${ATDM_CTEST_S_USE_FULL_BUILD_NAME}" == "1" ]] ; then
build_name="${build_name_body}"
else
build_name="${ATDM_CONFIG_CTEST_S_BUILD_NAME_PREFIX}${build_name_body}"
fi
build_name=$(atdm_ctest_s_get_build_name ${build_name_body})

echo
date
echo
echo "Running Jenkins driver ${build_name}.sh ..."

Expand Down Expand Up @@ -251,6 +300,14 @@ for build_name_body in ${ATDM_ARRAY_OF_BUILDS[@]} ; do
${ATDM_TRILINOS_DIR}/cmake/ctest/drivers/atdm/smart-jenkins-driver.sh \
&> smart-jenkins-driver.out

echo
grep "failed out of" smart-jenkins-driver.out

cd ${BASEDIR}

done

echo
date
echo
echo "Done running all of the builds!"

0 comments on commit 5523045

Please sign in to comment.