summaryrefslogtreecommitdiff
path: root/Microbenchmarks/CPU-DPU/dimes24-hetsim-transfer.sh
blob: 3eb71c548cb032438bded06a87aa807d189f973b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/bin/bash

set -e

mkdir -p log/$(hostname)
fn=log/$(hostname)/$(date +%Y%m%d).t

./make-size.sh 0

run_benchmark_nmc() {
	local "$@"
	sudo limit_ranks_to_numa_node ${numa_rank}
	make -B NR_RANKS=${nr_ranks} NR_TASKLETS=1 BL=10 TRANSFER=PUSH NUMA=1
	bin/host_code -a $numa_in -b $numa_out -c $numa_cpu -w 0 -e 20 -x 0 -N 0 -I $(size -A bin/dpu_code | awk '($1 == ".text") {print $2/8}') -i ${input_size}
	return $?
}

export -f run_benchmark_nmc

# 16 MiB per DPU

(

parallel -j1 --eta --joblog ${fn}.1.joblog --resume --header : \
	run_benchmark_nmc nr_ranks={nr_ranks} numa_rank={numa_rank} numa_in={numa_in} numa_out={numa_out} numa_cpu={numa_cpu} input_size={input_size} \
	::: i $(seq 1 5) \
	::: numa_rank 0 1 \
	::: numa_in 0 1 \
	::: numa_out 0 1 \
	::: numa_cpu 0 1 \
	::: nr_ranks $(seq 1 20) \
	::: input_size 1 2097152

parallel -j1 --eta --joblog ${fn}.2.joblog --resume --header : \
	run_benchmark_nmc nr_ranks={nr_ranks} numa_rank={numa_rank} numa_in={numa_in} numa_out={numa_out} numa_cpu={numa_cpu} input_size={input_size} \
	::: i $(seq 1 5) \
	::: numa_rank any \
	::: numa_in 0 1 \
	::: numa_out 0 1 \
	::: numa_cpu 0 1 \
	::: nr_ranks $(seq 21 40) \
	::: input_size 1 2097152

) >> ${fn}.txt