From cb28b8c77014b3eb197e57ccdd8199e332d48eca Mon Sep 17 00:00:00 2001 From: Nathan Ellingwood Date: Tue, 9 Oct 2018 15:42:22 -0600 Subject: [PATCH] test_all_sandia, generate_makefile updates generate_makefile: add option for users to select layout --with-layouts test_all_sandia: add options for setting the scalar, ordinal, offset types and layout --- scripts/generate_makefile.bash | 4 ++++ scripts/test_all_sandia | 24 +++++++++++++----------- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/scripts/generate_makefile.bash b/scripts/generate_makefile.bash index 1d58e0eb3e..fa908a539c 100755 --- a/scripts/generate_makefile.bash +++ b/scripts/generate_makefile.bash @@ -114,6 +114,9 @@ do --with-offsets*) KOKKOSKERNELS_OFFSETS="${key#*=}" ;; + --with-layouts*) + KOKKOSKERNELS_LAYOUTS="${key#*=}" + ;; --with-options*) KOKKOSKERNELS_OPTIONS="${key#*=}" ;; @@ -132,6 +135,7 @@ do echo "--with-scalars=[SCALARS]: Set scalars to be instantiated." echo "--with-ordinals=[ORDINALS]: Set ordinals to be instantiated." echo "--with-offsets=[OFFSETS]: Set offsets to be instantiated." + echo "--with-layouts=[LAYOUTS]: Set layouts to be instantiated (LayoutLeft,LayoutRight)." echo "--prefix=/Install/Path: Path to install the Kokkos library." echo "--with-options=[OPT]: Set KokkosKernels Options:" echo " eti_only: only allow ETI types to be enabled [default]" diff --git a/scripts/test_all_sandia b/scripts/test_all_sandia index d0ca0fcc5f..09a4d43de4 100755 --- a/scripts/test_all_sandia +++ b/scripts/test_all_sandia @@ -146,6 +146,18 @@ do --ldflags-extra*) LD_FLAGS_EXTRA="${key#*=}" ;; + --with-scalars*) + KOKKOSKERNELS_SCALARS="${key#*=}" + ;; + --with-ordinals*) + KOKKOSKERNELS_ORDINALS="${key#*=}" + ;; + --with-offsets*) + KOKKOSKERNELS_OFFSETS="${key#*=}" + ;; + --with-layouts*) + KOKKOSKERNELS_LAYOUTS="${key#*=}" + ;; --with-tpls*) KOKKOSKERNELS_ENABLE_TPLS="${key#*=}" ;; @@ -247,8 +259,6 @@ elif [ "$MACHINE" = "white" ]; then ARCH_FLAG="--arch=Power8,Kepler37" fi - NUM_JOBS_TO_RUN_IN_PARALLEL=2 - elif [ "$MACHINE" = "bowman" ]; then source /etc/profile.d/modules.sh SKIP_HWLOC=True @@ -268,8 +278,6 @@ elif [ "$MACHINE" = "bowman" ]; then ARCH_FLAG="--arch=KNL" fi - NUM_JOBS_TO_RUN_IN_PARALLEL=2 - elif [ "$MACHINE" = "mayer" ]; then SKIP_HWLOC=True export SLURM_TASKS_PER_NODE=96 @@ -286,8 +294,6 @@ elif [ "$MACHINE" = "mayer" ]; then ARCH_FLAG="--arch=ARMv8-TX2" fi - NUM_JOBS_TO_RUN_IN_PARALLEL=1 - elif [ "$MACHINE" = "blake" ]; then source /etc/profile.d/modules.sh SKIP_HWLOC=True @@ -319,8 +325,6 @@ elif [ "$MACHINE" = "blake" ]; then fi fi - NUM_JOBS_TO_RUN_IN_PARALLEL=2 - elif [ "$MACHINE" = "apollo" ]; then source /projects/sems/modulefiles/utils/sems-modules-init.sh module use /home/projects/modulefiles/local/x86-64 @@ -375,8 +379,6 @@ elif [ "$MACHINE" = "apollo" ]; then ARCH_FLAG="--arch=SNB,Volta70" fi - NUM_JOBS_TO_RUN_IN_PARALLEL=1 - else echo "Unhandled machine $MACHINE" >&2 exit 1 @@ -660,7 +662,7 @@ single_build_and_test() { run_cmd ls fake_problem >& ${desc}.configure.log || { report_and_log_test_result 1 $desc configure && return 0; } fi else - run_cmd ${KOKKOSKERNELS_PATH}/scripts/generate_makefile.bash --with-devices=$build $ARCH_FLAG --compiler=$(which $compiler_exe) --cxxflags=\"$cxxflags\" --ldflags=\"$ldflags\" $extra_args --kokkos-path=${KOKKOS_PATH} --kokkoskernels-path=${KOKKOSKERNELS_PATH} --with-tpls=${KOKKOSKERNELS_ENABLE_TPLS} &>> ${desc}.configure.log || { report_and_log_test_result 1 ${desc} configure && return 0; } + run_cmd ${KOKKOSKERNELS_PATH}/scripts/generate_makefile.bash --with-devices=$build $ARCH_FLAG --compiler=$(which $compiler_exe) --cxxflags=\"$cxxflags\" --ldflags=\"$ldflags\" $extra_args --kokkos-path=${KOKKOS_PATH} --kokkoskernels-path=${KOKKOSKERNELS_PATH} --with-scalars=${KOKKOSKERNELS_SCALARS} --with-ordinals=${KOKKOSKERNELS_ORDINALS} --with-offsets=${KOKKOSKERNELS_OFFSETS} --with-layouts=${KOKKOSKERNELS_LAYOUTS} --with-tpls=${KOKKOSKERNELS_ENABLE_TPLS} &>> ${desc}.configure.log || { report_and_log_test_result 1 ${desc} configure && return 0; } local -i build_start_time=$(date +%s) run_cmd make -j 32 build-test >& ${desc}.build.log || { report_and_log_test_result 1 ${desc} build && return 0; } local -i build_end_time=$(date +%s)