From 7179d2a894dfb43844d0ec0c1064afe66489b74d Mon Sep 17 00:00:00 2001 From: Alwin Berger Date: Fri, 15 Aug 2025 08:23:23 +0000 Subject: [PATCH] update scripts --- fuzzers/FRET/benchmark/scripts/plot_diffs.r | 6 +- fuzzers/FRET/benchmark/scripts/plot_sqlite.r | 64 +++++++++---------- .../FRET/tests/wcrts/release_seq_full.edit | 3 + .../wcrts/release_seq_full_insertwc.edit | 3 + fuzzers/FRET/tests/wcrts/release_seq_int.edit | 14 +--- .../FRET/tests/wcrts/waters_seq_int_max.edit | 1 + fuzzers/FRET/tools/state2gantt/gantt_driver | 4 +- 7 files changed, 47 insertions(+), 48 deletions(-) create mode 100644 fuzzers/FRET/tests/wcrts/release_seq_full.edit create mode 100644 fuzzers/FRET/tests/wcrts/release_seq_full_insertwc.edit create mode 100644 fuzzers/FRET/tests/wcrts/waters_seq_int_max.edit diff --git a/fuzzers/FRET/benchmark/scripts/plot_diffs.r b/fuzzers/FRET/benchmark/scripts/plot_diffs.r index ab784532c9..5229f2ac4c 100755 --- a/fuzzers/FRET/benchmark/scripts/plot_diffs.r +++ b/fuzzers/FRET/benchmark/scripts/plot_diffs.r @@ -141,9 +141,9 @@ legend_styles <- c(rep("solid",10),"dotted","dashed") h_ = 300 w_ = h_*4/3 -png(file=sprintf("%s/all_tasks.png", args[2]), width=w_, height=h_) -#tikz(file=sprintf("%s/all_tasks.tex", args[2]), width=0.6*w_/72, height=0.6*h_/72) -#pdf(file=sprintf("%s/all_tasks.pdf", args[2]), width=w_/72, height=h_/72) +# png(file=sprintf("%s/all_tasks.png", args[2]), width=w_, height=h_) +# tikz(file=sprintf("%s/all_tasks.tex", args[2]), width=0.6*w_/72, height=0.6*h_/72) +pdf(file=sprintf("%s/all_tasks.pdf", args[2]), width=w_/72, height=h_/72) # plot setup diff --git a/fuzzers/FRET/benchmark/scripts/plot_sqlite.r b/fuzzers/FRET/benchmark/scripts/plot_sqlite.r index a736a73a3d..897adb0630 100755 --- a/fuzzers/FRET/benchmark/scripts/plot_sqlite.r +++ b/fuzzers/FRET/benchmark/scripts/plot_sqlite.r @@ -18,15 +18,15 @@ TOOL_TRANSLATION <- list( KNOWN_WCRT <- list( - waters_seq_bytes=212252, # via INSERT_WC + waters_seq_bytes=212191, # via INSERT_WC waters_seq_int=0, # via INSERT_WC + manual interrupt #waters_seq_int=219542, # via INSERT_WC + manual interrupt - waters_seq_full=219542,# via INSERT_WC + manual interrupt + waters_seq_full=216842,# 216325 via INSERT_WC + manual interrupt, 216842 via fuzzer waters_seq_unsync_full=234439,# via INSERT_WC + manual interrupt - polycopter_seq_dataflow_full=174866, # via INSERT_WC + manual interrupt - polycopter_seq_dataflow_int=174866, # via INSERT_WC + manual interrupt - release_seq_int=582699, # via fuzzer, equals to manual interrupts; Bug: Task3 y=0 - release_seq_full=614583 # via INSERT_WC + manual interrupt; Bug: Task3 y=0 + polycopter_seq_dataflow_full=184906, # via INSERT_WC + manual interrupt + polycopter_seq_dataflow_int=184906, # via INSERT_WC + manual interrupt + release_seq_int=559305, # via fuzzer, equals to manual interrupts + release_seq_full=625661 # 624441 via INSERT_WC + manual interrupt / 625661 via fuzzer, equals to manual interrupts ) STATIC_WCRT <- list( @@ -186,10 +186,10 @@ draw_plot <- function(data, casename) { legend_names <- c(legend_names, "static bound") } - # legend(LEGEND_POS, legend=legend_names,#"bottomright", - # col=legend_colors, - # lty=legend_styles, - # lwd=2) + legend(LEGEND_POS, legend=legend_names,#"bottomright", + col=legend_colors, + lty=legend_styles, + lwd=2) par(las = 2, mar = c(10, 5, 1, 1)) } @@ -211,28 +211,28 @@ for (cn in casenames[['casename']]) { png(file=sprintf("%s/sql_%s.png", args[2],cn[[1]]), width=w_, height=h_) draw_plot(table_list, cn[[1]]) dev.off() - # ## wide - # png(file=sprintf("%s/sql_%s_wide.png", args[2],cn[[1]]), width=2*w_, height=h_) - # draw_plot(table_list, cn[[1]]) - # dev.off() - # # tikz - # ## normal - # tikz(file=sprintf("%s/sql_%s.tex", args[2],cn[[1]]), width=0.6*w_/72, height=0.6*h_/72) - # draw_plot(table_list, cn[[1]]) - # dev.off() - # ## wide - # tikz(file=sprintf("%s/sql_%s_wide.tex", args[2],cn[[1]]), width=(w_*2)/72, height=h_/72) - # draw_plot(table_list, cn[[1]]) - # dev.off() - # # pdf - # ## normal - # pdf(file=sprintf("%s/sql_%s.pdf", args[2],cn[[1]]), width=w_/72, height=h_/72) - # draw_plot(table_list, cn[[1]]) - # dev.off() - # ## wide - # pdf(file=sprintf("%s/sql_%s_wide.pdf", args[2],cn[[1]]), width=2*w_/72, height=h_/72) - # draw_plot(table_list, cn[[1]]) - # dev.off() + ## wide + png(file=sprintf("%s/sql_%s_wide.png", args[2],cn[[1]]), width=2*w_, height=h_) + draw_plot(table_list, cn[[1]]) + dev.off() + # tikz + ## normal + tikz(file=sprintf("%s/sql_%s.tex", args[2],cn[[1]]), width=0.6*w_/72, height=0.6*h_/72) + draw_plot(table_list, cn[[1]]) + dev.off() + ## wide + tikz(file=sprintf("%s/sql_%s_wide.tex", args[2],cn[[1]]), width=(w_*2)/72, height=h_/72) + draw_plot(table_list, cn[[1]]) + dev.off() + # pdf + ## normal + pdf(file=sprintf("%s/sql_%s.pdf", args[2],cn[[1]]), width=w_/72, height=h_/72) + draw_plot(table_list, cn[[1]]) + dev.off() + ## wide + pdf(file=sprintf("%s/sql_%s_wide.pdf", args[2],cn[[1]]), width=2*w_/72, height=h_/72) + draw_plot(table_list, cn[[1]]) + dev.off() } dbDisconnect(con) diff --git a/fuzzers/FRET/tests/wcrts/release_seq_full.edit b/fuzzers/FRET/tests/wcrts/release_seq_full.edit new file mode 100644 index 0000000000..3bbd01f558 --- /dev/null +++ b/fuzzers/FRET/tests/wcrts/release_seq_full.edit @@ -0,0 +1,3 @@ +{"bytes":Left([86,143,50,228,32,85,50,24,75,60,195,116,65,16,213,40,112,217,3,0,0,3,232,0,35,35,17,244,173,199,157,174,216,36,182,63,247,109,16,230,111,11,222,24,50,37,247,111,251,19,139,191,86,135,190,61,137,119,43,147,7,43,38,51,211,209,203,43,12,74,9,190,250,247,96,48,55,163,246,131,246,189,251,69,147,183,3,229,157,13,244,153,208,1,50,209,204,89,3,135,118,239,217,91,214,188,183,50,182,29,133,97,91,214,188,183,50,182,29,133,97,149,13,188,28,41,78,24,41,78,95,2,217,51,203,11,51,237,72,67,142,98,214,19,177,140,162,1,1,1,162,78,255,156,18,3,186,36,45,18,107,136,196,41,207,247,109,16,230,111,11,222,24,50,37,8,111,251,19,139,191,86,135,190,61,137,119,43,147,7,43,38,51,211,46,203,43,12,74,9,190,250,247,177,92,175,121,80,68,21,195,183,88,221,0,131,20,21,28,109,137,157,47,191,9,115,49,247,250,188,232,190,17,221,151,34,61,160,129,37,29,52,78,103,57,173,191,8,91,148,132,141,233,121,116,7,179,104,96,176,227,201,238,7,190,247,157,252,227,216,136,64,80,201,237,11,180,45,233,249,83,97,158,17,80,64,178,142,155,17,105,166,155,239,12,114,69,135,214,214,214,214,214,214,214,214,214,78,178,109,82,241,11,128,219,106,249,113,248,179,76,208,38,11,234,11,100,67,104,76,62,226,95,196,239,76,173,246,203,71,171,249,23,67,104,76,62,226,95,196,239,76,173,246,203,71,171,249,149,227,9,59,13,204,42,244,35,214,230,10,224]), +"isr_0_times":Right([350976]), +"isr_1_times":Right([352195,665632,890320])} diff --git a/fuzzers/FRET/tests/wcrts/release_seq_full_insertwc.edit b/fuzzers/FRET/tests/wcrts/release_seq_full_insertwc.edit new file mode 100644 index 0000000000..24cfdad1cd --- /dev/null +++ b/fuzzers/FRET/tests/wcrts/release_seq_full_insertwc.edit @@ -0,0 +1,3 @@ +{"bytes":Left([142,218,238,238,238,242,109,210,149,190,121,253,93,238,121,253,149,190,149,190,19,19,93,238,121,103,238,238,238,238,211,242,242,242,242,16,16,16,16,242,238,238,238,238,238,238,238,238,238,238,221,241,242,242,242,242,242,242,242,242,242,242,242,242,241,89,247,23,108,9,37,162,28,239,70,242,242,140,99,253,191,244,15,198,107,247,19,247,26,152,192,155,133,9,103,249,9,75,221,244,151,90,110,76,79,109,95,33,255,120,120,141,77,12,79,109,95,33,255,120,120,120,120,120,120,120,120,120,120,120,120,120,255,159,121,95,117,137,174,13,28,0,4,18,120,120,120,120,120,120,87,120,120,120,120,120,120]), +"isr_0_times":Right([350864,352255,476044,665110,727345,881806,945661,1398146,1425264,1499089,1602654,1618096]), +"isr_1_times":Right([0,0,256,8214,32767,355221,512628,669070,892831])} diff --git a/fuzzers/FRET/tests/wcrts/release_seq_int.edit b/fuzzers/FRET/tests/wcrts/release_seq_int.edit index 3c4ebd7765..58a4a8af5e 100644 --- a/fuzzers/FRET/tests/wcrts/release_seq_int.edit +++ b/fuzzers/FRET/tests/wcrts/release_seq_int.edit @@ -1,11 +1,3 @@ -{"bytes":Left([175,101,239,153,39,25,250,35,208,208,167,208,191,35,23,225,24,190,143,201,201,201,201,201,235,201,247,203,225,55,35,185,91,71,235,86,156,212,175,201,18,201,201,201,201,201,201,194,236,201,201,201,201,201,201,201,225,251,131,91,91,71,235,225,251,131,92,91,7,235,127,255,255,225,201,201,201,201,54,201,187,201,201,201,201,201,201,201,201,200,201,201,201,201,201,239,239,239,239,201,201,201,239,239,240,15,239,239,255,239,201,201,201,201,201,54,201,201,201,201,201,201,201,201,201,201,201,0,255,175,101,239,153]) -, -"isr_0_times":Right([ -329095 -]), -"isr_1_times":Right([ -349851,506101,667851,860632, -3506320, 5068820, 6676010, 8894760 -]) -} - +{"bytes":Left([255,255,255,127]), +"isr_0_times":Right([415220]), +"isr_1_times":Right([0,512,25133,131072,222775,273408,494134,699000,748411,892437,1191557,1191557,1305132,1661184,1702038,1782145,1989675,2097152,2883585,6197504,6197504,6197607,6429561,6838316])} diff --git a/fuzzers/FRET/tests/wcrts/waters_seq_int_max.edit b/fuzzers/FRET/tests/wcrts/waters_seq_int_max.edit new file mode 100644 index 0000000000..1e599ca731 --- /dev/null +++ b/fuzzers/FRET/tests/wcrts/waters_seq_int_max.edit @@ -0,0 +1 @@ +{"bytes":Left([243,243,172,172,172,172,239,239,239,239,238,172,255,255,191,255,255,255,255,255,255,255,255,172,172,249,249,249,249,26,248,249,18,250,20,128,172,172,172,172,172,249,249,249,249,249,249,249,249,250,0,222,249,249,249,14,98,253,184,54,89,253,72,202,96,148,13,98,253,184,255,255,255,255,255,0,0,253,182,202,202,239,239,235,239,239,239,239,239,194,172,243,243,172,172,172,172,239,239,132,239,255,255,255,0,0,253,182,202,200,135,139,48,167,64,30,152,212,155,161,215,65,172,186,91,119,34,255,114,66,78,40,150,182,165,93,178,188,22,1,117,38,229,90,73,81,204,37,197,97,43,203,173,98,137,87,139,228,226,6,214,142,99,96,70,106,74,206,231,221,203,131,35,48,18,147,13,5,130,213,182,234,58,57,164,92,47,26,95,207,46,84,162,75,110,156,25,233,100,231,138,82,94,240,183,141,142,53,195,21,115,208,132,130,78,169,174,56,213,203,19,176,244,49,96,68,102,225,72,73,203,175,118,165,8,103,154,115,145,22,189,237,149,149,195,18,63,60,194,0,255,243,172,172,172,172,239,239,132,239,255,255,255,0,0,253,249,249,249,14,98,253,184,54,89,253,184,202,96,148,13,172,172,239,239,132,239,255,255,255,0,0,253,132,239,255,255,255,0,0,253,182,202,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,255,255,255,0,0,239,239,194,0,255,243,172,172,172,172,239,239,132,239,255,255,255,0,0,253]),"isr_0_times":Right([0,0,0,108,5072,5072,538737,574583,598207,598207,598207,637207,637207,637207,637208,637208,637233,666896,666896,666896,691811,696166,696166,696166,727715,727715,727715,727715,753937,753937,753937,778909,813639,813639,813639,817735,841286,844905,876219,876219,876225,906822,906822,912797,912797,912797,912797,921007,924004,924177,924177,955288,955365,986584,1048576,1310572,1392140,1392140,1421861,1421861,1431254,1572879,1572879,1721607,1980529,2024553,2024553,2300433,2358528,2403237,2403237,2654702,2662167,3212326,3274175,3277862,3330644,7601497,8694784,13755392,16777426,16777426,17351799,17590855,20051391,201331821,201331821,202344364,218104063,233701375,251658239,260549632,385814528,394961408,536874543,536874543,553652394,553652394,939527869,939527869,1027932172,1268711446,2007040255,2225864718,2272122368,2272122368,2367046540,2367046540,2751467495,2751467495,3154115374,3154115374,3590328064,3590328064,3604401564,3604401564,3604403712,3604403926,3640659818,3640659818,3775540496,3775540496,3775540496,3825267672,3825267672,3825959406,3892379647,4010644454,4010644454,4058644503,4076866816,4076866816,4194309728,4194309728,4278211816,4279621334,4294906171,4294906171,4294910755,4294967167,4294967295,4294967295,4294967295,4294967295,4294967295])} diff --git a/fuzzers/FRET/tools/state2gantt/gantt_driver b/fuzzers/FRET/tools/state2gantt/gantt_driver index c769999a03..220e6bb8f0 100755 --- a/fuzzers/FRET/tools/state2gantt/gantt_driver +++ b/fuzzers/FRET/tools/state2gantt/gantt_driver @@ -9,5 +9,5 @@ fi rm -f "$OFILE_A" "$OFILE_B" echo state2gantt -i $1 -a "$OFILE_A" -r "$OFILE_B" -p "$OFILE_C" $EXTRA state2gantt -i $1 -a "$OFILE_A" -r "$OFILE_B" -p "$OFILE_C" $EXTRA -echo plot_response.r "$OFILE_A" "$OFILE_B" html -plot_response.r "$OFILE_A" "$OFILE_B" html +echo plot_gantt.r "$OFILE_A" "$OFILE_B" html +plot_gantt.r "$OFILE_A" "$OFILE_B" html