diff options
Diffstat (limited to 'run_all_sd-vbs.sh')
-rwxr-xr-x | run_all_sd-vbs.sh | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/run_all_sd-vbs.sh b/run_all_sd-vbs.sh new file mode 100755 index 0000000..1f5948d --- /dev/null +++ b/run_all_sd-vbs.sh | |||
@@ -0,0 +1,67 @@ | |||
1 | #!/bin/bash | ||
2 | # Copyright 2020 Joshua Bakita | ||
3 | # Runs SD-VBS in every configuration needed | ||
4 | # for the paper and schedulability studies | ||
5 | |||
6 | maxJobs=$1 | ||
7 | runID=$2 | ||
8 | |||
9 | if [ $# -lt 2 ]; then | ||
10 | echo "Usage $0 <number of iterations> <run ID>" | ||
11 | exit | ||
12 | fi | ||
13 | if [[ "$EUID" != 0 ]]; then | ||
14 | echo "You need to be root to enable spatial isolation!" | ||
15 | exit | ||
16 | fi | ||
17 | date | ||
18 | |||
19 | # Run the pairs baseline and some comparisons to examine the effect of less cache | ||
20 | echo "Building benchmarks in unpaired configuration..." | ||
21 | cd SD-VBS/benchmarks | ||
22 | make compile -j30 > /dev/null # Suppress noisy output | ||
23 | cd .. | ||
24 | echo "Done. Running experiments..." | ||
25 | # Full L3, full L2 - xi is the baseline for the pairs | ||
26 | baseXI=SD-VBS/$(date +"%b%d-%H")-c-xi-$runID.txt | ||
27 | echo "" | ../run_bench.sh -m base -p 15 -l $maxJobs -b sd-vbsNames.txt -B -I xi $runID | ||
28 | # Half L3, full L2 - i3 sees effect of half L3 | ||
29 | baseI3=SD-VBS/$(date +"%b%d-%H")-c-i3-$runID.txt | ||
30 | echo "" | ../run_bench.sh -m base -p 15 -l $maxJobs -b sd-vbsNames.txt -B -I i3 $runID | ||
31 | # Half L3, half L2 - additional effect of half L2 | ||
32 | baseI=SD-VBS/$(date +"%b%d-%H")-c-i-$runID.txt | ||
33 | echo "" | ../run_bench.sh -m base -p 15 -l $maxJobs -b sd-vbsNames.txt -B -I i $runID | ||
34 | date | ||
35 | |||
36 | # Run the Level-C pairs | ||
37 | pairC=SD-VBS/$(date +"%b%d-%H")-c-xi-async-$runID.txt | ||
38 | echo "" | ../run_bench.sh -m pair -p 15 -P 31 -l $maxJobs -b sd-vbsNames.txt -B -I xi -A $runID | ||
39 | date | ||
40 | |||
41 | # Run the Level-A/-B pairs | ||
42 | echo "Building benchmarks in paired configuration..." | ||
43 | cd benchmarks | ||
44 | make CFLAGS=-DPAIRED compile -j30 > /dev/null # Suppress noisy output | ||
45 | cd .. | ||
46 | echo "Done. Continuing experiments..." | ||
47 | # No cache isolation | ||
48 | pairXI=SD-VBS/$(date +"%b%d-%H")-c-xi-$runID"-A.txt and -B.txt" | ||
49 | echo "" | ../run_bench.sh -m pair -p 15 -P 31 -l $maxJobs -b sd-vbsNames.txt -B -I xi $runID | ||
50 | # Shared L2, split L3 | ||
51 | pairI3=SD-VBS/$(date +"%b%d-%H")-c-i3-$runID"-A.txt and -B.txt" | ||
52 | echo "" | ../run_bench.sh -m pair -p 15 -P 31 -l $maxJobs -b sd-vbsNames.txt -B -I i3 $runID | ||
53 | # Split L2, split L3 | ||
54 | pairI=SD-VBS/$(date +"%b%d-%H")-c-i-$runID"-A.txt and -B.txt" | ||
55 | echo "" | ../run_bench.sh -m pair -p 15 -P 31 -l $maxJobs -b sd-vbsNames.txt -B -I i $runID | ||
56 | date | ||
57 | |||
58 | echo "==== DONE ====" | ||
59 | echo "Results are in:" | ||
60 | echo "- $baseXI" | ||
61 | echo "- $baseI3" | ||
62 | echo "- $baseI" | ||
63 | echo "- $pairXI" | ||
64 | echo "- $pairI3" | ||
65 | echo "- $pairI" | ||
66 | echo "- $pairC" | ||
67 | |||