Title: [271275] trunk/Tools
Revision
271275
Author
[email protected]
Date
2021-01-07 16:45:26 -0800 (Thu, 07 Jan 2021)

Log Message

compare-results should be able to compare PLUM3 results
https://bugs.webkit.org/show_bug.cgi?id=220443

Reviewed by Simon Fraser.

Added the support to compare PLUM3 results.

* Scripts/compare-results:
(plum3Breakdown): Added.
(detectPLUM3): Added.
(PLUM3Results): Added.
(detectBenchmark): Detect PLUM3.
(biggerIsBetter): PLUM3 is a smaller-is-better benchmark.
(main): Added PLUM3.

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (271274 => 271275)


--- trunk/Tools/ChangeLog	2021-01-08 00:35:43 UTC (rev 271274)
+++ trunk/Tools/ChangeLog	2021-01-08 00:45:26 UTC (rev 271275)
@@ -1,3 +1,20 @@
+2021-01-07  Ryosuke Niwa  <[email protected]>
+
+        compare-results should be able to compare PLUM3 results
+        https://bugs.webkit.org/show_bug.cgi?id=220443
+
+        Reviewed by Simon Fraser.
+
+        Added the support to compare PLUM3 results.
+
+        * Scripts/compare-results:
+        (plum3Breakdown): Added.
+        (detectPLUM3): Added.
+        (PLUM3Results): Added.
+        (detectBenchmark): Detect PLUM3.
+        (biggerIsBetter): PLUM3 is a smaller-is-better benchmark.
+        (main): Added PLUM3.
+
 2021-01-07  Jonathan Bedard  <[email protected]>
 
         [webkitscmpy] Split program into separate files

Modified: trunk/Tools/Scripts/compare-results (271274 => 271275)


--- trunk/Tools/Scripts/compare-results	2021-01-08 00:35:43 UTC (rev 271274)
+++ trunk/Tools/Scripts/compare-results	2021-01-08 00:45:26 UTC (rev 271275)
@@ -55,6 +55,7 @@
 Speedometer2 = "Speedometer2"
 JetStream2 = "JetStream2"
 PLT5 = "PLT5"
+PLUM3 = "PLUM3"
 MotionMark = "MotionMark"
 MotionMark1_1 = "MotionMark-1.1"
 MotionMark1_1_1 = "MotionMark-1.1.1"
@@ -121,6 +122,14 @@
 
     return result
 
+def plum3Breakdown(jsonObject):
+    breakdown = BenchmarkResults(jsonObject)
+    result = {}
+    result[unitMarker] = "B"
+    for test in breakdown._results["PLUM3-PhysFootprint"]["tests"].keys():
+        result[test] = breakdown._results["PLUM3-PhysFootprint"]["tests"][test]["metrics"]["Allocations"]["Geometric"]["current"]
+    return result
+
 def displayStr(value):
     return "{:.6f}".format(float(value))
 
@@ -310,6 +319,14 @@
         results.append(obj["Geometric"])
     return results
 
+def detectPLUM3(payload):
+    return "PLUM3-PhysFootprint" in payload
+
+def PLUM3Results(payload):
+    assert detectPLUM3(payload)
+    breakdown = BenchmarkResults(payload)
+    return breakdown._results["PLUM3-PhysFootprint"]["metrics"]["Allocations"]["Arithmetic"]["current"]
+
 def detectMotionMark(payload):
     return "MotionMark" in payload
 
@@ -345,6 +362,8 @@
         return Speedometer2
     if detectPLT5(payload):
         return PLT5
+    if detectPLUM3(payload):
+        return PLUM3
     if detectMotionMark(payload):
         return MotionMark
     if detectMotionMark1_1(payload):
@@ -364,6 +383,8 @@
         return True
     if benchmarkType == PLT5:
         return False
+    if benchmarkType == PLUM3:
+        return False
 
     print("Should not be reached.")
     assert False
@@ -478,6 +499,14 @@
 
         if args.csv:
             writeCSV(plt5Breakdown(a), plt5Breakdown(b), args.csv)
+    elif typeA == PLUM3:
+        if args.breakdown:
+            dumpBreakdowns(plum3Breakdown(a), plum3Breakdown(b))
+
+        ttest(typeA, PLUM3Results(a), PLUM3Results(b))
+
+        if args.csv:
+            writeCSV(plum3Breakdown(a), plum3Breakdown(b), args.csv)
     else:
         print("Unknown benchmark type")
         sys.exit(1)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to