summaryrefslogtreecommitdiff
path: root/BS/benchmark-scripts
diff options
context:
space:
mode:
Diffstat (limited to 'BS/benchmark-scripts')
-rwxr-xr-xBS/benchmark-scripts/ccmcc25-sim.sh27
-rwxr-xr-xBS/benchmark-scripts/ccmcc25.sh32
-rwxr-xr-xBS/benchmark-scripts/milos-hbm-cxl.sh44
3 files changed, 103 insertions, 0 deletions
diff --git a/BS/benchmark-scripts/ccmcc25-sim.sh b/BS/benchmark-scripts/ccmcc25-sim.sh
new file mode 100755
index 0000000..05e7f87
--- /dev/null
+++ b/BS/benchmark-scripts/ccmcc25-sim.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+mkdir -p log/$(hostname)
+
+run_benchmark_nmc() {
+ local "$@"
+ set -e
+ make -B NR_DPUS=${nr_dpus} NR_TASKLETS=${nr_tasklets} \
+ INPUT_SIZE=${nr_elements} PROBLEM_SIZE=${nr_queries} \
+ aspectc=1 aspectc_timing=1 dfatool_timing=0
+ bin/bs_host -w 0 -e 5 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 BS $(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=16 nr_elements={nr_elements} nr_queries={nr_queries} \
+ ::: nr_dpus 1 2 4 8 16 32 48 64 \
+ ::: nr_elements $((2**18)) $((2**19)) $((2**20)) $((2**21)) $((2**22)) \
+ ::: nr_queries 512 1024 2048 4096 \
+>> ${fn}.txt
diff --git a/BS/benchmark-scripts/ccmcc25.sh b/BS/benchmark-scripts/ccmcc25.sh
new file mode 100755
index 0000000..186baf6
--- /dev/null
+++ b/BS/benchmark-scripts/ccmcc25.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+mkdir -p log/$(hostname)
+
+run_benchmark_nmc() {
+ local "$@"
+ set -e
+ sudo limit_ranks_to_numa_node ${numa_rank}
+ make -B NR_DPUS=${nr_dpus} NR_TASKLETS=${nr_tasklets} \
+ INPUT_SIZE=${nr_elements} PROBLEM_SIZE=${nr_queries} \
+ aspectc=1 aspectc_timing=1 dfatool_timing=0
+ bin/bs_host -w 0 -e 50 2>&1
+}
+
+export -f run_benchmark_nmc
+
+for sdk in 2023.2.0 2024.1.0 2024.2.0 2025.1.0; do
+
+ fn=log/$(hostname)/ccmcc25-sdk${sdk}
+
+ source /opt/upmem/upmem-${sdk}-Linux-x86_64/upmem_env.sh
+
+ echo "prim-benchmarks BS $(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=16 numa_rank=any nr_elements={nr_elements} nr_queries={nr_queries} \
+ ::: nr_dpus 64 128 256 512 768 1024 1536 2048 2304 \
+ ::: nr_elements $((2**20)) $((2**21)) $((2**22)) \
+ ::: nr_queries 524288 1048576 2097152 \
+ >> ${fn}.txt
+
+done
diff --git a/BS/benchmark-scripts/milos-hbm-cxl.sh b/BS/benchmark-scripts/milos-hbm-cxl.sh
new file mode 100755
index 0000000..79d02c7
--- /dev/null
+++ b/BS/benchmark-scripts/milos-hbm-cxl.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+cd baselines/cpu
+make -B numa=1
+
+mkdir -p log/$(hostname)
+fn=log/$(hostname)/milos-hbm-cxl
+
+# * uint64 == 128 MiB
+num_queries_hbm=16777216
+
+run_benchmark() {
+ local "$@"
+ OMP_NUM_THREADS=${nr_threads} ./bs_omp ${input_size} ${num_queries} $ram $cpu 2>&1
+ return $?
+}
+
+export -f run_benchmark
+
+(
+
+echo "single-node execution, HBM ref (1/2)" >&2
+
+# 4 GiB
+parallel -j1 --eta --joblog ${fn}.1.joblog --resume --header : \
+ run_benchmark i={i} nr_threads={nr_threads} ram={ram} cpu={cpu} \
+ input_size=$(perl -E 'say 2 ** 29') num_queries=${num_queries_hbm} \
+ ::: i $(seq 1 5) \
+ ::: nr_threads 1 2 4 8 12 16 \
+ ::: cpu $(seq 0 7) \
+ ::: ram $(seq 0 16)
+
+echo "multi-node execution, HBM ref (2/2)" >&2
+
+# 8 GiB
+parallel -j1 --eta --joblog ${fn}.2.joblog --resume --header : \
+ run_benchmark i={i} nr_threads={nr_threads} ram={ram} cpu={cpu} \
+ input_size=$(perl -E 'say 2 ** 30') num_queries=${num_queries_hbm} \
+ ::: i $(seq 1 40) \
+ ::: nr_threads 32 48 64 96 128 \
+ ::: cpu -1 \
+ ::: ram $(seq 0 16)
+
+) >> ${fn}.txt