diff options
| author | leochanj105 <leochanj@live.unc.edu> | 2021-10-21 19:20:36 -0400 |
|---|---|---|
| committer | leochanj105 <leochanj@live.unc.edu> | 2021-10-21 19:20:36 -0400 |
| commit | 0da35d673e1c1717821f724d8fb00379477b65be (patch) | |
| tree | ff67c2ac8a17079a3fc52129d65b4af6378043d3 | |
| parent | b6341ec8d9c3ed21e4092fe229df656094edcd53 (diff) | |
dag case study scripts
24 files changed, 180 insertions, 222 deletions
| @@ -7,7 +7,26 @@ case-study: | |||
| 7 | 7 | ||
| 8 | benchmarks: | 8 | benchmarks: |
| 9 | sed -i "s/LITMUS 1/LITMUS 0/g" extra.h | 9 | sed -i "s/LITMUS 1/LITMUS 0/g" extra.h |
| 10 | $(MAKE) -C baseline all | 10 | #$(MAKE) -C baseline all |
| 11 | $(MAKE) -C all_pairs all | 11 | #$(MAKE) -C all_pairs all |
| 12 | $(MAKE) -C dis pairs | 12 | #$(MAKE) -C dis pairs |
| 13 | $(MAKE) -C SD-VBS/benchmarks CFLAGS=-DPAIRED compile | ||
| 14 | |||
| 15 | |||
| 16 | benches := svm mser sift texture_synthesis tracking disparity localization multi_ncut stitch | ||
| 17 | bench_path := SD-VBS/benchmarks | ||
| 18 | dag_path := SD-VBS/dag_binaries | ||
| 19 | single_suffix := _qcif_single | ||
| 20 | pair_suffix := _qcif_pair | ||
| 21 | dag-case-study: | ||
| 22 | sed -i "s/LITMUS 0/LITMUS 1/g" extra.h | ||
| 23 | $(MAKE) -C SD-VBS/benchmarks compile | ||
| 24 | @for v in $(benches) ; do \ | ||
| 25 | # echo "$(dag_path)/$$v""$(single_suffix)"; \ | ||
| 26 | sudo cp $(bench_path)/$$v/data/qcif/$$v "$(dag_path)/$$v""$(single_suffix)"; \ | ||
| 27 | done | ||
| 13 | $(MAKE) -C SD-VBS/benchmarks CFLAGS=-DPAIRED compile | 28 | $(MAKE) -C SD-VBS/benchmarks CFLAGS=-DPAIRED compile |
| 29 | @for v in $(benches) ; do \ | ||
| 30 | # echo "$(dag_path)/$$v""$(pair_suffix)"; \ | ||
| 31 | sudo cp $(bench_path)/$$v/data/qcif/$$v "$(dag_path)/$$v""$(pair_suffix)"; \ | ||
| 32 | done | ||
diff --git a/SD-VBS/dag_binaries/disparity_qcif_pair b/SD-VBS/dag_binaries/disparity_qcif_pair new file mode 100755 index 0000000..85641f7 --- /dev/null +++ b/SD-VBS/dag_binaries/disparity_qcif_pair | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/disparity_qcif_single b/SD-VBS/dag_binaries/disparity_qcif_single new file mode 100755 index 0000000..84037c5 --- /dev/null +++ b/SD-VBS/dag_binaries/disparity_qcif_single | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/localization_qcif_pair b/SD-VBS/dag_binaries/localization_qcif_pair new file mode 100755 index 0000000..695375c --- /dev/null +++ b/SD-VBS/dag_binaries/localization_qcif_pair | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/localization_qcif_single b/SD-VBS/dag_binaries/localization_qcif_single new file mode 100755 index 0000000..7755bbe --- /dev/null +++ b/SD-VBS/dag_binaries/localization_qcif_single | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/mser_qcif_pair b/SD-VBS/dag_binaries/mser_qcif_pair new file mode 100755 index 0000000..cbb5562 --- /dev/null +++ b/SD-VBS/dag_binaries/mser_qcif_pair | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/mser_qcif_single b/SD-VBS/dag_binaries/mser_qcif_single new file mode 100755 index 0000000..96e2338 --- /dev/null +++ b/SD-VBS/dag_binaries/mser_qcif_single | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/multi_ncut_qcif_pair b/SD-VBS/dag_binaries/multi_ncut_qcif_pair new file mode 100755 index 0000000..eb10fa7 --- /dev/null +++ b/SD-VBS/dag_binaries/multi_ncut_qcif_pair | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/multi_ncut_qcif_single b/SD-VBS/dag_binaries/multi_ncut_qcif_single new file mode 100755 index 0000000..b7188c8 --- /dev/null +++ b/SD-VBS/dag_binaries/multi_ncut_qcif_single | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/sift_qcif_pair b/SD-VBS/dag_binaries/sift_qcif_pair new file mode 100755 index 0000000..fac7559 --- /dev/null +++ b/SD-VBS/dag_binaries/sift_qcif_pair | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/sift_qcif_single b/SD-VBS/dag_binaries/sift_qcif_single new file mode 100755 index 0000000..9f4d486 --- /dev/null +++ b/SD-VBS/dag_binaries/sift_qcif_single | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/stitch_qcif_pair b/SD-VBS/dag_binaries/stitch_qcif_pair new file mode 100755 index 0000000..e16e2b7 --- /dev/null +++ b/SD-VBS/dag_binaries/stitch_qcif_pair | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/stitch_qcif_single b/SD-VBS/dag_binaries/stitch_qcif_single new file mode 100755 index 0000000..cf88cb1 --- /dev/null +++ b/SD-VBS/dag_binaries/stitch_qcif_single | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/svm_qcif_pair b/SD-VBS/dag_binaries/svm_qcif_pair new file mode 100755 index 0000000..2443f6b --- /dev/null +++ b/SD-VBS/dag_binaries/svm_qcif_pair | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/svm_qcif_single b/SD-VBS/dag_binaries/svm_qcif_single new file mode 100755 index 0000000..24246a1 --- /dev/null +++ b/SD-VBS/dag_binaries/svm_qcif_single | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/texture_synthesis_qcif_pair b/SD-VBS/dag_binaries/texture_synthesis_qcif_pair new file mode 100755 index 0000000..5703d2e --- /dev/null +++ b/SD-VBS/dag_binaries/texture_synthesis_qcif_pair | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/texture_synthesis_qcif_single b/SD-VBS/dag_binaries/texture_synthesis_qcif_single new file mode 100755 index 0000000..1ed3ee7 --- /dev/null +++ b/SD-VBS/dag_binaries/texture_synthesis_qcif_single | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/tracking_qcif_pair b/SD-VBS/dag_binaries/tracking_qcif_pair new file mode 100755 index 0000000..4132b01 --- /dev/null +++ b/SD-VBS/dag_binaries/tracking_qcif_pair | |||
| Binary files differ | |||
diff --git a/SD-VBS/dag_binaries/tracking_qcif_single b/SD-VBS/dag_binaries/tracking_qcif_single new file mode 100755 index 0000000..cbb0c10 --- /dev/null +++ b/SD-VBS/dag_binaries/tracking_qcif_single | |||
| Binary files differ | |||
diff --git a/dag_example b/dag_example new file mode 100644 index 0000000..f52ff5c --- /dev/null +++ b/dag_example | |||
| @@ -0,0 +1,4 @@ | |||
| 1 | 1, mser_qcif, mser001, 5, 0, 1, 1, 100, 1, 7, sift_qcif, sift001 | ||
| 2 | 0, mser_qcif, mser002, 3, 1, 2, 1, 10, 1, 13 | ||
| 3 | 1, svm_qcif, svm001, 6, 0, 3, 1, 50, 1, 11, localization_qcif, localization001 | ||
| 4 | 0, tracking_qcif, tracking001, 3, 2, 4, 1, 9, 1, 37 \ No newline at end of file | ||
diff --git a/deadline_misses b/deadline_misses new file mode 100644 index 0000000..b9d3aa1 --- /dev/null +++ b/deadline_misses | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | (tracking001/497952:2) HAZARDOUS: Level-B tardy 2594240 ns, relative tardiness 0.288249 | ||
| 2 | (tracking001/497952:3) HAZARDOUS: Level-B tardy 1489684 ns, relative tardiness 0.165520 | ||
| 3 | (tracking001/497952:4) HAZARDOUS: Level-B tardy 341547 ns, relative tardiness 0.037950 | ||
| 4 | (svm001/497937:2) HAZARDOUS: Level-B tardy 92756505 ns, relative tardiness 1.855130 | ||
| 5 | (mser001/497910:2) HAZARDOUS: Level-B tardy 47794140 ns, relative tardiness 0.477941 | ||
| 6 | (svm001/497937:3) HAZARDOUS: Level-B tardy 109956550 ns, relative tardiness 2.199131 | ||
| 7 | (localization001/497941:3) HAZARDOUS: Level-B tardy 111499419 ns, relative tardiness 2.229988 | ||
| 8 | (svm001/497937:4) HAZARDOUS: Level-B tardy 127490228 ns, relative tardiness 2.549805 | ||
| 9 | (localization001/497941:4) HAZARDOUS: Level-B tardy 129233193 ns, relative tardiness 2.584664 | ||
| 10 | (mser001/497910:3) HAZARDOUS: Level-B tardy 90713709 ns, relative tardiness 0.907137 | ||
| 11 | (sift001/497913:3) HAZARDOUS: Level-B tardy 123545859 ns, relative tardiness 1.235459 | ||
| 12 | (svm001/497937:5) HAZARDOUS: Level-B tardy 166669051 ns, relative tardiness 3.333381 | ||
| 13 | (localization001/497941:5) HAZARDOUS: Level-B tardy 167447784 ns, relative tardiness 3.348956 | ||
| 14 | (localization001/497941:6) HAZARDOUS: Level-B tardy 165639831 ns, relative tardiness 3.312797 | ||
| 15 | (svm001/497937:6) HAZARDOUS: Level-B tardy 168822509 ns, relative tardiness 3.376450 | ||
| 16 | (mser001/497910:4) HAZARDOUS: Level-B tardy 128636187 ns, relative tardiness 1.286362 | ||
| 17 | (sift001/497913:4) HAZARDOUS: Level-B tardy 154725906 ns, relative tardiness 1.547259 | ||
| 18 | (svm001/497937:7) HAZARDOUS: Level-B tardy 188427477 ns, relative tardiness 3.768550 | ||
| 19 | (localization001/497941:7) HAZARDOUS: Level-B tardy 189059124 ns, relative tardiness 3.781182 | ||
| 20 | (mser001/497910:5) HAZARDOUS: Level-B tardy 137590008 ns, relative tardiness 1.375900 | ||
| 21 | (sift001/497913:5) HAZARDOUS: Level-B tardy 174780618 ns, relative tardiness 1.747806 | ||
| 22 | (mser001/497910:6) HAZARDOUS: Level-B tardy 82683605 ns, relative tardiness 0.826836 | ||
| 23 | (sift001/497913:6) HAZARDOUS: Level-B tardy 128132417 ns, relative tardiness 1.281324 | ||
| @@ -30,7 +30,7 @@ extern int sched_getcpu(); | |||
| 30 | #endif | 30 | #endif |
| 31 | 31 | ||
| 32 | // This is a proxy for "case study mode" now | 32 | // This is a proxy for "case study mode" now |
| 33 | #define LITMUS 0 | 33 | #define LITMUS 1 |
| 34 | #define MMDC_PROF 0 | 34 | #define MMDC_PROF 0 |
| 35 | 35 | ||
| 36 | #if LITMUS | 36 | #if LITMUS |
| @@ -106,7 +106,7 @@ static void _rt_load_params_itrl(int argc, char **argv) { | |||
| 106 | #if LITMUS | 106 | #if LITMUS |
| 107 | fprintf(stderr, " <task period> in ms\n"); | 107 | fprintf(stderr, " <task period> in ms\n"); |
| 108 | fprintf(stderr, " <task criticality level> 0 for Level-A, 1 for Level-B, 2 for Level-C\n"); | 108 | fprintf(stderr, " <task criticality level> 0 for Level-A, 1 for Level-B, 2 for Level-C\n"); |
| 109 | fprintf(stderr, " <task phase> in ms\n"); | 109 | fprintf(stderr, " <task phase> in ms\n"); |
| 110 | #endif /* LITMUS */ | 110 | #endif /* LITMUS */ |
| 111 | exit(1); | 111 | exit(1); |
| 112 | } | 112 | } |
| @@ -209,6 +209,7 @@ static void _rt_load_params_itrl(int argc, char **argv) { | |||
| 209 | _rt_period = ms2ns(strtoul(argv[end], NULL, 10)); | 209 | _rt_period = ms2ns(strtoul(argv[end], NULL, 10)); |
| 210 | _rt_crit = atoi(argv[end+1]); | 210 | _rt_crit = atoi(argv[end+1]); |
| 211 | _rt_phase = ms2ns(strtoul(argv[end+2], NULL, 10)); | 211 | _rt_phase = ms2ns(strtoul(argv[end+2], NULL, 10)); |
| 212 | // _rt_phase = 0; | ||
| 212 | unsigned int wait = 1; | 213 | unsigned int wait = 1; |
| 213 | if (be_migrate_to_domain(_rt_core) < 0) { | 214 | if (be_migrate_to_domain(_rt_core) < 0) { |
| 214 | perror("Unable to migrate to specified CPU"); | 215 | perror("Unable to migrate to specified CPU"); |
| @@ -221,7 +222,8 @@ static void _rt_load_params_itrl(int argc, char **argv) { | |||
| 221 | rt_param.period = _rt_period; | 222 | rt_param.period = _rt_period; |
| 222 | rt_param.relative_deadline = 0; | 223 | rt_param.relative_deadline = 0; |
| 223 | rt_param.phase = _rt_phase; | 224 | rt_param.phase = _rt_phase; |
| 224 | rt_param.priority = LITMUS_LOWEST_PRIORITY; | 225 | // rt_param.priority = LITMUS_LOWEST_PRIORITY; |
| 226 | rt_param.priority = ns2ms(_rt_phase); | ||
| 225 | rt_param.cls = _rt_crit; | 227 | rt_param.cls = _rt_crit; |
| 226 | rt_param.budget_policy = NO_ENFORCEMENT; | 228 | rt_param.budget_policy = NO_ENFORCEMENT; |
| 227 | rt_param.cpu = _rt_core; | 229 | rt_param.cpu = _rt_core; |
| @@ -435,10 +437,11 @@ static void _rt_start_loop() { | |||
| 435 | } | 437 | } |
| 436 | if (last == 0) { | 438 | if (last == 0) { |
| 437 | last = now; | 439 | last = now; |
| 438 | } else if (now > last + 60ull * _BILLION && _rt_crit >= 2) { | 440 | } |
| 439 | last = now; | 441 | // else if (now > last + 60ull * _BILLION && _rt_crit >= 2) { |
| 440 | fprintf(stderr, "(%s/%d:%lu) Ping\n", _rt_our_prog_name, gettid(), _rt_cp->job_index); | 442 | // last = now; |
| 441 | } | 443 | // fprintf(stderr, "(%s/%d:%lu) Ping\n", _rt_our_prog_name, gettid(), _rt_cp->job_index); |
| 444 | // } | ||
| 442 | if (sleep_next_period() != 0) { | 445 | if (sleep_next_period() != 0) { |
| 443 | perror("Unable to sleep for next period"); | 446 | perror("Unable to sleep for next period"); |
| 444 | } | 447 | } |
diff --git a/run_all_sd-vbs.sh b/run_all_sd-vbs.sh index 97fc4f1..2db51f2 100755 --- a/run_all_sd-vbs.sh +++ b/run_all_sd-vbs.sh | |||
| @@ -30,18 +30,18 @@ cd .. | |||
| 30 | echo "Done. Running experiments..." | 30 | echo "Done. Running experiments..." |
| 31 | # Full L3, full L2 - xi is the baseline for the pairs | 31 | # Full L3, full L2 - xi is the baseline for the pairs |
| 32 | baseXI=SD-VBS/$(date +"%b%d-%H")-c-xi-$runID.txt | 32 | baseXI=SD-VBS/$(date +"%b%d-%H")-c-xi-$runID.txt |
| 33 | echo "" | ../run_bench.sh -m base -p $coreCPU -l $maxJobs -b sd-vbsNames.txt -B -I xi $runID | 33 | echo "" | ../run_bench.sh -m base -p $coreCPU -l $maxJobs -b sd-vbsNames.txt -I xi $runID |
| 34 | # Half L3, full L2 - i3 sees effect of half L3 | 34 | # Half L3, full L2 - i3 sees effect of half L3 |
| 35 | baseI3=SD-VBS/$(date +"%b%d-%H")-c-i3-$runID.txt | 35 | baseI3=SD-VBS/$(date +"%b%d-%H")-c-i3-$runID.txt |
| 36 | echo "" | ../run_bench.sh -m base -p $coreCPU -l $maxJobs -b sd-vbsNames.txt -B -I i3 $runID | 36 | echo "" | ../run_bench.sh -m base -p $coreCPU -l $maxJobs -b sd-vbsNames.txt -I i3 $runID |
