summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBirte Kristina Friesel <birte.friesel@uos.de>2025-06-02 16:11:19 +0200
committerBirte Kristina Friesel <birte.friesel@uos.de>2025-06-02 16:11:19 +0200
commit1beb6e825643638e56126475f05409031eb7c270 (patch)
tree21543481efe08419d252ca2c1734c1045f361527
parent86a2091e0d72be8646172a6835dd745b0e2a3467 (diff)
TS: Add sim benchmark
-rwxr-xr-xTS/benchmark-scripts/ccmcc25-sim.sh25
-rwxr-xr-xTS/run-paper-strong-full.sh29
-rwxr-xr-xTS/run-paper-strong-rank.sh28
-rwxr-xr-xTS/run-paper-weak.sh29
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