diff --git a/test/release/examples/benchmarks/hpcc/stream.plot.drive.bash b/test/release/examples/benchmarks/hpcc/stream.plot.drive.bash new file mode 100755 index 000000000000..4cc0be202ab4 --- /dev/null +++ b/test/release/examples/benchmarks/hpcc/stream.plot.drive.bash @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +set -x -e +"$CHPL_HOME/util/test/chplExperiment" \ + --skip-if-config-error --paint-with ./stream.plot.paint.py \ + \ + `#name features options command` \ + `#-------------------------------------------------------------------------` \ + chpl gasnet ./stream.plot.gather.bash diff --git a/test/release/examples/benchmarks/hpcc/stream.plot.gather.bash b/test/release/examples/benchmarks/hpcc/stream.plot.gather.bash new file mode 100755 index 000000000000..c94722bdce29 --- /dev/null +++ b/test/release/examples/benchmarks/hpcc/stream.plot.gather.bash @@ -0,0 +1,37 @@ +#!/usr/bin/env bash + +# sets 'datFile', 'logDir', 'experimentName', and 'runLog' +source $CHPL_HOME/util/test/chplExperimentGatherUtils/prelude.bash $@ + +CHPLEXP_MAX_LOCALES=32 +locales=( 2 4 8 16 32 64 128 256 512 1024) +if [ ! -z "$CHPLEXP_MAX_LOCALES" ]; then + filtered_locales=() + for value in "${locales[@]}"; do + ((value <= $CHPLEXP_MAX_LOCALES)) && filtered_locales+=("$value") + done + locales=("${filtered_locales[@]}") +fi +echo "LOCALES TO CHECK: ${locales[@]}" + +# ----------------------------------------------------------------------------- +# Build Chapel code +# ----------------------------------------------------------------------------- +chpl --fast stream.chpl + +# ----------------------------------------------------------------------------- +# Run Chapel trials +# ----------------------------------------------------------------------------- +for x in "${locales[@]}"; do + runAndLog ./stream -nl $x --m 5723827200 +done + +# ----------------------------------------------------------------------------- +# Collect data; store in results.dat +# ----------------------------------------------------------------------------- +data=$(cat $runLog | sed -r -n 's/Performance \(GB\/s\) = //p') +set +x +echo -e "\t$experimentName" > $datFile +paste \ + <(printf "%s\n" "${locales[@]}") \ + <(printf "%s\n" "${data[@]}") >> "$datFile" diff --git a/test/release/examples/benchmarks/hpcc/stream.plot.paint.py b/test/release/examples/benchmarks/hpcc/stream.plot.paint.py new file mode 100755 index 000000000000..5c6c9dfb1717 --- /dev/null +++ b/test/release/examples/benchmarks/hpcc/stream.plot.paint.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python3 + +import sys, os +sys.path.append(os.path.join(os.environ['CHPL_HOME'], 'util', 'test')) +from chpl_plot import * + +tbls = load_tables() + +tbls.plot( + title="STREAM Performance (GB/s)", + xlabel="Locales", + ylabel="GB/s")