Use more C++17
[WebKit-https.git] / PerformanceTests / ChangeLog
1 2018-05-21  Yusuke Suzuki  <utatane.tea@gmail.com>
2
3         Use more C++17
4         https://bugs.webkit.org/show_bug.cgi?id=185176
5
6         Reviewed by JF Bastien.
7
8         * MallocBench/MallocBench.xcodeproj/project.pbxproj:
9         * MediaTime/Configurations/Base.xcconfig:
10         * MediaTime/MediaTime.xcodeproj/project.pbxproj:
11
12 2018-04-30  Myles C. Maxfield  <mmaxfield@apple.com>
13
14         Improve the performance of FontCascadeDescription's effectiveFamilies
15         https://bugs.webkit.org/show_bug.cgi?id=184720
16
17         Reviewed by Simon Fraser.
18
19         This performance test calls SystemFontDatabase::systemFontCascadeList() around 2,000,000 times (before
20         this patch is applied), which is roughly equivalent to the page we found the performance problem on.
21         The calling pattern is roughly equivalent in this test.
22
23         * Layout/system-ui.html: Added.
24
25 2018-03-08  Antti Koivisto  <antti@apple.com>
26
27         Update StyleBench version number in page title to 0.3
28
29         * StyleBench/index.html:
30
31         There has been a bunch of changes, most notably the addition of attribute selector test step.
32
33 2018-02-16  Dean Jackson  <dino@apple.com>
34
35         Use OPENGL macros to be more clear about which OpenGL/ES WebGL uses on Cocoa
36         https://bugs.webkit.org/show_bug.cgi?id=182894
37
38         Reviewed by Tim Horton.
39
40         Rename OPENGL_ES_2 to OPENGL_ES.
41
42         * StitchMarker/wtf/Platform.h:
43
44 2018-02-09  Ryosuke Niwa  <rniwa@webkit.org>
45
46         Make run-perf-tests work with Speedometer 2.0 and re-enable the test
47         https://bugs.webkit.org/show_bug.cgi?id=182088
48
49         Reviewed by Antti Koivisto.
50
51         This patch updates the test harness to report new metrics of Speedometer 2.0.
52
53         Replaced the total time by the geometric mean of the time spent in each suite, and added scores
54         as a metric in addition to time. Also, updated the PerfTestRunner harness and the results template
55         to support "Score" metric with "pt" as its unit.
56
57         * Skipped: Unskipped the test.
58         * Speedometer/resources/benchmark-report.js:
59         (window.benchmarkClient.willStartFirstIteration..createTest): Added the unit as an optional argument
60         to report the score in addition to time. Also report the geomean of time instead of the total time.
61         (window.benchmarkClient.willStartFirstIteration): Report the geomean of time.
62         (window.benchmarkClient.didRunSuites): Record the entire measuredValues instead of just tests.
63         (window.benchmarkClient.didFinishLastIteration): Report the scores.
64
65 2018-02-09  Ross Kirsling  <ross.kirsling@sony.com>
66
67         Use REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR on any non-Windows port.
68         https://bugs.webkit.org/show_bug.cgi?id=182623
69
70         Reviewed by Alex Christensen.
71
72         * StitchMarker/wtf/Platform.h:
73         Simplify #if.
74
75 2018-02-01  Antti Koivisto  <antti@apple.com>
76
77         StyleBench: Attribute selectors and other improvements
78         https://bugs.webkit.org/show_bug.cgi?id=182387
79
80         Reviewed by Joseph Pecoraro.
81
82         - Add some attributes to elements in all tests
83         - Add some attribute selectors to stylesheets in all tests
84         - Also add some * selectors to all stylesheets.
85         - Add attribute mutation step to all suites
86         - Make test steps do more mutations (25->100) and reduce the number of steps to keep testing time in check.
87           Too fast steps were running into timer resolution limits.
88
89         * StyleBench/resources/style-bench.js:
90         (defaultConfiguration):
91         (prototype.randomAttributeName):
92         (prototype.randomAttributeValue):
93         (prototype.randomAttributeSelector):
94         (prototype.makeCompoundSelector):
95         (prototype.makeElement):
96         (prototype.addClasses):
97         (prototype.removeClasses):
98         (prototype.mutateAttributes):
99         (prototype.async.runForever):
100         * StyleBench/resources/tests.js:
101         (makeSteps):
102         (makeSuite):
103
104 2018-02-01  Geoffrey Garen  <ggaren@apple.com>
105
106         Make MallocBench easier for non-WebKit engineers to run
107         https://bugs.webkit.org/show_bug.cgi?id=182415
108
109         Reviewed by Saam Barati.
110
111         * MallocBench/MallocBench.xcodeproj/project.pbxproj: Use c++14 so we
112         can make_unique.
113
114         Specify that we support all Darwin platforms so you can test them.
115
116         * MallocBench/run-malloc-benchmarks: Specify the path to MallocBench
117         and libmbmalloc explicitly, rather than computing them implicitly
118         using webkitdirs. Non-WebKit folks don't have the directory structure
119         required by webkitdirs.
120
121         Remove Linux-specific and cmake-specific behaviors because we only
122         needed them in the world of implicit path computation.
123
124 2018-01-31  Ryosuke Niwa  <rniwa@webkit.org>
125
126         Make run-perf-tests work with StyleBench and re-enable it
127         https://bugs.webkit.org/show_bug.cgi?id=182322
128
129         Reviewed by Antti Koivisto.
130
131         This patch updates the test harness to report new metrics of StyleBench.
132
133         Replaced the total time by the geometric mean of the time spent in each suite, and added scores
134         as a metric in addition to time. Also, updated the PerfTestRunner harness and the results template
135         to support "Score" metric with "pt" as its unit.
136
137         * Skipped: Unskipped the test.
138         * StyleBench/resources/benchmark-report.js:
139         (window.benchmarkClient.willStartFirstIteration..createTest): Added the unit as an optional argument
140         to report the score in addition to time. Also report the geomean of time instead of the total time.
141         (window.benchmarkClient.willStartFirstIteration): Report the geomean of time.
142         (window.benchmarkClient.didRunSuites): Record the entire measuredValues instead of just tests.
143         (window.benchmarkClient.didFinishLastIteration): Report the scores.
144         * resources/results-template.html: Added "Score" as a metric and "pt" as its unit.
145         * resources/runner.js:
146         (PerfTestRunner..finish): Ditto.
147
148 2018-01-30  Ryosuke Niwa  <rniwa@webkit.org>
149
150         StyleBench: Generate more mutation steps
151         https://bugs.webkit.org/show_bug.cgi?id=182291
152
153         Rubber-stamped by Antti Koivisto
154
155         Use zero-based index instead of one-based index.
156
157         * StyleBench/resources/tests.js:
158         (makeSteps):
159
160 2018-01-30  Antti Koivisto  <antti@apple.com>
161
162         StyleBench: Generate more mutation steps
163         https://bugs.webkit.org/show_bug.cgi?id=182291
164
165         Reviewed by Ryosuke Niwa.
166
167         The test should be doing multiple rounds of mutations in a single document to test what is supposed to test (like it did before r227756).
168         This also makes test results more stable and less dependent on possible first-time costs.
169
170         * StyleBench/resources/benchmark-runner.js:
171
172         Adjust correctionFactor to match the new steps count. With 1.5 Firefox is ~72rpm.
173
174         * StyleBench/resources/tests.js:
175         (makeSteps):
176
177         Generate 10 rounds of class/element mutation steps.
178         Give each generated step unique name so reporting works.
179         Make individual steps do fewer mutations.
180
181 2018-01-29  Antti Koivisto  <antti@apple.com>
182
183         StyleBench: Remove : from a test name
184         https://bugs.webkit.org/show_bug.cgi?id=182258
185
186         Reviewed by Ryosuke Niwa.
187
188         It breaks reporting.
189
190         * StyleBench/resources/style-bench.js:
191         (nthPseudoClassConfiguration):
192
193 2018-01-29  Ryosuke Niwa  <rniwa@webkit.org>
194
195         Temporarily skip StyleBench until webkit.org/b/182088 is fixed.
196
197         * Skipped:
198
199 2018-01-29  Ryosuke Niwa  <rniwa@webkit.org>
200
201         Make StyleBench compatible with run-benchmark and run-perf-tests
202         https://bugs.webkit.org/show_bug.cgi?id=182262
203
204         Reviewed by Antti Koivisto.
205
206         Copied resource files referenced from Speedometer directory since run-benchmark needs to be able
207         to checkout each benchmark separately.
208
209         Removed the code to create tests of the same name five times in makeSteps since this
210         won't be compatible with either run-benchmark or run-perf-tests.
211
212         * StyleBench/index.html: Removed the code to show warnings for local files since run-benchmark
213         doesn't use HTTP server in WebDriver mode.
214         * StyleBench/resources/benchmark-report.js: Copied from resources/benchmark-report.js.
215         * StyleBench/resources/benchmark-runner.js: Copied from resources/benchmark-runner.js.
216         (BenchmarkRunner.prototype._finalize): Use the correction factor of 8 instead of 5 in StyleBench.
217         * StyleBench/resources/gauge.png: Copied from resources/gauge.png.
218         * StyleBench/resources/gauge@2x.png: Copied from resources/gauge@2x.png.
219         * StyleBench/resources/main.css: Copied from resources/main.css.
220         * StyleBench/resources/main.js: Copied from resources/main.js.
221         * StyleBench/resources/tests.js:
222         (makeSteps): Only make each test once.
223
224 2018-01-26  Chris Nardi  <cnardi@chromium.org>
225
226         Addressing post-review comments after r226614
227         https://bugs.webkit.org/show_bug.cgi?id=182151
228
229         Reviewed by Myles C. Maxfield.
230
231         * StitchMarker/wtf/text/StringImpl.h:
232         (WTF::isSpaceOrNewline):
233         * StitchMarker/wtf/text/TextBreakIterator.cpp:
234         (WTF::numCodeUnitsInGraphemeClusters):
235         * StitchMarker/wtf/text/TextBreakIterator.h:
236
237 2018-01-22  Antti Koivisto  <antti@apple.com>
238
239         StyleBench: Separate test for :nth pseudo classes
240         https://bugs.webkit.org/show_bug.cgi?id=181932
241
242         Reviewed by Sam Weinig.
243
244         Optimization strategies for nth are different from other structural pseudo classes (:first-child etc). Move them to a separate test.
245
246         * StyleBench/resources/style-bench.js:
247         (structuralPseudoClassConfiguration):
248         (nthPseudoClassConfiguration):
249
250             Add a new configuration.
251
252         (predefinedConfigurations):
253         (pseudoClassConfiguration): Deleted.
254
255 2018-01-17  Ryosuke Niwa  <rniwa@webkit.org>
256
257         Temporarily skip Speedometer until we fix the metrics.
258
259         * Skipped:
260
261 2018-01-16  Alex Christensen  <achristensen@webkit.org>
262
263         Fix Mac CMake build after r222900
264
265         * MallocBench/MallocBench/CMakeLists.txt:
266         The mbmalloc target doesn't exist if we're not in developer mode, so only use it if we are.
267
268 2018-01-09  Ryosuke Niwa  <rniwa@webkit.org>
269
270         Speedometer 2.0: Update the About page.
271         https://bugs.webkit.org/show_bug.cgi?id=175918
272
273         Reviewed by Keith Miller.
274
275         Updated the about page for Speedometer 2.0.
276
277         * Speedometer/index.html:
278
279 == Rolled over to ChangeLog-2018-01-01 ==