summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorleochanj105 <leochanj@live.unc.edu>2021-10-21 19:20:36 -0400
committerleochanj105 <leochanj@live.unc.edu>2021-10-21 19:20:36 -0400
commit0da35d673e1c1717821f724d8fb00379477b65be (patch)
treeff67c2ac8a17079a3fc52129d65b4af6378043d3
parentb6341ec8d9c3ed21e4092fe229df656094edcd53 (diff)
dag case study scripts
-rw-r--r--Makefile25
-rwxr-xr-xSD-VBS/dag_binaries/disparity_qcif_pairbin0 -> 131576 bytes
-rwxr-xr-xSD-VBS/dag_binaries/disparity_qcif_singlebin0 -> 126312 bytes
-rwxr-xr-xSD-VBS/dag_binaries/localization_qcif_pairbin0 -> 140232 bytes
-rwxr-xr-xSD-VBS/dag_binaries/localization_qcif_singlebin0 -> 130872 bytes
-rwxr-xr-xSD-VBS/dag_binaries/mser_qcif_pairbin0 -> 126912 bytes
-rwxr-xr-xSD-VBS/dag_binaries/mser_qcif_singlebin0 -> 125736 bytes
-rwxr-xr-xSD-VBS/dag_binaries/multi_ncut_qcif_pairbin0 -> 131216 bytes
-rwxr-xr-xSD-VBS/dag_binaries/multi_ncut_qcif_singlebin0 -> 125952 bytes
-rwxr-xr-xSD-VBS/dag_binaries/sift_qcif_pairbin0 -> 140328 bytes
-rwxr-xr-xSD-VBS/dag_binaries/sift_qcif_singlebin0 -> 135056 bytes
-rwxr-xr-xSD-VBS/dag_binaries/stitch_qcif_pairbin0 -> 135600 bytes
-rwxr-xr-xSD-VBS/dag_binaries/stitch_qcif_singlebin0 -> 130336 bytes
-rwxr-xr-xSD-VBS/dag_binaries/svm_qcif_pairbin0 -> 135584 bytes
-rwxr-xr-xSD-VBS/dag_binaries/svm_qcif_singlebin0 -> 130320 bytes
-rwxr-xr-xSD-VBS/dag_binaries/texture_synthesis_qcif_pairbin0 -> 136296 bytes
-rwxr-xr-xSD-VBS/dag_binaries/texture_synthesis_qcif_singlebin0 -> 131032 bytes
-rwxr-xr-xSD-VBS/dag_binaries/tracking_qcif_pairbin0 -> 135536 bytes
-rwxr-xr-xSD-VBS/dag_binaries/tracking_qcif_singlebin0 -> 130272 bytes
-rw-r--r--dag_example4
-rw-r--r--deadline_misses23
-rw-r--r--extra.h17
-rwxr-xr-xrun_all_sd-vbs.sh14
-rwxr-xr-xrun_case_study_dag.py319
24 files changed, 180 insertions, 222 deletions
diff --git a/Makefile b/Makefile
index a473a20..9205e0b 100644
--- a/Makefile
+++ b/Makefile
@@ -7,7 +7,26 @@ case-study:
7 7
8benchmarks: 8benchmarks:
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
16benches := svm mser sift texture_synthesis tracking disparity localization multi_ncut stitch
17bench_path := SD-VBS/benchmarks
18dag_path := SD-VBS/dag_binaries
19single_suffix := _qcif_single
20pair_suffix := _qcif_pair
21dag-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 @@
11, mser_qcif, mser001, 5, 0, 1, 1, 100, 1, 7, sift_qcif, sift001
20, mser_qcif, mser002, 3, 1, 2, 1, 10, 1, 13
31, svm_qcif, svm001, 6, 0, 3, 1, 50, 1, 11, localization_qcif, localization001
40, 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
diff --git a/extra.h b/extra.h
index ceaee92..f2ec84e 100644
--- a/extra.h
+++ b/extra.h
@@ -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 ..
30echo "Done. Running experiments..." 30echo "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
32baseXI=SD-VBS/$(date +"%b%d-%H")-c-xi-$runID.txt 32baseXI=SD-VBS/$(date +"%b%d-%H")-c-xi-$runID.txt
33echo "" | ../run_bench.sh -m base -p $coreCPU -l $maxJobs -b sd-vbsNames.txt -B -I xi $runID 33echo "" | ../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
35baseI3=SD-VBS/$(date +"%b%d-%H")-c-i3-$runID.txt 35baseI3=SD-VBS/$(date +"%b%d-%H")-c-i3-$runID.txt
36echo "" | ../run_bench.sh -m base -p $coreCPU -l $maxJobs -b sd-vbsNames.txt -B -I i3 $runID 36echo "" | ../run_bench.sh -m base -p $coreCPU -l $maxJobs -b sd-vbsNames.txt -I i3 $runID