summaryrefslogtreecommitdiff
path: root/notify
diff options
context:
space:
mode:
authorTCWG BuildSlave <tcwg-buildslave@linaro.org>2023-12-27 21:44:32 +0000
committerTCWG BuildSlave <tcwg-buildslave@linaro.org>2023-12-27 21:45:01 +0000
commit6277405d5e3671cc2998db561ea4d229ab9c773e (patch)
tree7bbd48871a903e72625676e56a463e9e246e227b /notify
parent9c02605e05b7b4d05c4b226b0992cb8524c80512 (diff)
force: #134: 1: [TCWG CI] https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/134/
Results : | # reset_artifacts: | -10 | # build_bmk_llvm: | -3 | # benchmark -- -O3_marm: | 1 | # [.] __vfscanf_internal,slowed down by 100% - 444.namd:[.] __vfscanf_internal - from 1 to 2 perf samples check_regression status : 1
Diffstat (limited to 'notify')
-rw-r--r--notify/any.skipped3
-rw-r--r--notify/extra-bisect-params2
-rw-r--r--notify/jira/comment-card.txt3
-rw-r--r--notify/jira/comment-template.txt5
-rw-r--r--notify/jira/components1
-rw-r--r--notify/jira/description19
-rw-r--r--notify/jira/key1
-rw-r--r--notify/jira/startdate1
-rw-r--r--notify/jira/summary1
-rw-r--r--notify/jira/yaml27
-rw-r--r--notify/lnt_report.json181
-rw-r--r--notify/mail-body.txt37
-rw-r--r--notify/mail-subject.txt2
-rw-r--r--notify/output-bmk-results.log476
-rw-r--r--notify/results.regressions3
-rw-r--r--notify/symbol.improvement2
-rw-r--r--notify/symbol.regression3
17 files changed, 436 insertions, 331 deletions
diff --git a/notify/any.skipped b/notify/any.skipped
new file mode 100644
index 0000000..303e923
--- /dev/null
+++ b/notify/any.skipped
@@ -0,0 +1,3 @@
+403.gcc,gcc_base.default,slowed down by 5% - 403.gcc,slowed down by 5% - 403.gcc - from 133 to 140 perf samples
+482.sphinx3,sphinx_livepretend_base.default,slowed down by 100% - 482.sphinx3,slowed down by 100% - 482.sphinx3 - from 1 to 2 perf samples
+450.soplex,[.] _ZN6soplex5SPxLP7readMPSERSiPNS_7NameSetES3_PNS_7DIdxSetE,slowed down by 200% - 450.soplex:[.] _ZN6soplex5SPxLP7readMPSERSiPNS_7NameSetES3_PNS_7DIdxSetE,slowed down by 200% - 450.soplex:[.] _ZN6soplex5SPxLP7readMPSERSiPNS_7NameSetES3_PNS_7DIdxSetE - from 1 to 3 perf samples
diff --git a/notify/extra-bisect-params b/notify/extra-bisect-params
index bc74cf1..eddf41b 100644
--- a/notify/extra-bisect-params
+++ b/notify/extra-bisect-params
@@ -1 +1 @@
-extra_build_params=++benchmarks 482.sphinx3 ++benchmarks 482.sphinx3
+extra_build_params=++benchmarks 444.namd
diff --git a/notify/jira/comment-card.txt b/notify/jira/comment-card.txt
new file mode 100644
index 0000000..22cafbe
--- /dev/null
+++ b/notify/jira/comment-card.txt
@@ -0,0 +1,3 @@
+[LLVM-1070]
+slowed down by 100% - 444.namd:[.] __vfscanf_internal
+Details: https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/134/artifact/artifacts/notify/mail-body.txt/*view*/
diff --git a/notify/jira/comment-template.txt b/notify/jira/comment-template.txt
index 063ca1e..bee05df 100644
--- a/notify/jira/comment-template.txt
+++ b/notify/jira/comment-template.txt
@@ -1,3 +1,4 @@
[LLVM-651]
-slowed down by 200% - 482.sphinx3:[.] __vfscanf_internal
-Details: https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/133/artifact/artifacts/notify/mail-body.txt/*view*/
+https://linaro.atlassian.net/browse/LLVM-1070
+slowed down by 100% - 444.namd:[.] __vfscanf_internal
+Details: https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/134/artifact/artifacts/notify/mail-body.txt/*view*/
diff --git a/notify/jira/components b/notify/jira/components
new file mode 100644
index 0000000..8072713
--- /dev/null
+++ b/notify/jira/components
@@ -0,0 +1 @@
+LLVM
diff --git a/notify/jira/description b/notify/jira/description
new file mode 100644
index 0000000..a1ec56b
--- /dev/null
+++ b/notify/jira/description
@@ -0,0 +1,19 @@
+Commit: https://github.com/llvm/llvm-project/commit/b03f0c596a180399f7730ed75d78055c81b3d771
+commit llvmorg-18-init-15417-gb03f0c596a18
+Author: Craig Topper <craig.topper@sifive.com>
+Date: Wed Dec 20 09:52:02 2023 -0800
+
+ [RISCV] Add sifive-p450 CPU. (#75760)
+
+ This is an out of order core with no vector unit. More information:
+ https://www.sifive.com/cores/performance-p450-470
+
+ Scheduler model and other tuning will come in separate patches.
+
+* tcwg_bmk-code_speed-spec2k6
+** llvm-arm-master-O3
+*** slowed down by 100% - 444.namd:[.] __vfscanf_internal
+*** https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/sha1/b03f0c596a180399f7730ed75d78055c81b3d771/tcwg_bmk-code_speed-spec2k6/llvm-arm-master-O3/details.txt
+*** https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/134/artifact/artifacts
+
+Latest data: https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/sha1/b03f0c596a180399f7730ed75d78055c81b3d771/jira/yaml
diff --git a/notify/jira/key b/notify/jira/key
new file mode 100644
index 0000000..e36fa20
--- /dev/null
+++ b/notify/jira/key
@@ -0,0 +1 @@
+LLVM-1070
diff --git a/notify/jira/startdate b/notify/jira/startdate
new file mode 100644
index 0000000..23a83d4
--- /dev/null
+++ b/notify/jira/startdate
@@ -0,0 +1 @@
+2023-12-20
diff --git a/notify/jira/summary b/notify/jira/summary
new file mode 100644
index 0000000..efa263f
--- /dev/null
+++ b/notify/jira/summary
@@ -0,0 +1 @@
+llvmorg-18-init-15417-gb03f0c596a18: slowed down by 100% - 444.namd:[.] __vfscanf_internal
diff --git a/notify/jira/yaml b/notify/jira/yaml
new file mode 100644
index 0000000..b25a581
--- /dev/null
+++ b/notify/jira/yaml
@@ -0,0 +1,27 @@
+- Project: LLVM
+ IssueType: Sub-task
+ Key: LLVM-1070
+ Summary: |
+ llvmorg-18-init-15417-gb03f0c596a18: slowed down by 100% - 444.namd:[.] __vfscanf_internal
+ Components: LLVM
+ Start date: 2023-12-20
+ Description: |
+ Commit: https://github.com/llvm/llvm-project/commit/b03f0c596a180399f7730ed75d78055c81b3d771
+ commit llvmorg-18-init-15417-gb03f0c596a18
+ Author: Craig Topper <craig.topper@sifive.com>
+ Date: Wed Dec 20 09:52:02 2023 -0800
+
+ [RISCV] Add sifive-p450 CPU. (#75760)
+
+ This is an out of order core with no vector unit. More information:
+ https://www.sifive.com/cores/performance-p450-470
+
+ Scheduler model and other tuning will come in separate patches.
+
+ * tcwg_bmk-code_speed-spec2k6
+ ** llvm-arm-master-O3
+ *** slowed down by 100% - 444.namd:[.] __vfscanf_internal
+ *** https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/sha1/b03f0c596a180399f7730ed75d78055c81b3d771/tcwg_bmk-code_speed-spec2k6/llvm-arm-master-O3/details.txt
+ *** https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/134/artifact/artifacts
+
+ Latest data: https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/sha1/b03f0c596a180399f7730ed75d78055c81b3d771/jira/yaml
diff --git a/notify/lnt_report.json b/notify/lnt_report.json
index 5929179..cefc2c7 100644
--- a/notify/lnt_report.json
+++ b/notify/lnt_report.json
@@ -6,45 +6,38 @@
"Run": {
"Info": {
"tag": "tcwg_bmk-code_speed-spec2k6",
- "run_order": "llvmorg-18-init-15416-g7a87ff64e1fe",
- "test_url": "https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/133/",
+ "run_order": "llvmorg-18-init-15417-gb03f0c596a18",
+ "test_url": "https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/134/",
+ "regression": "LLVM-1070",
"llvm_url": "https://github.com/llvm/llvm-project.git",
- "llvm_rev": "7a87ff64e1fe970adcc41b7fc664fb5fd8410a68",
+ "llvm_rev": "b03f0c596a180399f7730ed75d78055c81b3d771",
"__report_version__": "1"
},
- "Start Time": "2023-12-19 17:58:47"
+ "Start Time": "2023-12-20 05:55:24"
},
"Tests": [
{
"Data": [
- 129882
- ],
- "Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.433.milc.code_size"
- }
- ,
- {
- "Data": [
- 11826
+ 145844
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.429.mcf.code_size"
+ "Name": "tcwg_bmk-code_speed-spec2k6.458.sjeng.code_size"
}
,
{
"Data": [
- 169391
+ 33808
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.482.sphinx3.code_size"
+ "Name": "tcwg_bmk-code_speed-spec2k6.462.libquantum.code_size"
}
,
{
"Data": [
- 3451091
+ 320203
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.483.xalancbmk.code_size"
+ "Name": "tcwg_bmk-code_speed-spec2k6.450.soplex.code_size"
}
,
{
@@ -65,18 +58,18 @@
,
{
"Data": [
- 145844
+ 169391
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.458.sjeng.code_size"
+ "Name": "tcwg_bmk-code_speed-spec2k6.482.sphinx3.code_size"
}
,
{
"Data": [
- 33808
+ 3451091
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.462.libquantum.code_size"
+ "Name": "tcwg_bmk-code_speed-spec2k6.483.xalancbmk.code_size"
}
,
{
@@ -89,90 +82,98 @@
,
{
"Data": [
- 320203
+ 129882
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.450.soplex.code_size"
+ "Name": "tcwg_bmk-code_speed-spec2k6.433.milc.code_size"
}
,
{
"Data": [
- 14269
+ 11826
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.458.sjeng.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.429.mcf.code_size"
}
,
{
"Data": [
- 14681
+ 11285
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.462.libquantum.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.401.bzip2.exec"
}
,
{
"Data": [
- 1
+ 140
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.470.lbm.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.403.gcc.exec"
}
,
{
"Data": [
- 9673
+ 19
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.429.mcf.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.450.soplex.exec"
}
,
{
"Data": [
- 5
+ 1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.433.milc.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.470.lbm.exec"
}
,
{
"Data": [
- 1
+ 14262
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.482.sphinx3.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.458.sjeng.exec"
}
,
{
"Data": [
- 2633
+ 14705
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.483.xalancbmk.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.462.libquantum.exec"
}
,
{
"Data": [
- 18
+ 9678
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.450.soplex.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.429.mcf.exec"
}
,
{
"Data": [
- 11383
+ 5
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.401.bzip2.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.433.milc.exec"
}
,
{
"Data": [
- 133
+ 2
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.403.gcc.exec"
+ "Name": "tcwg_bmk-code_speed-spec2k6.482.sphinx3.exec"
+ }
+ ,
+ {
+ "Data": [
+ 2633
+ ],
+ "Info": {},
+ "Name": "tcwg_bmk-code_speed-spec2k6.483.xalancbmk.exec"
}
,
{
@@ -180,15 +181,15 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.471.omnetpp.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.401.bzip2.compile_status"
}
,
{
"Data": [
- 1
+ 0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.471.omnetpp.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.401.bzip2.execution_status"
}
,
{
@@ -196,7 +197,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.473.astar.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.400.perlbench.compile_status"
}
,
{
@@ -204,7 +205,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.473.astar.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.400.perlbench.execution_status"
}
,
{
@@ -212,7 +213,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.453.povray.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.403.gcc.compile_status"
}
,
{
@@ -220,7 +221,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.453.povray.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.403.gcc.execution_status"
}
,
{
@@ -228,7 +229,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.456.hmmer.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.445.gobmk.compile_status"
}
,
{
@@ -236,7 +237,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.456.hmmer.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.445.gobmk.execution_status"
}
,
{
@@ -244,15 +245,15 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.458.sjeng.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.447.dealII.compile_status"
}
,
{
"Data": [
- 0
+ 1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.458.sjeng.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.447.dealII.execution_status"
}
,
{
@@ -260,15 +261,15 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.462.libquantum.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.450.soplex.compile_status"
}
,
{
"Data": [
- 0
+ 1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.462.libquantum.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.450.soplex.execution_status"
}
,
{
@@ -276,7 +277,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.464.h264ref.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.471.omnetpp.compile_status"
}
,
{
@@ -284,7 +285,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.464.h264ref.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.471.omnetpp.execution_status"
}
,
{
@@ -292,7 +293,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.470.lbm.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.473.astar.compile_status"
}
,
{
@@ -300,7 +301,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.470.lbm.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.473.astar.execution_status"
}
,
{
@@ -308,15 +309,15 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.429.mcf.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.464.h264ref.compile_status"
}
,
{
"Data": [
- 0
+ 1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.429.mcf.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.464.h264ref.execution_status"
}
,
{
@@ -324,7 +325,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.433.milc.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.470.lbm.compile_status"
}
,
{
@@ -332,7 +333,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.433.milc.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.470.lbm.execution_status"
}
,
{
@@ -340,15 +341,15 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.444.namd.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.458.sjeng.compile_status"
}
,
{
"Data": [
- 1
+ 0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.444.namd.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.458.sjeng.execution_status"
}
,
{
@@ -356,15 +357,15 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.482.sphinx3.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.462.libquantum.compile_status"
}
,
{
"Data": [
- 1
+ 0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.482.sphinx3.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.462.libquantum.execution_status"
}
,
{
@@ -372,7 +373,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.483.xalancbmk.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.453.povray.compile_status"
}
,
{
@@ -380,7 +381,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.483.xalancbmk.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.453.povray.execution_status"
}
,
{
@@ -388,7 +389,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.445.gobmk.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.456.hmmer.compile_status"
}
,
{
@@ -396,7 +397,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.445.gobmk.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.456.hmmer.execution_status"
}
,
{
@@ -404,15 +405,15 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.447.dealII.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.429.mcf.compile_status"
}
,
{
"Data": [
- 1
+ 0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.447.dealII.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.429.mcf.execution_status"
}
,
{
@@ -420,7 +421,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.450.soplex.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.433.milc.compile_status"
}
,
{
@@ -428,7 +429,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.450.soplex.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.433.milc.execution_status"
}
,
{
@@ -436,15 +437,15 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.401.bzip2.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.444.namd.compile_status"
}
,
{
"Data": [
- 0
+ 1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.401.bzip2.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.444.namd.execution_status"
}
,
{
@@ -452,7 +453,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.400.perlbench.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.482.sphinx3.compile_status"
}
,
{
@@ -460,7 +461,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.400.perlbench.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.482.sphinx3.execution_status"
}
,
{
@@ -468,7 +469,7 @@
0
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.403.gcc.compile_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.483.xalancbmk.compile_status"
}
,
{
@@ -476,7 +477,7 @@
1
],
"Info": {},
- "Name": "tcwg_bmk-code_speed-spec2k6.403.gcc.execution_status"
+ "Name": "tcwg_bmk-code_speed-spec2k6.483.xalancbmk.execution_status"
}
,
{
diff --git a/notify/mail-body.txt b/notify/mail-body.txt
index 077b0e9..68f9fef 100644
--- a/notify/mail-body.txt
+++ b/notify/mail-body.txt
@@ -2,19 +2,23 @@ Dear contributor, our automatic CI has detected problems related to your patch(e
We appreciate that it might be difficult to find the necessary logs or reproduce the issue locally. If you can't get what you need from our CI within minutes, let us know and we will be happy to help.
+We track this report status in https://linaro.atlassian.net/browse/LLVM-1070 , please let us know if you are looking at the problem and/or when you have a fix.
+
In CI config tcwg_bmk-code_speed-spec2k6/llvm-arm-master-O3 after:
- | 232 commits in llvm
- | 7a87ff64e1fe [libc] suppress stdlib explicitly for crt1.a (#76079)
- | 18170d0f281c [ConstraintElim] Extend AND implication logic to support OR as well. (#76044)
- | 2c257cf8721a [gn build] Port 5ea15fab19eb
- | 5ea15fab19eb [TextAPI] Add support to convert RecordSlices -> InterfaceFile (#75007)
- | 8bbeed05c4da [libc] [startup] add cmake function to merge separated crt1 objects (#75413)
- | ... and 227 more commits in llvm
+ | commit llvmorg-18-init-15417-gb03f0c596a18
+ | Author: Craig Topper <craig.topper@sifive.com>
+ | Date: Wed Dec 20 09:52:02 2023 -0800
+ |
+ | [RISCV] Add sifive-p450 CPU. (#75760)
+ |
+ | This is an out of order core with no vector unit. More information:
+ | https://www.sifive.com/cores/performance-p450-470
+ |
+ | Scheduler model and other tuning will come in separate patches.
the following hot functions slowed down by more than 15% (but their benchmarks slowed down by less than 3%):
-- slowed down by 200% - 482.sphinx3:[.] __vfscanf_internal - from 1 to 3 perf samples
-- slowed down by 100% - 482.sphinx3:[.] __rawmemchr - from 1 to 2 perf samples
+- slowed down by 100% - 444.namd:[.] __vfscanf_internal - from 1 to 2 perf samples
The configuration of this build is:
Below reproducer instructions can be used to re-build both "first_bad" and "last_good" cross-toolchains used in this bisection. Naturally, the scripts will fail when triggerring benchmarking jobs if you don\'t have access to Linaro TCWG CI.
@@ -32,6 +36,17 @@ This benchmarking CI is work-in-progress, and we welcome feedback and suggestion
-----------------8<--------------------------8<--------------------------8<--------------------------
The information below can be used to reproduce a debug environment:
-Current build : https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/133/artifact/artifacts
-Reference build : https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/131/artifact/artifacts
+Current build : https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/134/artifact/artifacts
+Reference build : https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/133/artifact/artifacts
+
+Reproduce last good and first bad builds: https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/sha1/b03f0c596a180399f7730ed75d78055c81b3d771/tcwg_bmk-code_speed-spec2k6/llvm-arm-master-O3/reproduction_instructions.txt
+
+Full commit : https://github.com/llvm/llvm-project/commit/b03f0c596a180399f7730ed75d78055c81b3d771
+
+List of configurations that regressed due to this commit :
+* tcwg_bmk-code_speed-spec2k6
+** llvm-arm-master-O3
+*** slowed down by 100% - 444.namd:[.] __vfscanf_internal
+*** https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/sha1/b03f0c596a180399f7730ed75d78055c81b3d771/tcwg_bmk-code_speed-spec2k6/llvm-arm-master-O3/details.txt
+*** https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-arm-master-O3-build/134/artifact/artifacts
diff --git a/notify/mail-subject.txt b/notify/mail-subject.txt
index 143e297..f36cf21 100644
--- a/notify/mail-subject.txt
+++ b/notify/mail-subject.txt
@@ -1 +1 @@
-[Linaro-TCWG-CI] 232 commits in llvm: slowed down by 200% - 482.sphinx3:[.] __vfscanf_internal on arm O3
+[Linaro-TCWG-CI] llvmorg-18-init-15417-gb03f0c596a18: slowed down by 100% - 444.namd:[.] __vfscanf_internal on arm O3
diff --git a/notify/output-bmk-results.log b/notify/output-bmk-results.log
index 088a305..4a7fc7e 100644
--- a/notify/output-bmk-results.log
+++ b/notify/output-bmk-results.log
@@ -107,14 +107,14 @@ output-bmk-results.py(258): print(results_df)
1 401.bzip2 ... success
7 403.gcc ... failed-to-run
8 403.gcc ... failed-to-run
-13 429.mcf ... success
+12 429.mcf ... success
+16 433.milc ... failed-to-run
17 433.milc ... failed-to-run
-18 433.milc ... failed-to-run
-23 444.namd ... failed-to-run
-24 445.gobmk ... failed-to-run
-25 447.dealII ... failed-to-run
+22 444.namd ... failed-to-run
+23 445.gobmk ... failed-to-run
+24 447.dealII ... failed-to-run
+25 450.soplex ... failed-to-run
26 450.soplex ... failed-to-run
-27 450.soplex ... failed-to-run
31 453.povray ... failed-to-run
32 456.hmmer ... failed-to-run
33 458.sjeng ... success
@@ -124,10 +124,10 @@ output-bmk-results.py(258): print(results_df)
45 470.lbm ... failed-to-run
46 471.omnetpp ... failed-to-run
47 473.astar ... failed-to-run
+51 482.sphinx3 ... failed-to-run
52 482.sphinx3 ... failed-to-run
-53 482.sphinx3 ... failed-to-run
-56 483.xalancbmk ... failed-to-run
-57 483.xalancbmk ... failed-to-run
+58 483.xalancbmk ... failed-to-run
+59 483.xalancbmk ... failed-to-run
[25 rows x 20 columns]
output-bmk-results.py(261): for index, row in results_df.iterrows():
@@ -502,14 +502,14 @@ output-bmk-results.py(258): print(results_df)
1 401.bzip2 ... success
7 403.gcc ... failed-to-run
8 403.gcc ... failed-to-run
-13 429.mcf ... success
+12 429.mcf ... success
+16 433.milc ... failed-to-run
17 433.milc ... failed-to-run
-18 433.milc ... failed-to-run
-23 444.namd ... failed-to-run
-24 445.gobmk ... failed-to-run
-25 447.dealII ... failed-to-run
+22 444.namd ... failed-to-run
+23 445.gobmk ... failed-to-run
+24 447.dealII ... failed-to-run
+25 450.soplex ... failed-to-run
26 450.soplex ... failed-to-run
-27 450.soplex ... failed-to-run
31 453.povray ... failed-to-run
32 456.hmmer ... failed-to-run
33 458.sjeng ... success
@@ -519,10 +519,10 @@ output-bmk-results.py(258): print(results_df)
45 470.lbm ... failed-to-run
46 471.omnetpp ... failed-to-run
47 473.astar ... failed-to-run
+51 482.sphinx3 ... failed-to-run
52 482.sphinx3 ... failed-to-run
-53 482.sphinx3 ... failed-to-run
-56 483.xalancbmk ... failed-to-run
-57 483.xalancbmk ... failed-to-run
+58 483.xalancbmk ... failed-to-run
+59 483.xalancbmk ... failed-to-run
[25 rows x 20 columns]
output-bmk-results.py(261): for index, row in results_df.iterrows():
@@ -914,7 +914,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.regression : 401.bzip2,bzip2_base.default : sample=-1% (threshold=3%)
+DEBUG: checking exe.regression : 401.bzip2,bzip2_base.default : sample=1% (threshold=3%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -941,12 +941,37 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.regression : 403.gcc,gcc_base.default : sample=0% (threshold=3%)
+DEBUG: checking exe.regression : 403.gcc,gcc_base.default : sample=-5% (threshold=3%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
output-bmk-results.py(184): return (result - 100 > threshold)
-output-bmk-results.py(233): continue
+output-bmk-results.py(235): percent_change, short_diag, long_diag = get_short_long_diag(row, metric, sym_type, change_kind)
+ --- modulename: output-bmk-results, funcname: get_short_long_diag
+output-bmk-results.py(137): bmk = row["benchmark"]
+output-bmk-results.py(139): rel_value = row["rel_" + metric]
+output-bmk-results.py(140): prev_value = row[metric + "_x"]
+output-bmk-results.py(141): curr_value = row[metric + "_y"]
+output-bmk-results.py(142): if metric == "num_vect_loops" or metric == "num_sve_loops":
+output-bmk-results.py(152): suffix = ""
+output-bmk-results.py(153): if metric == "sample":
+output-bmk-results.py(154): prefix_regression = "slowed down by"
+output-bmk-results.py(155): prefix_improvement = "sped up by"
+output-bmk-results.py(156): suffix = "perf samples"
+output-bmk-results.py(167): if sym_type=="symbol":
+output-bmk-results.py(170): item=bmk
+output-bmk-results.py(172): short_diag = "{1} {2}% - {0}".format(item, locals()["prefix_" + change_kind], abs(rel_value - 100))
+output-bmk-results.py(173): long_diag = "{0} - from {1} to {2} {3}".format(short_diag, prev_value, curr_value, suffix)
+output-bmk-results.py(174): return abs(rel_value - 100), short_diag, long_diag
+output-bmk-results.py(239): if metric == "sample" \
+output-bmk-results.py(240): and row['symbol_md5sum_x'] == row['symbol_md5sum_y'] \
+output-bmk-results.py(241): and row['symbol_md5sum_x'] != "-1" \
+output-bmk-results.py(242): and row['symbol_md5sum_x'] != "d41d8cd98f00b204e9800998ecf8427e":
+output-bmk-results.py(243): f_skip.write_csv((row["benchmark"], row["symbol"], short_diag, long_diag))
+ --- modulename: output-bmk-results, funcname: write_csv
+output-bmk-results.py(41): if not self.predicate or not self.csvwriter:
+output-bmk-results.py(43): self.csvwriter.writerow(arr)
+output-bmk-results.py(244): continue
output-bmk-results.py(224): for index, row in out_df.iterrows():
output-bmk-results.py(226): threshold = get_threshold(sym_type, metric, mode, row["benchmark"], row["symbol"])
--- modulename: output-bmk-results, funcname: get_threshold
@@ -968,7 +993,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.regression : 403.gcc,gcc_base.default : sample=2% (threshold=3%)
+DEBUG: checking exe.regression : 403.gcc,gcc_base.default : sample=0% (threshold=3%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1070,7 +1095,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.regression : 450.soplex,soplex_base.default : sample=-6% (threshold=29.73%)
+DEBUG: checking exe.regression : 450.soplex,soplex_base.default : sample=-6% (threshold=29.490000000000002%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1097,7 +1122,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.regression : 450.soplex,soplex_base.default : sample=0% (threshold=29.73%)
+DEBUG: checking exe.regression : 450.soplex,soplex_base.default : sample=0% (threshold=29.490000000000002%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1226,12 +1251,37 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.regression : 482.sphinx3,sphinx_livepretend_base.default : sample=0% (threshold=17.82%)
+DEBUG: checking exe.regression : 482.sphinx3,sphinx_livepretend_base.default : sample=-100% (threshold=17.64%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
output-bmk-results.py(184): return (result - 100 > threshold)
-output-bmk-results.py(233): continue
+output-bmk-results.py(235): percent_change, short_diag, long_diag = get_short_long_diag(row, metric, sym_type, change_kind)
+ --- modulename: output-bmk-results, funcname: get_short_long_diag
+output-bmk-results.py(137): bmk = row["benchmark"]
+output-bmk-results.py(139): rel_value = row["rel_" + metric]
+output-bmk-results.py(140): prev_value = row[metric + "_x"]
+output-bmk-results.py(141): curr_value = row[metric + "_y"]
+output-bmk-results.py(142): if metric == "num_vect_loops" or metric == "num_sve_loops":
+output-bmk-results.py(152): suffix = ""
+output-bmk-results.py(153): if metric == "sample":
+output-bmk-results.py(154): prefix_regression = "slowed down by"
+output-bmk-results.py(155): prefix_improvement = "sped up by"
+output-bmk-results.py(156): suffix = "perf samples"
+output-bmk-results.py(167): if sym_type=="symbol":
+output-bmk-results.py(170): item=bmk
+output-bmk-results.py(172): short_diag = "{1} {2}% - {0}".format(item, locals()["prefix_" + change_kind], abs(rel_value - 100))
+output-bmk-results.py(173): long_diag = "{0} - from {1} to {2} {3}".format(short_diag, prev_value, curr_value, suffix)
+output-bmk-results.py(174): return abs(rel_value - 100), short_diag, long_diag
+output-bmk-results.py(239): if metric == "sample" \
+output-bmk-results.py(240): and row['symbol_md5sum_x'] == row['symbol_md5sum_y'] \
+output-bmk-results.py(241): and row['symbol_md5sum_x'] != "-1" \
+output-bmk-results.py(242): and row['symbol_md5sum_x'] != "d41d8cd98f00b204e9800998ecf8427e":
+output-bmk-results.py(243): f_skip.write_csv((row["benchmark"], row["symbol"], short_diag, long_diag))
+ --- modulename: output-bmk-results, funcname: write_csv
+output-bmk-results.py(41): if not self.predicate or not self.csvwriter:
+output-bmk-results.py(43): self.csvwriter.writerow(arr)
+output-bmk-results.py(244): continue
output-bmk-results.py(224): for index, row in out_df.iterrows():
output-bmk-results.py(226): threshold = get_threshold(sym_type, metric, mode, row["benchmark"], row["symbol"])
--- modulename: output-bmk-results, funcname: get_threshold
@@ -1253,7 +1303,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.regression : 482.sphinx3,sphinx_livepretend_base.default : sample=0% (threshold=17.82%)
+DEBUG: checking exe.regression : 482.sphinx3,sphinx_livepretend_base.default : sample=0% (threshold=17.64%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1307,7 +1357,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.regression : 483.xalancbmk,Xalan_base.default : sample=3% (threshold=3%)
+DEBUG: checking exe.regression : 483.xalancbmk,Xalan_base.default : sample=0% (threshold=3%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1352,7 +1402,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.improvement : 401.bzip2,bzip2_base.default : sample=-1% (threshold=3%)
+DEBUG: checking exe.improvement : 401.bzip2,bzip2_base.default : sample=1% (threshold=3%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -1379,7 +1429,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.improvement : 403.gcc,gcc_base.default : sample=0% (threshold=3%)
+DEBUG: checking exe.improvement : 403.gcc,gcc_base.default : sample=-5% (threshold=3%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -1406,7 +1456,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.improvement : 403.gcc,gcc_base.default : sample=2% (threshold=3%)
+DEBUG: checking exe.improvement : 403.gcc,gcc_base.default : sample=0% (threshold=3%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -1508,7 +1558,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.improvement : 450.soplex,soplex_base.default : sample=-6% (threshold=29.73%)
+DEBUG: checking exe.improvement : 450.soplex,soplex_base.default : sample=-6% (threshold=29.490000000000002%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -1535,7 +1585,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.improvement : 450.soplex,soplex_base.default : sample=0% (threshold=29.73%)
+DEBUG: checking exe.improvement : 450.soplex,soplex_base.default : sample=0% (threshold=29.490000000000002%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -1664,7 +1714,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.improvement : 482.sphinx3,sphinx_livepretend_base.default : sample=0% (threshold=17.82%)
+DEBUG: checking exe.improvement : 482.sphinx3,sphinx_livepretend_base.default : sample=-100% (threshold=17.64%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -1691,7 +1741,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.improvement : 482.sphinx3,sphinx_livepretend_base.default : sample=0% (threshold=17.82%)
+DEBUG: checking exe.improvement : 482.sphinx3,sphinx_livepretend_base.default : sample=0% (threshold=17.64%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -1745,7 +1795,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking exe.improvement : 483.xalancbmk,Xalan_base.default : sample=3% (threshold=3%)
+DEBUG: checking exe.improvement : 483.xalancbmk,Xalan_base.default : sample=0% (threshold=3%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -1790,7 +1840,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 401.bzip2,[.] BZ2_blockSort : sample=-3% (threshold=15%)
+DEBUG: checking symbol.regression : 401.bzip2,[.] BZ2_blockSort : sample=6% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1817,7 +1867,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 401.bzip2,[.] mainGtU : sample=2% (threshold=15%)
+DEBUG: checking symbol.regression : 401.bzip2,[.] mainGtU : sample=-5% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1898,7 +1948,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 401.bzip2,[.] BZ2_decompress : sample=-1% (threshold=15%)
+DEBUG: checking symbol.regression : 401.bzip2,[.] BZ2_decompress : sample=2% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1925,7 +1975,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 403.gcc,[.] compute_transp : sample=0% (threshold=41.49%)
+DEBUG: checking symbol.regression : 403.gcc,[.] compute_transp : sample=17% (threshold=42.63%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1952,7 +2002,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 403.gcc,libc.so.6 : sample=-14% (threshold=50.099999999999994%)
+DEBUG: checking symbol.regression : 403.gcc,[.] bitmap_operation : sample=-8% (threshold=42.12%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -1979,7 +2029,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 403.gcc,[.] memset : sample=-8% (threshold=53.25%)
+DEBUG: checking symbol.regression : 403.gcc,[.] memset : sample=31% (threshold=53.61%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2006,7 +2056,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 403.gcc,[.] bitmap_operation : sample=0% (threshold=42.96%)
+DEBUG: checking symbol.regression : 429.mcf,[.] primal_bea_mpp : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2033,7 +2083,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 429.mcf,[.] primal_bea_mpp : sample=1% (threshold=15%)
+DEBUG: checking symbol.regression : 429.mcf,[.] refresh_potential : sample=1% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2060,7 +2110,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 429.mcf,[.] refresh_potential : sample=-3% (threshold=15%)
+DEBUG: checking symbol.regression : 429.mcf,[.] price_out_impl : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2087,7 +2137,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 429.mcf,[.] price_out_impl : sample=0% (threshold=15%)
+DEBUG: checking symbol.regression : 433.milc,[.] make_gather : sample=0% (threshold=56.489999999999995%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2102,19 +2152,14 @@ output-bmk-results.py(99): spec_thr = get_specific_thresholds(metric, mod
output-bmk-results.py(57): if specific_variability is None:
output-bmk-results.py(60): var = specific_variability[ (specific_variability['benchmark'] == bmk) & (specific_variability['symbol'].str.strip() == symb)]
output-bmk-results.py(61): if var.empty:
-output-bmk-results.py(63): elif len(var)>1:
-output-bmk-results.py(68): if var.iloc[0]['sample_variation_average']>0 :
-output-bmk-results.py(69): threshold = ( var.iloc[0]['sample_variation_average'] )
-output-bmk-results.py(70): if mode == "build":
-output-bmk-results.py(74): threshold *= 3
-output-bmk-results.py(81): return threshold
+output-bmk-results.py(62): return np.nan
output-bmk-results.py(100): if not np.isnan(spec_thr):
-output-bmk-results.py(104): spec_thr=max(spec_thr, default_threshold[(change_kind,metric,mode)])
-output-bmk-results.py(105): return spec_thr
+output-bmk-results.py(107): if metric == "num_vect_loops" or metric == "num_sve_loops":
+output-bmk-results.py(110): return default_threshold[(change_kind,metric,mode)]
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 433.milc,[.] make_gather : sample=20% (threshold=58.32000000000001%)
+DEBUG: checking symbol.regression : 444.namd,libc.so.6 : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2136,12 +2181,46 @@ output-bmk-results.py(110): return default_threshold[(change_kind,metric,mod
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 444.namd,libc.so.6 : sample=0% (threshold=15%)
+DEBUG: checking symbol.regression : 444.namd,[.] __vfscanf_internal : sample=-100% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
output-bmk-results.py(184): return (result - 100 > threshold)
-output-bmk-results.py(233): continue
+output-bmk-results.py(235): percent_change, short_diag, long_diag = get_short_long_diag(row, metric, sym_type, change_kind)
+ --- modulename: output-bmk-results, funcname: get_short_long_diag
+output-bmk-results.py(137): bmk = row["benchmark"]
+output-bmk-results.py(139): rel_value = row["rel_" + metric]
+output-bmk-results.py(140): prev_value = row[metric + "_x"]
+output-bmk-results.py(141): curr_value = row[metric + "_y"]
+output-bmk-results.py(142): if metric == "num_vect_loops" or metric == "num_sve_loops":
+output-bmk-results.py(152): suffix = ""
+output-bmk-results.py(153): if metric == "sample":
+output-bmk-results.py(154): prefix_regression = "slowed down by"
+output-bmk-results.py(155): prefix_improvement = "sped up by"
+output-bmk-results.py(156): suffix = "perf samples"
+output-bmk-results.py(167): if sym_type=="symbol":
+output-bmk-results.py(168): item=bmk+":"+row["symbol"]
+output-bmk-results.py(172): short_diag = "{1} {2}% - {0}".format(item, locals()["prefix_" + change_kind], abs(rel_value - 100))
+output-bmk-results.py(173): long_diag = "{0} - from {1} to {2} {3}".format(short_diag, prev_value, curr_value, suffix)
+output-bmk-results.py(174): return abs(rel_value - 100), short_diag, long_diag
+output-bmk-results.py(239): if metric == "sample" \
+output-bmk-results.py(240): and row['symbol_md5sum_x'] == row['symbol_md5sum_y'] \
+output-bmk-results.py(241): and row['symbol_md5sum_x'] != "-1" \
+output-bmk-results.py(246): print("DEBUG: *** {0},{1} : {2}".format(row["benchmark"], row["symbol"], long_diag))
+DEBUG: *** 444.namd,[.] __vfscanf_internal : slowed down by 100% - 444.namd:[.] __vfscanf_internal - from 1 to 2 perf samples
+output-bmk-results.py(248): f_out.write_csv((percent_change, row["benchmark"], row["symbol"], short_diag, long_diag))
+ --- modulename: output-bmk-results, funcname: write_csv
+output-bmk-results.py(41): if not self.predicate or not self.csvwriter:
+output-bmk-results.py(43): self.csvwriter.writerow(arr)
+output-bmk-results.py(249): if change_kind == "regression":
+output-bmk-results.py(250): f_regr.write("# {0},{1}\n".format(row["symbol"], long_diag))
+ --- modulename: output-bmk-results, funcname: write
+output-bmk-results.py(36): if not self.predicate or not self.outf:
+output-bmk-results.py(38): self.outf.write(string)
+output-bmk-results.py(251): f_ebp.write("++benchmarks {0} ".format(row["benchmark"]))
+ --- modulename: output-bmk-results, funcname: write
+output-bmk-results.py(36): if not self.predicate or not self.outf:
+output-bmk-results.py(38): self.outf.write(string)
output-bmk-results.py(224): for index, row in out_df.iterrows():
output-bmk-results.py(226): threshold = get_threshold(sym_type, metric, mode, row["benchmark"], row["symbol"])
--- modulename: output-bmk-results, funcname: get_threshold
@@ -2151,14 +2230,19 @@ output-bmk-results.py(99): spec_thr = get_specific_thresholds(metric, mod
output-bmk-results.py(57): if specific_variability is None:
output-bmk-results.py(60): var = specific_variability[ (specific_variability['benchmark'] == bmk) & (specific_variability['symbol'].str.strip() == symb)]
output-bmk-results.py(61): if var.empty:
-output-bmk-results.py(62): return np.nan
+output-bmk-results.py(63): elif len(var)>1:
+output-bmk-results.py(68): if var.iloc[0]['sample_variation_average']>0 :
+output-bmk-results.py(69): threshold = ( var.iloc[0]['sample_variation_average'] )
+output-bmk-results.py(70): if mode == "build":
+output-bmk-results.py(74): threshold *= 3
+output-bmk-results.py(81): return threshold
output-bmk-results.py(100): if not np.isnan(spec_thr):
-output-bmk-results.py(107): if metric == "num_vect_loops" or metric == "num_sve_loops":
-output-bmk-results.py(110): return default_threshold[(change_kind,metric,mode)]
+output-bmk-results.py(104): spec_thr=max(spec_thr, default_threshold[(change_kind,metric,mode)])
+output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 444.namd,[.] __vfscanf_internal : sample=50% (threshold=15%)
+DEBUG: checking symbol.regression : 450.soplex,[.] _ZN6soplex7NameSet3addERNS_7DataKeyEPKc : sample=0% (threshold=107.78999999999999%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2185,7 +2269,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 450.soplex,libc.so.6 : sample=11% (threshold=66.21000000000001%)
+DEBUG: checking symbol.regression : 450.soplex,libc.so.6 : sample=12% (threshold=66.12%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2212,7 +2296,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 450.soplex,[.] _ZN6soplex7NameSet3addERNS_7DataKeyEPKc : sample=-60% (threshold=108.75%)
+DEBUG: checking symbol.regression : 450.soplex,[.] strcmp : sample=20% (threshold=92.78999999999999%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2229,22 +2313,44 @@ output-bmk-results.py(60): var = specific_variability[ (specific_variability
output-bmk-results.py(61): if var.empty:
output-bmk-results.py(63): elif len(var)>1:
output-bmk-results.py(68): if var.iloc[0]['sample_variation_average']>0 :
-output-bmk-results.py(69): threshold = ( var.iloc[0]['sample_variation_average'] )
-output-bmk-results.py(70): if mode == "build":
-output-bmk-results.py(74): threshold *= 3
-output-bmk-results.py(81): return threshold
+output-bmk-results.py(83): return np.nan
output-bmk-results.py(100): if not np.isnan(spec_thr):
-output-bmk-results.py(104): spec_thr=max(spec_thr, default_threshold[(change_kind,metric,mode)])
-output-bmk-results.py(105): return spec_thr
+output-bmk-results.py(107): if metric == "num_vect_loops" or metric == "num_sve_loops":
+output-bmk-results.py(110): return default_threshold[(change_kind,metric,mode)]
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 450.soplex,[.] strcmp : sample=17% (threshold=91.80000000000001%)
+DEBUG: checking symbol.regression : 450.soplex,[.] _ZN6soplex5SPxLP7readMPSERSiPNS_7NameSetES3_PNS_7DIdxSetE : sample=-200% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
output-bmk-results.py(184): return (result - 100 > threshold)
-output-bmk-results.py(233): continue
+output-bmk-results.py(235): percent_change, short_diag, long_diag = get_short_long_diag(row, metric, sym_type, change_kind)
+ --- modulename: output-bmk-results, funcname: get_short_long_diag
+output-bmk-results.py(137): bmk = row["benchmark"]
+output-bmk-results.py(139): rel_value = row["rel_" + metric]
+output-bmk-results.py(140): prev_value = row[metric + "_x"]
+output-bmk-results.py(141): curr_value = row[metric + "_y"]
+output-bmk-results.py(142): if metric == "num_vect_loops" or metric == "num_sve_loops":
+output-bmk-results.py(152): suffix = ""
+output-bmk-results.py(153): if metric == "sample":
+output-bmk-results.py(154): prefix_regression = "slowed down by"
+output-bmk-results.py(155): prefix_improvement = "sped up by"
+output-bmk-results.py(156): suffix = "perf samples"
+output-bmk-results.py(167): if sym_type=="symbol":
+output-bmk-results.py(168): item=bmk+":"+row["symbol"]
+output-bmk-results.py(172): short_diag = "{1} {2}% - {0}".format(item, locals()["prefix_" + change_kind], abs(rel_value - 100))
+output-bmk-results.py(173): long_diag = "{0} - from {1} to {2} {3}".format(short_diag, prev_value, curr_value, suffix)
+output-bmk-results.py(174): return abs(rel_value - 100), short_diag, long_diag
+output-bmk-results.py(239): if metric == "sample" \
+output-bmk-results.py(240): and row['symbol_md5sum_x'] == row['symbol_md5sum_y'] \
+output-bmk-results.py(241): and row['symbol_md5sum_x'] != "-1" \
+output-bmk-results.py(242): and row['symbol_md5sum_x'] != "d41d8cd98f00b204e9800998ecf8427e":
+output-bmk-results.py(243): f_skip.write_csv((row["benchmark"], row["symbol"], short_diag, long_diag))
+ --- modulename: output-bmk-results, funcname: write_csv
+output-bmk-results.py(41): if not self.predicate or not self.csvwriter:
+output-bmk-results.py(43): self.csvwriter.writerow(arr)
+output-bmk-results.py(244): continue
output-bmk-results.py(224): for index, row in out_df.iterrows():
output-bmk-results.py(226): threshold = get_threshold(sym_type, metric, mode, row["benchmark"], row["symbol"])
--- modulename: output-bmk-results, funcname: get_threshold
@@ -2266,7 +2372,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 458.sjeng,[.] std_eval : sample=-2% (threshold=15%)
+DEBUG: checking symbol.regression : 458.sjeng,[.] std_eval : sample=4% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2293,7 +2399,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 458.sjeng,[.] gen : sample=3% (threshold=15%)
+DEBUG: checking symbol.regression : 458.sjeng,[.] gen : sample=-6% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2320,7 +2426,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 458.sjeng,[.] push_slidE : sample=-6% (threshold=15%)
+DEBUG: checking symbol.regression : 458.sjeng,[.] push_slidE : sample=6% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2401,7 +2507,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 462.libquantum,[.] quantum_sigma_x : sample=0% (threshold=15%)
+DEBUG: checking symbol.regression : 462.libquantum,[.] quantum_sigma_x : sample=-3% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2428,7 +2534,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 462.libquantum,[.] quantum_cnot : sample=-2% (threshold=15%)
+DEBUG: checking symbol.regression : 462.libquantum,[.] quantum_cnot : sample=3% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2474,7 +2580,7 @@ output-bmk-results.py(110): return default_threshold[(change_kind,metric,mod
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 482.sphinx3,libc.so.6 : sample=-14% (threshold=15%)
+DEBUG: checking symbol.regression : 482.sphinx3,libc.so.6 : sample=12% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2496,46 +2602,12 @@ output-bmk-results.py(110): return default_threshold[(change_kind,metric,mod
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 482.sphinx3,[.] __vfscanf_internal : sample=-200% (threshold=15%)
+DEBUG: checking symbol.regression : 482.sphinx3,[.] __vfscanf_internal : sample=33% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
output-bmk-results.py(184): return (result - 100 > threshold)
-output-bmk-results.py(235): percent_change, short_diag, long_diag = get_short_long_diag(row, metric, sym_type, change_kind)
- --- modulename: output-bmk-results, funcname: get_short_long_diag
-output-bmk-results.py(137): bmk = row["benchmark"]
-output-bmk-results.py(139): rel_value = row["rel_" + metric]
-output-bmk-results.py(140): prev_value = row[metric + "_x"]
-output-bmk-results.py(141): curr_value = row[metric + "_y"]
-output-bmk-results.py(142): if metric == "num_vect_loops" or metric == "num_sve_loops":
-output-bmk-results.py(152): suffix = ""
-output-bmk-results.py(153): if metric == "sample":
-output-bmk-results.py(154): prefix_regression = "slowed down by"
-output-bmk-results.py(155): prefix_improvement = "sped up by"
-output-bmk-results.py(156): suffix = "perf samples"
-output-bmk-results.py(167): if sym_type=="symbol":
-output-bmk-results.py(168): item=bmk+":"+row["symbol"]
-output-bmk-results.py(172): short_diag = "{1} {2}% - {0}".format(item, locals()["prefix_" + change_kind], abs(rel_value - 100))
-output-bmk-results.py(173): long_diag = "{0} - from {1} to {2} {3}".format(short_diag, prev_value, curr_value, suffix)
-output-bmk-results.py(174): return abs(rel_value - 100), short_diag, long_diag
-output-bmk-results.py(239): if metric == "sample" \
-output-bmk-results.py(240): and row['symbol_md5sum_x'] == row['symbol_md5sum_y'] \
-output-bmk-results.py(241): and row['symbol_md5sum_x'] != "-1" \
-output-bmk-results.py(246): print("DEBUG: *** {0},{1} : {2}".format(row["benchmark"], row["symbol"], long_diag))
-DEBUG: *** 482.sphinx3,[.] __vfscanf_internal : slowed down by 200% - 482.sphinx3:[.] __vfscanf_internal - from 1 to 3 perf samples
-output-bmk-results.py(248): f_out.write_csv((percent_change, row["benchmark"], row["symbol"], short_diag, long_diag))
- --- modulename: output-bmk-results, funcname: write_csv
-output-bmk-results.py(41): if not self.predicate or not self.csvwriter:
-output-bmk-results.py(43): self.csvwriter.writerow(arr)
-output-bmk-results.py(249): if change_kind == "regression":
-output-bmk-results.py(250): f_regr.write("# {0},{1}\n".format(row["symbol"], long_diag))
- --- modulename: output-bmk-results, funcname: write
-output-bmk-results.py(36): if not self.predicate or not self.outf:
-output-bmk-results.py(38): self.outf.write(string)
-output-bmk-results.py(251): f_ebp.write("++benchmarks {0} ".format(row["benchmark"]))
- --- modulename: output-bmk-results, funcname: write
-output-bmk-results.py(36): if not self.predicate or not self.outf:
-output-bmk-results.py(38): self.outf.write(string)
+output-bmk-results.py(233): continue
output-bmk-results.py(224): for index, row in out_df.iterrows():
output-bmk-results.py(226): threshold = get_threshold(sym_type, metric, mode, row["benchmark"], row["symbol"])
--- modulename: output-bmk-results, funcname: get_threshold
@@ -2552,46 +2624,12 @@ output-bmk-results.py(110): return default_threshold[(change_kind,metric,mod
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 482.sphinx3,[.] __rawmemchr : sample=-100% (threshold=15%)
+DEBUG: checking symbol.regression : 482.sphinx3,[.] __isoc99_sscanf : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
output-bmk-results.py(184): return (result - 100 > threshold)
-output-bmk-results.py(235): percent_change, short_diag, long_diag = get_short_long_diag(row, metric, sym_type, change_kind)
- --- modulename: output-bmk-results, funcname: get_short_long_diag
-output-bmk-results.py(137): bmk = row["benchmark"]
-output-bmk-results.py(139): rel_value = row["rel_" + metric]
-output-bmk-results.py(140): prev_value = row[metric + "_x"]
-output-bmk-results.py(141): curr_value = row[metric + "_y"]
-output-bmk-results.py(142): if metric == "num_vect_loops" or metric == "num_sve_loops":
-output-bmk-results.py(152): suffix = ""
-output-bmk-results.py(153): if metric == "sample":
-output-bmk-results.py(154): prefix_regression = "slowed down by"
-output-bmk-results.py(155): prefix_improvement = "sped up by"
-output-bmk-results.py(156): suffix = "perf samples"
-output-bmk-results.py(167): if sym_type=="symbol":
-output-bmk-results.py(168): item=bmk+":"+row["symbol"]
-output-bmk-results.py(172): short_diag = "{1} {2}% - {0}".format(item, locals()["prefix_" + change_kind], abs(rel_value - 100))
-output-bmk-results.py(173): long_diag = "{0} - from {1} to {2} {3}".format(short_diag, prev_value, curr_value, suffix)
-output-bmk-results.py(174): return abs(rel_value - 100), short_diag, long_diag
-output-bmk-results.py(239): if metric == "sample" \
-output-bmk-results.py(240): and row['symbol_md5sum_x'] == row['symbol_md5sum_y'] \
-output-bmk-results.py(241): and row['symbol_md5sum_x'] != "-1" \
-output-bmk-results.py(246): print("DEBUG: *** {0},{1} : {2}".format(row["benchmark"], row["symbol"], long_diag))
-DEBUG: *** 482.sphinx3,[.] __rawmemchr : slowed down by 100% - 482.sphinx3:[.] __rawmemchr - from 1 to 2 perf samples
-output-bmk-results.py(248): f_out.write_csv((percent_change, row["benchmark"], row["symbol"], short_diag, long_diag))
- --- modulename: output-bmk-results, funcname: write_csv
-output-bmk-results.py(41): if not self.predicate or not self.csvwriter:
-output-bmk-results.py(43): self.csvwriter.writerow(arr)
-output-bmk-results.py(249): if change_kind == "regression":
-output-bmk-results.py(250): f_regr.write("# {0},{1}\n".format(row["symbol"], long_diag))
- --- modulename: output-bmk-results, funcname: write
-output-bmk-results.py(36): if not self.predicate or not self.outf:
-output-bmk-results.py(38): self.outf.write(string)
-output-bmk-results.py(251): f_ebp.write("++benchmarks {0} ".format(row["benchmark"]))
- --- modulename: output-bmk-results, funcname: write
-output-bmk-results.py(36): if not self.predicate or not self.outf:
-output-bmk-results.py(38): self.outf.write(string)
+output-bmk-results.py(233): continue
output-bmk-results.py(224): for index, row in out_df.iterrows():
output-bmk-results.py(226): threshold = get_threshold(sym_type, metric, mode, row["benchmark"], row["symbol"])
--- modulename: output-bmk-results, funcname: get_threshold
@@ -2640,7 +2678,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.regression : 483.xalancbmk,[.] _ZN11xercesc_2_510ValueStore13isDuplicateOfEPNS_17DatatypeValidatorEPKtS2_S4_ : sample=12% (threshold=15%)
+DEBUG: checking symbol.regression : 483.xalancbmk,[.] _ZN11xercesc_2_510ValueStore13isDuplicateOfEPNS_17DatatypeValidatorEPKtS2_S4_ : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_regression
output-bmk-results.py(183): if metric in metric_utils.higher_regress_metrics:
@@ -2684,7 +2722,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 401.bzip2,[.] BZ2_blockSort : sample=-3% (threshold=15%)
+DEBUG: checking symbol.improvement : 401.bzip2,[.] BZ2_blockSort : sample=6% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2711,7 +2749,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 401.bzip2,[.] mainGtU : sample=2% (threshold=15%)
+DEBUG: checking symbol.improvement : 401.bzip2,[.] mainGtU : sample=-5% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2792,7 +2830,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 401.bzip2,[.] BZ2_decompress : sample=-1% (threshold=15%)
+DEBUG: checking symbol.improvement : 401.bzip2,[.] BZ2_decompress : sample=2% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2819,7 +2857,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 403.gcc,[.] compute_transp : sample=0% (threshold=41.49%)
+DEBUG: checking symbol.improvement : 403.gcc,[.] compute_transp : sample=17% (threshold=42.63%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2846,7 +2884,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 403.gcc,libc.so.6 : sample=-14% (threshold=50.099999999999994%)
+DEBUG: checking symbol.improvement : 403.gcc,[.] bitmap_operation : sample=-8% (threshold=42.12%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2873,7 +2911,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 403.gcc,[.] memset : sample=-8% (threshold=53.25%)
+DEBUG: checking symbol.improvement : 403.gcc,[.] memset : sample=31% (threshold=53.61%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2900,7 +2938,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 403.gcc,[.] bitmap_operation : sample=0% (threshold=42.96%)
+DEBUG: checking symbol.improvement : 429.mcf,[.] primal_bea_mpp : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2927,7 +2965,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 429.mcf,[.] primal_bea_mpp : sample=1% (threshold=15%)
+DEBUG: checking symbol.improvement : 429.mcf,[.] refresh_potential : sample=1% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2954,7 +2992,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 429.mcf,[.] refresh_potential : sample=-3% (threshold=15%)
+DEBUG: checking symbol.improvement : 429.mcf,[.] price_out_impl : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2981,7 +3019,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 429.mcf,[.] price_out_impl : sample=0% (threshold=15%)
+DEBUG: checking symbol.improvement : 433.milc,[.] make_gather : sample=0% (threshold=56.489999999999995%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -2996,19 +3034,14 @@ output-bmk-results.py(99): spec_thr = get_specific_thresholds(metric, mod
output-bmk-results.py(57): if specific_variability is None:
output-bmk-results.py(60): var = specific_variability[ (specific_variability['benchmark'] == bmk) & (specific_variability['symbol'].str.strip() == symb)]
output-bmk-results.py(61): if var.empty:
-output-bmk-results.py(63): elif len(var)>1:
-output-bmk-results.py(68): if var.iloc[0]['sample_variation_average']>0 :
-output-bmk-results.py(69): threshold = ( var.iloc[0]['sample_variation_average'] )
-output-bmk-results.py(70): if mode == "build":
-output-bmk-results.py(74): threshold *= 3
-output-bmk-results.py(81): return threshold
+output-bmk-results.py(62): return np.nan
output-bmk-results.py(100): if not np.isnan(spec_thr):
-output-bmk-results.py(104): spec_thr=max(spec_thr, default_threshold[(change_kind,metric,mode)])
-output-bmk-results.py(105): return spec_thr
+output-bmk-results.py(107): if metric == "num_vect_loops" or metric == "num_sve_loops":
+output-bmk-results.py(110): return default_threshold[(change_kind,metric,mode)]
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 433.milc,[.] make_gather : sample=20% (threshold=58.32000000000001%)
+DEBUG: checking symbol.improvement : 444.namd,libc.so.6 : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3030,7 +3063,7 @@ output-bmk-results.py(110): return default_threshold[(change_kind,metric,mod
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 444.namd,libc.so.6 : sample=0% (threshold=15%)
+DEBUG: checking symbol.improvement : 444.namd,[.] __vfscanf_internal : sample=-100% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3045,45 +3078,24 @@ output-bmk-results.py(99): spec_thr = get_specific_thresholds(metric, mod
output-bmk-results.py(57): if specific_variability is None:
output-bmk-results.py(60): var = specific_variability[ (specific_variability['benchmark'] == bmk) & (specific_variability['symbol'].str.strip() == symb)]
output-bmk-results.py(61): if var.empty:
-output-bmk-results.py(62): return np.nan
+output-bmk-results.py(63): elif len(var)>1:
+output-bmk-results.py(68): if var.iloc[0]['sample_variation_average']>0 :
+output-bmk-results.py(69): threshold = ( var.iloc[0]['sample_variation_average'] )
+output-bmk-results.py(70): if mode == "build":
+output-bmk-results.py(74): threshold *= 3
+output-bmk-results.py(81): return threshold
output-bmk-results.py(100): if not np.isnan(spec_thr):
-output-bmk-results.py(107): if metric == "num_vect_loops" or metric == "num_sve_loops":
-output-bmk-results.py(110): return default_threshold[(change_kind,metric,mode)]
+output-bmk-results.py(104): spec_thr=max(spec_thr, default_threshold[(change_kind,metric,mode)])
+output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 444.namd,[.] __vfscanf_internal : sample=50% (threshold=15%)
+DEBUG: checking symbol.improvement : 450.soplex,[.] _ZN6soplex7NameSet3addERNS_7DataKeyEPKc : sample=0% (threshold=107.78999999999999%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
output-bmk-results.py(193): return (100 - result > threshold)
-output-bmk-results.py(235): percent_change, short_diag, long_diag = get_short_long_diag(row, metric, sym_type, change_kind)
- --- modulename: output-bmk-results, funcname: get_short_long_diag
-output-bmk-results.py(137): bmk = row["benchmark"]
-output-bmk-results.py(139): rel_value = row["rel_" + metric]
-output-bmk-results.py(140): prev_value = row[metric + "_x"]
-output-bmk-results.py(141): curr_value = row[metric + "_y"]
-output-bmk-results.py(142): if metric == "num_vect_loops" or metric == "num_sve_loops":
-output-bmk-results.py(152): suffix = ""
-output-bmk-results.py(153): if metric == "sample":
-output-bmk-results.py(154): prefix_regression = "slowed down by"
-output-bmk-results.py(155): prefix_improvement = "sped up by"
-output-bmk-results.py(156): suffix = "perf samples"
-output-bmk-results.py(167): if sym_type=="symbol":
-output-bmk-results.py(168): item=bmk+":"+row["symbol"]
-output-bmk-results.py(172): short_diag = "{1} {2}% - {0}".format(item, locals()["prefix_" + change_kind], abs(rel_value - 100))
-output-bmk-results.py(173): long_diag = "{0} - from {1} to {2} {3}".format(short_diag, prev_value, curr_value, suffix)
-output-bmk-results.py(174): return abs(rel_value - 100), short_diag, long_diag
-output-bmk-results.py(239): if metric == "sample" \
-output-bmk-results.py(240): and row['symbol_md5sum_x'] == row['symbol_md5sum_y'] \
-output-bmk-results.py(241): and row['symbol_md5sum_x'] != "-1" \
-output-bmk-results.py(246): print("DEBUG: *** {0},{1} : {2}".format(row["benchmark"], row["symbol"], long_diag))
-DEBUG: *** 444.namd,[.] __vfscanf_internal : sped up by 50% - 444.namd:[.] __vfscanf_internal - from 2 to 1 perf samples
-output-bmk-results.py(248): f_out.write_csv((percent_change, row["benchmark"], row["symbol"], short_diag, long_diag))
- --- modulename: output-bmk-results, funcname: write_csv
-output-bmk-results.py(41): if not self.predicate or not self.csvwriter:
-output-bmk-results.py(43): self.csvwriter.writerow(arr)
-output-bmk-results.py(249): if change_kind == "regression":
+output-bmk-results.py(233): continue
output-bmk-results.py(224): for index, row in out_df.iterrows():
output-bmk-results.py(226): threshold = get_threshold(sym_type, metric, mode, row["benchmark"], row["symbol"])
--- modulename: output-bmk-results, funcname: get_threshold
@@ -3105,7 +3117,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 450.soplex,libc.so.6 : sample=11% (threshold=66.21000000000001%)
+DEBUG: checking symbol.improvement : 450.soplex,libc.so.6 : sample=12% (threshold=66.12%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3132,7 +3144,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 450.soplex,[.] _ZN6soplex7NameSet3addERNS_7DataKeyEPKc : sample=-60% (threshold=108.75%)
+DEBUG: checking symbol.improvement : 450.soplex,[.] strcmp : sample=20% (threshold=92.78999999999999%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3149,17 +3161,14 @@ output-bmk-results.py(60): var = specific_variability[ (specific_variability
output-bmk-results.py(61): if var.empty:
output-bmk-results.py(63): elif len(var)>1:
output-bmk-results.py(68): if var.iloc[0]['sample_variation_average']>0 :
-output-bmk-results.py(69): threshold = ( var.iloc[0]['sample_variation_average'] )
-output-bmk-results.py(70): if mode == "build":
-output-bmk-results.py(74): threshold *= 3
-output-bmk-results.py(81): return threshold
+output-bmk-results.py(83): return np.nan
output-bmk-results.py(100): if not np.isnan(spec_thr):
-output-bmk-results.py(104): spec_thr=max(spec_thr, default_threshold[(change_kind,metric,mode)])
-output-bmk-results.py(105): return spec_thr
+output-bmk-results.py(107): if metric == "num_vect_loops" or metric == "num_sve_loops":
+output-bmk-results.py(110): return default_threshold[(change_kind,metric,mode)]
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 450.soplex,[.] strcmp : sample=17% (threshold=91.80000000000001%)
+DEBUG: checking symbol.improvement : 450.soplex,[.] _ZN6soplex5SPxLP7readMPSERSiPNS_7NameSetES3_PNS_7DIdxSetE : sample=-200% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3186,7 +3195,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 458.sjeng,[.] std_eval : sample=-2% (threshold=15%)
+DEBUG: checking symbol.improvement : 458.sjeng,[.] std_eval : sample=4% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3213,7 +3222,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 458.sjeng,[.] gen : sample=3% (threshold=15%)
+DEBUG: checking symbol.improvement : 458.sjeng,[.] gen : sample=-6% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3240,7 +3249,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 458.sjeng,[.] push_slidE : sample=-6% (threshold=15%)
+DEBUG: checking symbol.improvement : 458.sjeng,[.] push_slidE : sample=6% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3321,7 +3330,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 462.libquantum,[.] quantum_sigma_x : sample=0% (threshold=15%)
+DEBUG: checking symbol.improvement : 462.libquantum,[.] quantum_sigma_x : sample=-3% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3348,7 +3357,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 462.libquantum,[.] quantum_cnot : sample=-2% (threshold=15%)
+DEBUG: checking symbol.improvement : 462.libquantum,[.] quantum_cnot : sample=3% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3394,7 +3403,7 @@ output-bmk-results.py(110): return default_threshold[(change_kind,metric,mod
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 482.sphinx3,libc.so.6 : sample=-14% (threshold=15%)
+DEBUG: checking symbol.improvement : 482.sphinx3,libc.so.6 : sample=12% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3416,12 +3425,38 @@ output-bmk-results.py(110): return default_threshold[(change_kind,metric,mod
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 482.sphinx3,[.] __vfscanf_internal : sample=-200% (threshold=15%)
+DEBUG: checking symbol.improvement : 482.sphinx3,[.] __vfscanf_internal : sample=33% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
output-bmk-results.py(193): return (100 - result > threshold)
-output-bmk-results.py(233): continue
+output-bmk-results.py(235): percent_change, short_diag, long_diag = get_short_long_diag(row, metric, sym_type, change_kind)
+ --- modulename: output-bmk-results, funcname: get_short_long_diag
+output-bmk-results.py(137): bmk = row["benchmark"]
+output-bmk-results.py(139): rel_value = row["rel_" + metric]
+output-bmk-results.py(140): prev_value = row[metric + "_x"]
+output-bmk-results.py(141): curr_value = row[metric + "_y"]
+output-bmk-results.py(142): if metric == "num_vect_loops" or metric == "num_sve_loops":
+output-bmk-results.py(152): suffix = ""
+output-bmk-results.py(153): if metric == "sample":
+output-bmk-results.py(154): prefix_regression = "slowed down by"
+output-bmk-results.py(155): prefix_improvement = "sped up by"
+output-bmk-results.py(156): suffix = "perf samples"
+output-bmk-results.py(167): if sym_type=="symbol":
+output-bmk-results.py(168): item=bmk+":"+row["symbol"]
+output-bmk-results.py(172): short_diag = "{1} {2}% - {0}".format(item, locals()["prefix_" + change_kind], abs(rel_value - 100))
+output-bmk-results.py(173): long_diag = "{0} - from {1} to {2} {3}".format(short_diag, prev_value, curr_value, suffix)
+output-bmk-results.py(174): return abs(rel_value - 100), short_diag, long_diag
+output-bmk-results.py(239): if metric == "sample" \
+output-bmk-results.py(240): and row['symbol_md5sum_x'] == row['symbol_md5sum_y'] \
+output-bmk-results.py(241): and row['symbol_md5sum_x'] != "-1" \
+output-bmk-results.py(246): print("DEBUG: *** {0},{1} : {2}".format(row["benchmark"], row["symbol"], long_diag))
+DEBUG: *** 482.sphinx3,[.] __vfscanf_internal : sped up by 33% - 482.sphinx3:[.] __vfscanf_internal - from 3 to 2 perf samples
+output-bmk-results.py(248): f_out.write_csv((percent_change, row["benchmark"], row["symbol"], short_diag, long_diag))
+ --- modulename: output-bmk-results, funcname: write_csv
+output-bmk-results.py(41): if not self.predicate or not self.csvwriter:
+output-bmk-results.py(43): self.csvwriter.writerow(arr)
+output-bmk-results.py(249): if change_kind == "regression":
output-bmk-results.py(224): for index, row in out_df.iterrows():
output-bmk-results.py(226): threshold = get_threshold(sym_type, metric, mode, row["benchmark"], row["symbol"])
--- modulename: output-bmk-results, funcname: get_threshold
@@ -3438,7 +3473,7 @@ output-bmk-results.py(110): return default_threshold[(change_kind,metric,mod
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 482.sphinx3,[.] __rawmemchr : sample=-100% (threshold=15%)
+DEBUG: checking symbol.improvement : 482.sphinx3,[.] __isoc99_sscanf : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3492,7 +3527,7 @@ output-bmk-results.py(105): return spec_thr
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
output-bmk-results.py(229): .format(sym_type, change_kind, row["benchmark"], row["symbol"], metric, 100-row["rel_" + metric], threshold))
output-bmk-results.py(228): print("DEBUG: checking {0}.{1} : {2},{3} : {4}={5}% (threshold={6}%)"\
-DEBUG: checking symbol.improvement : 483.xalancbmk,[.] _ZN11xercesc_2_510ValueStore13isDuplicateOfEPNS_17DatatypeValidatorEPKtS2_S4_ : sample=12% (threshold=15%)
+DEBUG: checking symbol.improvement : 483.xalancbmk,[.] _ZN11xercesc_2_510ValueStore13isDuplicateOfEPNS_17DatatypeValidatorEPKtS2_S4_ : sample=0% (threshold=15%)
output-bmk-results.py(232): if not is_entry_xxx[change_kind](metric, row["rel_" + metric], threshold):
--- modulename: output-bmk-results, funcname: is_entry_improvement
output-bmk-results.py(192): if metric in metric_utils.higher_regress_metrics:
@@ -3513,7 +3548,6 @@ output-bmk-results.py(305): f_skip.close()
output-bmk-results.py(29): if not self.outf:
output-bmk-results.py(31): self.outf.close()
output-bmk-results.py(32): if os.stat(self.filename).st_size == 0:
-output-bmk-results.py(33): os.remove(self.filename)
output-bmk-results.py(306): f_regr.close()
--- modulename: output-bmk-results, funcname: close
output-bmk-results.py(29): if not self.outf:
diff --git a/notify/results.regressions b/notify/results.regressions
index 2ebeb9c..0bf5dcb 100644
--- a/notify/results.regressions
+++ b/notify/results.regressions
@@ -1,2 +1 @@
-# [.] __vfscanf_internal,slowed down by 200% - 482.sphinx3:[.] __vfscanf_internal - from 1 to 3 perf samples
-# [.] __rawmemchr,slowed down by 100% - 482.sphinx3:[.] __rawmemchr - from 1 to 2 perf samples
+# [.] __vfscanf_internal,slowed down by 100% - 444.namd:[.] __vfscanf_internal - from 1 to 2 perf samples
diff --git a/notify/symbol.improvement b/notify/symbol.improvement
index 4701642..fbcb7b9 100644
--- a/notify/symbol.improvement
+++ b/notify/symbol.improvement
@@ -1 +1 @@
-50,444.namd,[.] __vfscanf_internal,sped up by 50% - 444.namd:[.] __vfscanf_internal,sped up by 50% - 444.namd:[.] __vfscanf_internal - from 2 to 1 perf samples
+33,482.sphinx3,[.] __vfscanf_internal,sped up by 33% - 482.sphinx3:[.] __vfscanf_internal,sped up by 33% - 482.sphinx3:[.] __vfscanf_internal - from 3 to 2 perf samples
diff --git a/notify/symbol.regression b/notify/symbol.regression
index 933e2fd..084c8ff 100644
--- a/notify/symbol.regression
+++ b/notify/symbol.regression
@@ -1,2 +1 @@
-200,482.sphinx3,[.] __vfscanf_internal,slowed down by 200% - 482.sphinx3:[.] __vfscanf_internal,slowed down by 200% - 482.sphinx3:[.] __vfscanf_internal - from 1 to 3 perf samples
-100,482.sphinx3,[.] __rawmemchr,slowed down by 100% - 482.sphinx3:[.] __rawmemchr,slowed down by 100% - 482.sphinx3:[.] __rawmemchr - from 1 to 2 perf samples
+100,444.namd,[.] __vfscanf_internal,slowed down by 100% - 444.namd:[.] __vfscanf_internal,slowed down by 100% - 444.namd:[.] __vfscanf_internal - from 1 to 2 perf samples