diff options
author | Birte Kristina Friesel <birte.friesel@uos.de> | 2025-06-02 16:11:19 +0200 |
---|---|---|
committer | Birte Kristina Friesel <birte.friesel@uos.de> | 2025-06-02 16:11:19 +0200 |
commit | 1beb6e825643638e56126475f05409031eb7c270 (patch) | |
tree | 21543481efe08419d252ca2c1734c1045f361527 | |
parent | 86a2091e0d72be8646172a6835dd745b0e2a3467 (diff) |
TS: Add sim benchmark
-rwxr-xr-x | TS/benchmark-scripts/ccmcc25-sim.sh | 25 | ||||
-rwxr-xr-x | TS/run-paper-strong-full.sh | 29 | ||||
-rwxr-xr-x | TS/run-paper-strong-rank.sh | 28 | ||||
-rwxr-xr-x | TS/run-paper-weak.sh | 29 |
4 files changed, 25 insertions, 86 deletions
diff --git a/TS/benchmark-scripts/ccmcc25-sim.sh b/TS/benchmark-scripts/ccmcc25-sim.sh new file mode 100755 index 0000000..0df03d9 --- /dev/null +++ b/TS/benchmark-scripts/ccmcc25-sim.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +mkdir -p log/$(hostname) + +run_benchmark_nmc() { + local "$@" + set -e + make -B NR_DPUS=${nr_dpus} NR_TASKLETS=${nr_tasklets} BL=8 \ + aspectc=1 aspectc_timing=1 dfatool_timing=0 + bin/ts_host -w 0 -e 5 -n ${ts_size} 2>&1 +} + +export -f run_benchmark_nmc + +fn=log/$(hostname)/ccmcc25-sim + +source ~/lib/local/upmem/upmem-2025.1.0-Linux-x86_64/upmem_env.sh simulator + +echo "prim-benchmarks TS $(git describe --all --long) $(git rev-parse HEAD) $(date -R)" >> ${fn}.txt + +parallel -j1 --eta --joblog ${fn}.joblog --resume --header : \ + run_benchmark_nmc nr_dpus={nr_dpus} nr_tasklets=8 ts_size={ts_size} \ + ::: nr_dpus 1 2 4 8 16 32 48 64 \ + ::: ts_size 2048 4096 8192 16384 32768 \ +>> ${fn}.txt diff --git a/TS/run-paper-strong-full.sh b/TS/run-paper-strong-full.sh deleted file mode 100755 index 5b7656d..0000000 --- a/TS/run-paper-strong-full.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -set -e - -# BL: use 2^(BL) B blocks for MRAM <-> WRAM transfers on PIM module -# T: data type -# -w: number of un-timed warmup iterations -# -e: number of timed iterations -# -i; ignored, always uses 262144 elements - -( - -echo "prim-benchmarks TS strong-full (dfatool edition)" -echo "Started at $(date)" -echo "Revision $(git describe --always)" - -# >2048 is not part of upstream -# 12 tasklets are not part of upstream (code does not work with 16…) -for nr_dpus in 2543 2304 256 512 1024 2048; do - for nr_tasklets in 1 2 4 8 12 16; do - echo - # upstream code did not respect $BL in the makefile and used 256B (BL=8) instead. - # This appears to be faster than BL=10. - if make -B NR_DPUS=${nr_dpus} NR_TASKLETS=${nr_tasklets} BL=8; then - timeout --foreground -k 1m 30m bin/ts_host -w 0 -e 100 -n 33554432 || true - fi - done -done -) | tee log-paper-strong-full.txt diff --git a/TS/run-paper-strong-rank.sh b/TS/run-paper-strong-rank.sh deleted file mode 100755 index 58ad641..0000000 --- a/TS/run-paper-strong-rank.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash - -set -e - -# BL: use 2^(BL) B blocks for MRAM <-> WRAM transfers on PIM module -# T: data type -# -w: number of un-timed warmup iterations -# -e: number of timed iterations -# -i; ignored, always uses 262144 elements - -( - -echo "prim-benchmarks TS strong-rank (dfatool edition)" -echo "Started at $(date)" -echo "Revision $(git describe --always)" - -# >64 are not part of upstream config space -for nr_dpus in 128 1 4 16 64; do - for nr_tasklets in 1 2 4 8 16; do - echo - # upstream code did not respect $BL in the makefile and used 256B (BL=8) instead. - # BL=10 appears to be slightly faster. - if make -B NR_DPUS=${nr_dpus} NR_TASKLETS=${nr_tasklets} BL=10; then - timeout --foreground -k 1m 60m bin/ts_host -w 0 -e 50 -n 524288 || true - fi - done -done -) | tee log-paper-strong-rank.txt diff --git a/TS/run-paper-weak.sh b/TS/run-paper-weak.sh deleted file mode 100755 index 64892f4..0000000 --- a/TS/run-paper-weak.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -set -e - -# BL: use 2^(BL) B blocks for MRAM <-> WRAM transfers on PIM module -# T: data type -# -w: number of un-timed warmup iterations -# -e: number of timed iterations -# -i; ignored, always uses 262144 elements - -( - -echo "prim-benchmarks TS weak (dfatool edition)" -echo "Started at $(date)" -echo "Revision $(git describe --always)" - -# 256 and 512 are not part of upstream -for nr_dpus in 1 4 16 64; do - for nr_tasklets in 1 2 4 8 16; do - echo - # upstream code did not respect $BL in the makefile and used 256B (BL=8) instead. - # BL=10 appears to be slightly faster. - if make -B NR_DPUS=${nr_dpus} NR_TASKLETS=${nr_tasklets} BL=8; then - i=$(( nr_dpus * 524288 )) - timeout --foreground -k 1m 30m bin/ts_host -w 0 -e 100 -n $i || true - fi - done -done -) | tee log-paper-weak.txt |