From cf895768fea092a01543786099449f5497fe2d3d Mon Sep 17 00:00:00 2001 From: Florian Sattler Date: Tue, 10 Oct 2023 16:15:02 +0200 Subject: [PATCH] Adds new regression patches and SynthIP (#13) --- DunePerfRegression/cg_solver_apply_100ms.info | 1 + SynthIPCombined/regression_1.patch | 15 ++++++++------- SynthIPCombined/regression_2.patch | 9 +++++---- SynthIPRuntime/regression_1.patch | 15 ++++++++------- SynthIPRuntime/regression_2.patch | 9 +++++---- SynthIPTemplate/regression_1.patch | 15 ++++++++------- SynthIPTemplate/regression_2.patch | 9 +++++---- SynthIPTemplate2/regression_1.patch | 15 ++++++++------- SynthIPTemplate2/regression_2.patch | 9 +++++---- bzip2/regression_1.info | 11 +++++++++++ bzip2/regression_1.patch | 13 +++++++++++++ 11 files changed, 77 insertions(+), 44 deletions(-) create mode 100644 bzip2/regression_1.info create mode 100644 bzip2/regression_1.patch diff --git a/DunePerfRegression/cg_solver_apply_100ms.info b/DunePerfRegression/cg_solver_apply_100ms.info index f60259c..7d3e1a1 100644 --- a/DunePerfRegression/cg_solver_apply_100ms.info +++ b/DunePerfRegression/cg_solver_apply_100ms.info @@ -13,4 +13,5 @@ tags: - template - solver - 100ms +- perf_prec - CGSolver diff --git a/SynthIPCombined/regression_1.patch b/SynthIPCombined/regression_1.patch index 1c98d00..cde1869 100644 --- a/SynthIPCombined/regression_1.patch +++ b/SynthIPCombined/regression_1.patch @@ -1,5 +1,5 @@ diff --git a/projects/SynthIPCombined/main.cpp b/projects/SynthIPCombined/main.cpp -index e6685d5..9ee15b6 100644 +index e6685d5..7af705f 100644 --- a/projects/SynthIPCombined/main.cpp +++ b/projects/SynthIPCombined/main.cpp @@ -1,3 +1,5 @@ @@ -8,11 +8,12 @@ index e6685d5..9ee15b6 100644 #include #include #include -@@ -482,6 +484,7 @@ struct decompress_t { - } +@@ -460,6 +462,8 @@ struct decompress_t { + state.state = state_t::START; + } - if (state.state == state_t::READ_DATA) { -+ fp_util::busy_sleep_for_secs(10); - - size_t len = state.msg; ++ fp_util::busy_sleep_for_millisecs(1); ++ + while (i != e) { + if (out == oute) { diff --git a/SynthIPCombined/regression_2.patch b/SynthIPCombined/regression_2.patch index a366801..481f078 100644 --- a/SynthIPCombined/regression_2.patch +++ b/SynthIPCombined/regression_2.patch @@ -1,5 +1,5 @@ diff --git a/projects/SynthIPCombined/main.cpp b/projects/SynthIPCombined/main.cpp -index e6685d5..e122ad4 100644 +index e6685d5..e2a044d 100644 --- a/projects/SynthIPCombined/main.cpp +++ b/projects/SynthIPCombined/main.cpp @@ -4,6 +4,8 @@ @@ -11,11 +11,12 @@ index e6685d5..e122ad4 100644 /// This is a synthetic case study using templates and load-time parameters /// for configuration. /// -@@ -266,6 +268,7 @@ struct compress_t { +@@ -265,6 +267,8 @@ struct compress_t { + size_t blocksize = offsets.blocksize; ++ fp_util::busy_sleep_for_millisecs(1); ++ while (i != e) { -+ fp_util::busy_sleep_for_millisecs(10); unsigned char c = *i; - diff --git a/SynthIPRuntime/regression_1.patch b/SynthIPRuntime/regression_1.patch index 77e18ae..082918a 100644 --- a/SynthIPRuntime/regression_1.patch +++ b/SynthIPRuntime/regression_1.patch @@ -1,5 +1,5 @@ diff --git a/projects/SynthIPRuntime/main.cpp b/projects/SynthIPRuntime/main.cpp -index ede9ff9..70f8de7 100644 +index ede9ff9..37200f0 100644 --- a/projects/SynthIPRuntime/main.cpp +++ b/projects/SynthIPRuntime/main.cpp @@ -1,3 +1,5 @@ @@ -8,11 +8,12 @@ index ede9ff9..70f8de7 100644 #include #include #include -@@ -481,6 +483,7 @@ struct decompress_t { - } +@@ -459,6 +461,8 @@ struct decompress_t { + state.state = state_t::START; + } - if (state.state == state_t::READ_DATA) { -+ fp_util::busy_sleep_for_secs(10); - - size_t len = state.msg; ++ fp_util::busy_sleep_for_millisecs(1); ++ + while (i != e) { + if (out == oute) { diff --git a/SynthIPRuntime/regression_2.patch b/SynthIPRuntime/regression_2.patch index de537f1..e4873ee 100644 --- a/SynthIPRuntime/regression_2.patch +++ b/SynthIPRuntime/regression_2.patch @@ -1,5 +1,5 @@ diff --git a/projects/SynthIPRuntime/main.cpp b/projects/SynthIPRuntime/main.cpp -index ede9ff9..a5c27f5 100644 +index ede9ff9..13873cd 100644 --- a/projects/SynthIPRuntime/main.cpp +++ b/projects/SynthIPRuntime/main.cpp @@ -4,6 +4,8 @@ @@ -11,11 +11,12 @@ index ede9ff9..a5c27f5 100644 /// This is a synthetic case study using load-time configuration. /// /// Features: -@@ -265,6 +267,7 @@ struct compress_t { +@@ -264,6 +266,8 @@ struct compress_t { + size_t blocksize = offsets.blocksize; ++ fp_util::busy_sleep_for_millisecs(1); ++ while (i != e) { -+ fp_util::busy_sleep_for_millisecs(10); unsigned char c = *i; - diff --git a/SynthIPTemplate/regression_1.patch b/SynthIPTemplate/regression_1.patch index 64ecdd7..e6b2b45 100644 --- a/SynthIPTemplate/regression_1.patch +++ b/SynthIPTemplate/regression_1.patch @@ -1,5 +1,5 @@ diff --git a/projects/SynthIPTemplate/main.cpp b/projects/SynthIPTemplate/main.cpp -index 49bf78a..19d0962 100644 +index 49bf78a..cdab9e6 100644 --- a/projects/SynthIPTemplate/main.cpp +++ b/projects/SynthIPTemplate/main.cpp @@ -1,3 +1,5 @@ @@ -8,11 +8,12 @@ index 49bf78a..19d0962 100644 #include #include #include -@@ -483,6 +485,7 @@ struct decompress_t { - } +@@ -461,6 +463,8 @@ struct decompress_t { + state.state = state_t::START; + } - if (state.state == state_t::READ_DATA) { -+ fp_util::busy_sleep_for_secs(10); - - size_t len = state.msg; ++ fp_util::busy_sleep_for_millisecs(1); ++ + while (i != e) { + if (out == oute) { diff --git a/SynthIPTemplate/regression_2.patch b/SynthIPTemplate/regression_2.patch index efc4851..70094e6 100644 --- a/SynthIPTemplate/regression_2.patch +++ b/SynthIPTemplate/regression_2.patch @@ -1,5 +1,5 @@ diff --git a/projects/SynthIPTemplate/main.cpp b/projects/SynthIPTemplate/main.cpp -index 49bf78a..fbdd502 100644 +index 49bf78a..538014d 100644 --- a/projects/SynthIPTemplate/main.cpp +++ b/projects/SynthIPTemplate/main.cpp @@ -4,6 +4,8 @@ @@ -11,11 +11,12 @@ index 49bf78a..fbdd502 100644 /// This is a synthetic case study using templates for configuration. /// Not all features can be properly annotated into the source code because /// they happen at compile time. -@@ -267,6 +269,7 @@ struct compress_t { +@@ -266,6 +268,8 @@ struct compress_t { + size_t blocksize = offsets.blocksize; ++ fp_util::busy_sleep_for_millisecs(1); ++ while (i != e) { -+ fp_util::busy_sleep_for_millisecs(10); unsigned char c = *i; - diff --git a/SynthIPTemplate2/regression_1.patch b/SynthIPTemplate2/regression_1.patch index 4d6b36c..a35e688 100644 --- a/SynthIPTemplate2/regression_1.patch +++ b/SynthIPTemplate2/regression_1.patch @@ -1,5 +1,5 @@ diff --git a/projects/SynthIPTemplate2/main.cpp b/projects/SynthIPTemplate2/main.cpp -index 9e1283e..694e19f 100644 +index 9e1283e..71314f7 100644 --- a/projects/SynthIPTemplate2/main.cpp +++ b/projects/SynthIPTemplate2/main.cpp @@ -1,3 +1,5 @@ @@ -8,11 +8,12 @@ index 9e1283e..694e19f 100644 #include #include #include -@@ -483,6 +485,7 @@ struct decompress_t { - } +@@ -461,6 +463,8 @@ struct decompress_t { + state.state = state_t::START; + } - if (state.state == state_t::READ_DATA) { -+ fp_util::busy_sleep_for_secs(10); - - size_t len = state.msg; ++ fp_util::busy_sleep_for_millisecs(1); ++ + while (i != e) { + if (out == oute) { diff --git a/SynthIPTemplate2/regression_2.patch b/SynthIPTemplate2/regression_2.patch index 2ba67c3..a2e02dc 100644 --- a/SynthIPTemplate2/regression_2.patch +++ b/SynthIPTemplate2/regression_2.patch @@ -1,5 +1,5 @@ diff --git a/projects/SynthIPTemplate2/main.cpp b/projects/SynthIPTemplate2/main.cpp -index 9e1283e..5941c29 100644 +index 9e1283e..be68be8 100644 --- a/projects/SynthIPTemplate2/main.cpp +++ b/projects/SynthIPTemplate2/main.cpp @@ -4,6 +4,8 @@ @@ -11,11 +11,12 @@ index 9e1283e..5941c29 100644 /// This is a synthetic case study using templates for configuration. /// This implementation defers some configuration-dependent computations /// until runtime. Therefore, all features can be annotated. -@@ -267,6 +269,7 @@ struct compress_t { +@@ -266,6 +268,8 @@ struct compress_t { + size_t blocksize = offsets.blocksize; ++ fp_util::busy_sleep_for_millisecs(1); ++ while (i != e) { -+ fp_util::busy_sleep_for_millisecs(10); unsigned char c = *i; - diff --git a/bzip2/regression_1.info b/bzip2/regression_1.info new file mode 100644 index 0000000..56c707a --- /dev/null +++ b/bzip2/regression_1.info @@ -0,0 +1,11 @@ +description: "Patch that adds a regression that only affects compression" +include_revisions: + revision_range: + start: 1ea1ac188ad4b9cb662e3f8314673c63df95a589 + end: master +path: regression_1.patch +project_name: bzip2 +shortname: regress_compression +tags: +- regression +- perf_prec diff --git a/bzip2/regression_1.patch b/bzip2/regression_1.patch new file mode 100644 index 0000000..ae1d91c --- /dev/null +++ b/bzip2/regression_1.patch @@ -0,0 +1,13 @@ +diff --git a/bzip2.c b/bzip2.c +index a3a916b..f70fdfb 100644 +--- a/bzip2.c ++++ b/bzip2.c +@@ -1133,6 +1133,8 @@ void compress ( Char *name ) + if (name == NULL && srcMode != SM_I2O) + panic ( "compress: bad modes\n" ); + ++ sleep(1); ++ + switch (srcMode) { + case SM_I2O: + copyFileName ( inName, (Char*)"(stdin)" );