WebKit Bugzilla
Attachment 369153 Details for
Bug 197605
: JS2 should print scores for different categories
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
patch
a-backup.diff (text/plain), 3.68 KB, created by
Saam Barati
on 2019-05-06 12:03:57 PDT
(
hide
)
Description:
patch
Filename:
MIME Type:
Creator:
Saam Barati
Created:
2019-05-06 12:03:57 PDT
Size:
3.68 KB
patch
obsolete
>Index: PerformanceTests/ChangeLog >=================================================================== >--- PerformanceTests/ChangeLog (revision 244968) >+++ PerformanceTests/ChangeLog (working copy) >@@ -1,3 +1,16 @@ >+2019-05-06 Saam Barati <sbarati@apple.com> >+ >+ JS2 should print scores for different categories >+ https://bugs.webkit.org/show_bug.cgi?id=197605 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * JetStream2/JetStreamDriver.js: >+ (displayCategoryScores): >+ (isInBrowser.document.onkeydown): >+ (Driver.prototype.async.start): >+ (Driver.prototype.async.reportScoreToRunBenchmarkRunner): >+ > 2019-04-16 Jon Lee <jonlee@apple.com> > > [MotionMark] The text "kkkj" is causing Firefox console warning: `unreachable code after return statement` >Index: PerformanceTests/JetStream2/JetStreamDriver.js >=================================================================== >--- PerformanceTests/JetStream2/JetStreamDriver.js (revision 244968) >+++ PerformanceTests/JetStream2/JetStreamDriver.js (working copy) >@@ -41,6 +41,31 @@ this.currentReject = null; > const defaultIterationCount = 120; > const defaultWorstCaseCount = 4; > >+let showScoreDetails = false; >+let categoryScores = null; >+ >+function displayCategoryScores() { >+ if (!categoryScores) >+ return; >+ >+ let summaryElement = document.getElementById("result-summary"); >+ for (let [category, scores] of categoryScores) >+ summaryElement.innerHTML += `<p> ${category}: ${uiFriendlyNumber(geomean(scores))}</p>` >+ >+ categoryScores = null; >+} >+ >+if (isInBrowser) { >+ document.onkeydown = (keyboardEvent) => { >+ let key = keyboardEvent.key; >+ if (key === "d" || key === "D") { >+ showScoreDetails = true; >+ >+ displayCategoryScores(); >+ } >+ }; >+} >+ > function assert(b, m = "") { > if (!b) > throw new Error("Bad assertion: " + m); >@@ -174,7 +199,6 @@ class Driver { > await updateUI(); > > try { >- > await benchmark.run(); > } catch(e) { > JetStream.reportError(benchmark); >@@ -197,12 +221,33 @@ class Driver { > for (let benchmark of this.benchmarks) > allScores.push(benchmark.score); > >+ categoryScores = new Map; >+ for (let benchmark of this.benchmarks) { >+ for (let category of Object.keys(benchmark.subTimes())) >+ categoryScores.set(category, []); >+ } >+ >+ for (let benchmark of this.benchmarks) { >+ for (let [category, value] of Object.entries(benchmark.subTimes())) { >+ let arr = categoryScores.get(category); >+ arr.push(value); >+ } >+ } >+ > if (isInBrowser) { > summaryElement.classList.add('done'); > summaryElement.innerHTML = "<div class=\"score\">" + uiFriendlyNumber(geomean(allScores)) + "</div><label>Score</label>"; >+ summaryElement.onclick = displayCategoryScores; >+ if (showScoreDetails) >+ displayCategoryScores(); > statusElement.innerHTML = ''; >- } else >+ } else { >+ console.log("\n"); >+ for (let [category, scores] of categoryScores) >+ console.log(`${category}: ${uiFriendlyNumber(geomean(scores))}`); >+ > console.log("\nTotal Score: ", uiFriendlyNumber(geomean(allScores)), "\n"); >+ } > > this.reportScoreToRunBenchmarkRunner(); > } >@@ -331,7 +376,7 @@ class Driver { > "Time": ["Geometric"], > }, > "tests": subResults, >- };; >+ }; > } > > results = {"JetStream2.0": {"metrics" : {"Score" : ["Geometric"]}, "tests" : results}};
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 197605
:
369101
| 369153