Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 from core import perf_benchmark | 5 from core import perf_benchmark |
| 6 | 6 |
| 7 from benchmarks import silk_flags | 7 from benchmarks import silk_flags |
| 8 from measurements import smoothness | 8 from measurements import smoothness |
| 9 import page_sets | 9 import page_sets |
| 10 import page_sets.key_silk_cases | 10 import page_sets.key_silk_cases |
| 11 from telemetry import benchmark | 11 from telemetry import benchmark |
| 12 | 12 |
| 13 class _Smoothness(perf_benchmark.PerfBenchmark): | |
| 14 @classmethod | |
| 15 def Name(cls): | |
| 16 return 'smoothness' | |
| 13 | 17 |
| 14 class SmoothnessTop25(perf_benchmark.PerfBenchmark): | 18 @classmethod |
| 19 def ValueCanBeAddedPredicate(cls, value, _): | |
| 20 # Lack of first_gesture_scroll_update_latency existence is not (typically) a | |
| 21 # failure, as some smoothness pages don't perform gesture scrolling. | |
| 22 if (value.name == 'first_gesture_scroll_update_latency' and | |
| 23 value.values is None): | |
|
nednguyen
2015/09/25 20:38:47
I would suggest tracking which pages currently don
jdduke (slow)
2015/09/25 21:17:15
Done.
| |
| 24 return False | |
| 25 return True | |
| 26 | |
| 27 | |
| 28 class SmoothnessTop25(_Smoothness): | |
| 15 """Measures rendering statistics while scrolling down the top 25 web pages. | 29 """Measures rendering statistics while scrolling down the top 25 web pages. |
| 16 | 30 |
| 17 http://www.chromium.org/developers/design-documents/rendering-benchmarks | 31 http://www.chromium.org/developers/design-documents/rendering-benchmarks |
| 18 """ | 32 """ |
| 19 test = smoothness.Smoothness | 33 test = smoothness.Smoothness |
|
nednguyen
2015/09/25 20:38:47
remove test = smoothness.Smoothness here and move
jdduke (slow)
2015/09/25 21:17:15
Done.
| |
| 20 page_set = page_sets.Top25SmoothPageSet | 34 page_set = page_sets.Top25SmoothPageSet |
| 21 | 35 |
| 22 @classmethod | 36 @classmethod |
| 23 def Name(cls): | 37 def Name(cls): |
| 24 return 'smoothness.top_25_smooth' | 38 return 'smoothness.top_25_smooth' |
| 25 | 39 |
| 26 | 40 |
| 27 class SmoothnessToughFiltersCases(perf_benchmark.PerfBenchmark): | 41 class SmoothnessToughFiltersCases(_Smoothness): |
| 28 """Measures frame rate and a variety of other statistics. | 42 """Measures frame rate and a variety of other statistics. |
| 29 | 43 |
| 30 Uses a selection of pages making use of SVG and CSS Filter Effects. | 44 Uses a selection of pages making use of SVG and CSS Filter Effects. |
| 31 """ | 45 """ |
| 32 test = smoothness.Smoothness | 46 test = smoothness.Smoothness |
| 33 page_set = page_sets.ToughFiltersCasesPageSet | 47 page_set = page_sets.ToughFiltersCasesPageSet |
| 34 | 48 |
| 35 @classmethod | 49 @classmethod |
| 36 def Name(cls): | 50 def Name(cls): |
| 37 return 'smoothness.tough_filters_cases' | 51 return 'smoothness.tough_filters_cases' |
| 38 | 52 |
| 39 | 53 |
| 40 class SmoothnessToughPathRenderingCases(perf_benchmark.PerfBenchmark): | 54 class SmoothnessToughPathRenderingCases(_Smoothness): |
| 41 """Tests a selection of pages with SVG and 2D Canvas paths. | 55 """Tests a selection of pages with SVG and 2D Canvas paths. |
| 42 | 56 |
| 43 Measures frame rate and a variety of other statistics. """ | 57 Measures frame rate and a variety of other statistics. """ |
| 44 test = smoothness.Smoothness | 58 test = smoothness.Smoothness |
| 45 page_set = page_sets.ToughPathRenderingCasesPageSet | 59 page_set = page_sets.ToughPathRenderingCasesPageSet |
| 46 | 60 |
| 47 @classmethod | 61 @classmethod |
| 48 def Name(cls): | 62 def Name(cls): |
| 49 return 'smoothness.tough_path_rendering_cases' | 63 return 'smoothness.tough_path_rendering_cases' |
| 50 | 64 |
| 51 | 65 |
| 52 @benchmark.Disabled('android') # crbug.com/526901 | 66 @benchmark.Disabled('android') # crbug.com/526901 |
| 53 class SmoothnessToughCanvasCases(perf_benchmark.PerfBenchmark): | 67 class SmoothnessToughCanvasCases(_Smoothness): |
| 54 """Measures frame rate and a variety of other statistics. | 68 """Measures frame rate and a variety of other statistics. |
| 55 | 69 |
| 56 Uses a selection of pages making use of the 2D Canvas API. | 70 Uses a selection of pages making use of the 2D Canvas API. |
| 57 """ | 71 """ |
| 58 test = smoothness.Smoothness | 72 test = smoothness.Smoothness |
| 59 page_set = page_sets.ToughCanvasCasesPageSet | 73 page_set = page_sets.ToughCanvasCasesPageSet |
| 60 | 74 |
| 61 @classmethod | 75 @classmethod |
| 62 def Name(cls): | 76 def Name(cls): |
| 63 return 'smoothness.tough_canvas_cases' | 77 return 'smoothness.tough_canvas_cases' |
| 64 | 78 |
| 65 | 79 |
| 66 @benchmark.Disabled('android') # crbug.com/373812 | 80 @benchmark.Disabled('android') # crbug.com/373812 |
| 67 class SmoothnessToughWebGLCases(perf_benchmark.PerfBenchmark): | 81 class SmoothnessToughWebGLCases(_Smoothness): |
| 68 test = smoothness.Smoothness | 82 test = smoothness.Smoothness |
| 69 page_set = page_sets.ToughWebglCasesPageSet | 83 page_set = page_sets.ToughWebglCasesPageSet |
| 70 | 84 |
| 71 @classmethod | 85 @classmethod |
| 72 def Name(cls): | 86 def Name(cls): |
| 73 return 'smoothness.tough_webgl_cases' | 87 return 'smoothness.tough_webgl_cases' |
| 74 | 88 |
| 75 | 89 |
| 76 @benchmark.Enabled('android') | 90 @benchmark.Enabled('android') |
| 77 class SmoothnessMaps(perf_benchmark.PerfBenchmark): | 91 class SmoothnessMaps(_Smoothness): |
| 78 page_set = page_sets.MapsPageSet | 92 page_set = page_sets.MapsPageSet |
| 79 | 93 |
| 80 @classmethod | 94 @classmethod |
| 81 def Name(cls): | 95 def Name(cls): |
| 82 return 'smoothness.maps' | 96 return 'smoothness.maps' |
| 83 | 97 |
| 84 | 98 |
| 85 @benchmark.Disabled('android') | 99 @benchmark.Disabled('android') |
| 86 class SmoothnessKeyDesktopMoveCases(perf_benchmark.PerfBenchmark): | 100 class SmoothnessKeyDesktopMoveCases(_Smoothness): |
| 87 test = smoothness.Smoothness | 101 test = smoothness.Smoothness |
| 88 page_set = page_sets.KeyDesktopMoveCasesPageSet | 102 page_set = page_sets.KeyDesktopMoveCasesPageSet |
| 89 | 103 |
| 90 @classmethod | 104 @classmethod |
| 91 def Name(cls): | 105 def Name(cls): |
| 92 return 'smoothness.key_desktop_move_cases' | 106 return 'smoothness.key_desktop_move_cases' |
| 93 | 107 |
| 94 | 108 |
| 95 @benchmark.Enabled('android') | 109 @benchmark.Enabled('android') |
| 96 class SmoothnessKeyMobileSites(perf_benchmark.PerfBenchmark): | 110 class SmoothnessKeyMobileSites(_Smoothness): |
| 97 """Measures rendering statistics while scrolling down the key mobile sites. | 111 """Measures rendering statistics while scrolling down the key mobile sites. |
| 98 | 112 |
| 99 http://www.chromium.org/developers/design-documents/rendering-benchmarks | 113 http://www.chromium.org/developers/design-documents/rendering-benchmarks |
| 100 """ | 114 """ |
| 101 test = smoothness.Smoothness | 115 test = smoothness.Smoothness |
| 102 page_set = page_sets.KeyMobileSitesSmoothPageSet | 116 page_set = page_sets.KeyMobileSitesSmoothPageSet |
| 103 | 117 |
| 104 @classmethod | 118 @classmethod |
| 105 def Name(cls): | 119 def Name(cls): |
| 106 return 'smoothness.key_mobile_sites_smooth' | 120 return 'smoothness.key_mobile_sites_smooth' |
| 107 | 121 |
| 108 | 122 |
| 109 class SmoothnessToughAnimationCases(perf_benchmark.PerfBenchmark): | 123 class SmoothnessToughAnimationCases(_Smoothness): |
| 110 test = smoothness.SmoothnessWithRestart | 124 test = smoothness.SmoothnessWithRestart |
| 111 page_set = page_sets.ToughAnimationCasesPageSet | 125 page_set = page_sets.ToughAnimationCasesPageSet |
| 112 | 126 |
| 113 @classmethod | 127 @classmethod |
| 114 def Name(cls): | 128 def Name(cls): |
| 115 return 'smoothness.tough_animation_cases' | 129 return 'smoothness.tough_animation_cases' |
| 116 | 130 |
| 117 | 131 |
| 118 @benchmark.Enabled('android') | 132 @benchmark.Enabled('android') |
| 119 class SmoothnessKeySilkCases(perf_benchmark.PerfBenchmark): | 133 class SmoothnessKeySilkCases(_Smoothness): |
| 120 """Measures rendering statistics for the key silk cases without GPU | 134 """Measures rendering statistics for the key silk cases without GPU |
| 121 rasterization. | 135 rasterization. |
| 122 """ | 136 """ |
| 123 test = smoothness.Smoothness | 137 test = smoothness.Smoothness |
| 124 page_set = page_sets.KeySilkCasesPageSet | 138 page_set = page_sets.KeySilkCasesPageSet |
| 125 | 139 |
| 126 @classmethod | 140 @classmethod |
| 127 def Name(cls): | 141 def Name(cls): |
| 128 return 'smoothness.key_silk_cases' | 142 return 'smoothness.key_silk_cases' |
| 129 | 143 |
| 130 def CreateStorySet(self, options): | 144 def CreateStorySet(self, options): |
| 131 stories = super(SmoothnessKeySilkCases, self).CreateStorySet(options) | 145 stories = super(SmoothnessKeySilkCases, self).CreateStorySet(options) |
| 132 # Page26 (befamous) is too noisy to be useful; crbug.com/461127 | 146 # Page26 (befamous) is too noisy to be useful; crbug.com/461127 |
| 133 to_remove = [story for story in stories | 147 to_remove = [story for story in stories |
| 134 if isinstance(story, page_sets.key_silk_cases.Page26)] | 148 if isinstance(story, page_sets.key_silk_cases.Page26)] |
| 135 for story in to_remove: | 149 for story in to_remove: |
| 136 stories.RemoveStory(story) | 150 stories.RemoveStory(story) |
| 137 return stories | 151 return stories |
| 138 | 152 |
| 139 | 153 |
| 140 @benchmark.Enabled('android') | 154 @benchmark.Enabled('android') |
| 141 class SmoothnessGpuRasterizationTop25(perf_benchmark.PerfBenchmark): | 155 class SmoothnessGpuRasterizationTop25(_Smoothness): |
| 142 """Measures rendering statistics for the top 25 with GPU rasterization. | 156 """Measures rendering statistics for the top 25 with GPU rasterization. |
| 143 """ | 157 """ |
| 144 tag = 'gpu_rasterization' | 158 tag = 'gpu_rasterization' |
| 145 test = smoothness.Smoothness | 159 test = smoothness.Smoothness |
| 146 page_set = page_sets.Top25SmoothPageSet | 160 page_set = page_sets.Top25SmoothPageSet |
| 147 | 161 |
| 148 def SetExtraBrowserOptions(self, options): | 162 def SetExtraBrowserOptions(self, options): |
| 149 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 163 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 150 | 164 |
| 151 @classmethod | 165 @classmethod |
| 152 def Name(cls): | 166 def Name(cls): |
| 153 return 'smoothness.gpu_rasterization.top_25_smooth' | 167 return 'smoothness.gpu_rasterization.top_25_smooth' |
| 154 | 168 |
| 155 | 169 |
| 156 @benchmark.Enabled('android') | 170 @benchmark.Enabled('android') |
| 157 class SmoothnessGpuRasterizationKeyMobileSites(perf_benchmark.PerfBenchmark): | 171 class SmoothnessGpuRasterizationKeyMobileSites(_Smoothness): |
| 158 """Measures rendering statistics for the key mobile sites with GPU | 172 """Measures rendering statistics for the key mobile sites with GPU |
| 159 rasterization. | 173 rasterization. |
| 160 """ | 174 """ |
| 161 tag = 'gpu_rasterization' | 175 tag = 'gpu_rasterization' |
| 162 test = smoothness.Smoothness | 176 test = smoothness.Smoothness |
| 163 page_set = page_sets.KeyMobileSitesSmoothPageSet | 177 page_set = page_sets.KeyMobileSitesSmoothPageSet |
| 164 | 178 |
| 165 def SetExtraBrowserOptions(self, options): | 179 def SetExtraBrowserOptions(self, options): |
| 166 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 180 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 167 | 181 |
| 168 @classmethod | 182 @classmethod |
| 169 def Name(cls): | 183 def Name(cls): |
| 170 return 'smoothness.gpu_rasterization.key_mobile_sites_smooth' | 184 return 'smoothness.gpu_rasterization.key_mobile_sites_smooth' |
| 171 | 185 |
| 172 | 186 |
| 173 class SmoothnessGpuRasterizationToughPathRenderingCases( | 187 class SmoothnessGpuRasterizationToughPathRenderingCases(_Smoothness): |
| 174 perf_benchmark.PerfBenchmark): | |
| 175 """Tests a selection of pages with SVG and 2D canvas paths with GPU | 188 """Tests a selection of pages with SVG and 2D canvas paths with GPU |
| 176 rasterization. | 189 rasterization. |
| 177 """ | 190 """ |
| 178 tag = 'gpu_rasterization' | 191 tag = 'gpu_rasterization' |
| 179 test = smoothness.Smoothness | 192 test = smoothness.Smoothness |
| 180 page_set = page_sets.ToughPathRenderingCasesPageSet | 193 page_set = page_sets.ToughPathRenderingCasesPageSet |
| 181 | 194 |
| 182 def SetExtraBrowserOptions(self, options): | 195 def SetExtraBrowserOptions(self, options): |
| 183 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 196 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 184 | 197 |
| 185 @classmethod | 198 @classmethod |
| 186 def Name(cls): | 199 def Name(cls): |
| 187 return 'smoothness.gpu_rasterization.tough_path_rendering_cases' | 200 return 'smoothness.gpu_rasterization.tough_path_rendering_cases' |
| 188 | 201 |
| 189 | 202 |
| 190 class SmoothnessGpuRasterizationFiltersCases(perf_benchmark.PerfBenchmark): | 203 class SmoothnessGpuRasterizationFiltersCases(_Smoothness): |
| 191 """Tests a selection of pages with SVG and CSS filter effects with GPU | 204 """Tests a selection of pages with SVG and CSS filter effects with GPU |
| 192 rasterization. | 205 rasterization. |
| 193 """ | 206 """ |
| 194 tag = 'gpu_rasterization' | 207 tag = 'gpu_rasterization' |
| 195 test = smoothness.Smoothness | 208 test = smoothness.Smoothness |
| 196 page_set = page_sets.ToughFiltersCasesPageSet | 209 page_set = page_sets.ToughFiltersCasesPageSet |
| 197 | 210 |
| 198 def SetExtraBrowserOptions(self, options): | 211 def SetExtraBrowserOptions(self, options): |
| 199 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 212 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 200 | 213 |
| 201 @classmethod | 214 @classmethod |
| 202 def Name(cls): | 215 def Name(cls): |
| 203 return 'smoothness.gpu_rasterization.tough_filters_cases' | 216 return 'smoothness.gpu_rasterization.tough_filters_cases' |
| 204 | 217 |
| 205 | 218 |
| 206 @benchmark.Enabled('android') | 219 @benchmark.Enabled('android') |
| 207 class SmoothnessSyncScrollKeyMobileSites(perf_benchmark.PerfBenchmark): | 220 class SmoothnessSyncScrollKeyMobileSites(_Smoothness): |
| 208 """Measures rendering statistics for the key mobile sites with synchronous | 221 """Measures rendering statistics for the key mobile sites with synchronous |
| 209 (main thread) scrolling. | 222 (main thread) scrolling. |
| 210 """ | 223 """ |
| 211 tag = 'sync_scroll' | 224 tag = 'sync_scroll' |
| 212 test = smoothness.Smoothness | 225 test = smoothness.Smoothness |
| 213 page_set = page_sets.KeyMobileSitesSmoothPageSet | 226 page_set = page_sets.KeyMobileSitesSmoothPageSet |
| 214 | 227 |
| 215 def SetExtraBrowserOptions(self, options): | 228 def SetExtraBrowserOptions(self, options): |
| 216 silk_flags.CustomizeBrowserOptionsForSyncScrolling(options) | 229 silk_flags.CustomizeBrowserOptionsForSyncScrolling(options) |
| 217 | 230 |
| 218 @classmethod | 231 @classmethod |
| 219 def Name(cls): | 232 def Name(cls): |
| 220 return 'smoothness.sync_scroll.key_mobile_sites_smooth' | 233 return 'smoothness.sync_scroll.key_mobile_sites_smooth' |
| 221 | 234 |
| 222 | 235 |
| 223 @benchmark.Enabled('android') | 236 @benchmark.Enabled('android') |
| 224 class SmoothnessSimpleMobilePages(perf_benchmark.PerfBenchmark): | 237 class SmoothnessSimpleMobilePages(_Smoothness): |
| 225 """Measures rendering statistics for simple mobile sites page set. | 238 """Measures rendering statistics for simple mobile sites page set. |
| 226 """ | 239 """ |
| 227 test = smoothness.Smoothness | 240 test = smoothness.Smoothness |
| 228 page_set = page_sets.SimpleMobileSitesPageSet | 241 page_set = page_sets.SimpleMobileSitesPageSet |
| 229 | 242 |
| 230 @classmethod | 243 @classmethod |
| 231 def Name(cls): | 244 def Name(cls): |
| 232 return 'smoothness.simple_mobile_sites' | 245 return 'smoothness.simple_mobile_sites' |
| 233 | 246 |
| 234 | 247 |
| 235 @benchmark.Enabled('android') | 248 @benchmark.Enabled('android') |
| 236 class SmoothnessFlingSimpleMobilePages(perf_benchmark.PerfBenchmark): | 249 class SmoothnessFlingSimpleMobilePages(_Smoothness): |
| 237 """Measures rendering statistics for flinging a simple mobile sites page set. | 250 """Measures rendering statistics for flinging a simple mobile sites page set. |
| 238 """ | 251 """ |
| 239 test = smoothness.Smoothness | 252 test = smoothness.Smoothness |
| 240 page_set = page_sets.SimpleMobileSitesFlingPageSet | 253 page_set = page_sets.SimpleMobileSitesFlingPageSet |
| 241 | 254 |
| 242 def SetExtraBrowserOptions(self, options): | 255 def SetExtraBrowserOptions(self, options): |
| 243 # As the fling parameters cannot be analytically determined to not | 256 # As the fling parameters cannot be analytically determined to not |
| 244 # overscroll, disable overscrolling explicitly. Overscroll behavior is | 257 # overscroll, disable overscrolling explicitly. Overscroll behavior is |
| 245 # orthogonal to fling performance, and its activation is only more noise. | 258 # orthogonal to fling performance, and its activation is only more noise. |
| 246 options.AppendExtraBrowserArgs('--disable-overscroll-edge-effect') | 259 options.AppendExtraBrowserArgs('--disable-overscroll-edge-effect') |
| 247 | 260 |
| 248 @classmethod | 261 @classmethod |
| 249 def Name(cls): | 262 def Name(cls): |
| 250 return 'smoothness.fling.simple_mobile_sites' | 263 return 'smoothness.fling.simple_mobile_sites' |
| 251 | 264 |
| 252 | 265 |
| 253 @benchmark.Enabled('android', 'chromeos', 'mac') | 266 @benchmark.Enabled('android', 'chromeos', 'mac') |
| 254 class SmoothnessToughPinchZoomCases(perf_benchmark.PerfBenchmark): | 267 class SmoothnessToughPinchZoomCases(_Smoothness): |
| 255 """Measures rendering statistics for pinch-zooming into the tough pinch zoom | 268 """Measures rendering statistics for pinch-zooming into the tough pinch zoom |
| 256 cases. | 269 cases. |
| 257 """ | 270 """ |
| 258 test = smoothness.Smoothness | 271 test = smoothness.Smoothness |
| 259 page_set = page_sets.ToughPinchZoomCasesPageSet | 272 page_set = page_sets.ToughPinchZoomCasesPageSet |
| 260 | 273 |
| 261 @classmethod | 274 @classmethod |
| 262 def Name(cls): | 275 def Name(cls): |
| 263 return 'smoothness.tough_pinch_zoom_cases' | 276 return 'smoothness.tough_pinch_zoom_cases' |
| 264 | 277 |
| 265 | 278 |
| 266 @benchmark.Enabled('android', 'chromeos') | 279 @benchmark.Enabled('android', 'chromeos') |
| 267 class SmoothnessToughScrollingWhileZoomedInCases(perf_benchmark.PerfBenchmark): | 280 class SmoothnessToughScrollingWhileZoomedInCases(_Smoothness): |
| 268 """Measures rendering statistics for pinch-zooming then diagonal scrolling""" | 281 """Measures rendering statistics for pinch-zooming then diagonal scrolling""" |
| 269 test = smoothness.Smoothness | 282 test = smoothness.Smoothness |
| 270 page_set = page_sets.ToughScrollingWhileZoomedInCasesPageSet | 283 page_set = page_sets.ToughScrollingWhileZoomedInCasesPageSet |
| 271 | 284 |
| 272 @classmethod | 285 @classmethod |
| 273 def Name(cls): | 286 def Name(cls): |
| 274 return 'smoothness.tough_scrolling_while_zoomed_in_cases' | 287 return 'smoothness.tough_scrolling_while_zoomed_in_cases' |
| 275 | 288 |
| 276 | 289 |
| 277 @benchmark.Enabled('android') | 290 @benchmark.Enabled('android') |
| 278 class SmoothnessPolymer(perf_benchmark.PerfBenchmark): | 291 class SmoothnessPolymer(_Smoothness): |
| 279 """Measures rendering statistics for Polymer cases. | 292 """Measures rendering statistics for Polymer cases. |
| 280 """ | 293 """ |
| 281 test = smoothness.Smoothness | 294 test = smoothness.Smoothness |
| 282 page_set = page_sets.PolymerPageSet | 295 page_set = page_sets.PolymerPageSet |
| 283 | 296 |
| 284 @classmethod | 297 @classmethod |
| 285 def Name(cls): | 298 def Name(cls): |
| 286 return 'smoothness.polymer' | 299 return 'smoothness.polymer' |
| 287 | 300 |
| 288 | 301 |
| 289 @benchmark.Enabled('android') | 302 @benchmark.Enabled('android') |
| 290 class SmoothnessGpuRasterizationPolymer(perf_benchmark.PerfBenchmark): | 303 class SmoothnessGpuRasterizationPolymer(_Smoothness): |
| 291 """Measures rendering statistics for the Polymer cases with GPU rasterization. | 304 """Measures rendering statistics for the Polymer cases with GPU rasterization. |
| 292 """ | 305 """ |
| 293 tag = 'gpu_rasterization' | 306 tag = 'gpu_rasterization' |
| 294 test = smoothness.Smoothness | 307 test = smoothness.Smoothness |
| 295 page_set = page_sets.PolymerPageSet | 308 page_set = page_sets.PolymerPageSet |
| 296 | 309 |
| 297 def SetExtraBrowserOptions(self, options): | 310 def SetExtraBrowserOptions(self, options): |
| 298 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 311 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 299 | 312 |
| 300 @classmethod | 313 @classmethod |
| 301 def Name(cls): | 314 def Name(cls): |
| 302 return 'smoothness.gpu_rasterization.polymer' | 315 return 'smoothness.gpu_rasterization.polymer' |
| 303 | 316 |
| 304 | 317 |
| 305 class SmoothnessToughScrollingCases(perf_benchmark.PerfBenchmark): | 318 class SmoothnessToughScrollingCases(_Smoothness): |
| 306 test = smoothness.Smoothness | 319 test = smoothness.Smoothness |
| 307 page_set = page_sets.ToughScrollingCasesPageSet | 320 page_set = page_sets.ToughScrollingCasesPageSet |
| 308 | 321 |
| 309 @classmethod | 322 @classmethod |
| 310 def Name(cls): | 323 def Name(cls): |
| 311 return 'smoothness.tough_scrolling_cases' | 324 return 'smoothness.tough_scrolling_cases' |
| 312 | 325 |
| 313 @benchmark.Disabled('android') # http://crbug.com/531593 | 326 @benchmark.Disabled('android') # http://crbug.com/531593 |
| 314 class SmoothnessToughImageDecodeCases(perf_benchmark.PerfBenchmark): | 327 class SmoothnessToughImageDecodeCases(_Smoothness): |
| 315 test = smoothness.Smoothness | 328 test = smoothness.Smoothness |
| 316 page_set = page_sets.ToughImageDecodeCasesPageSet | 329 page_set = page_sets.ToughImageDecodeCasesPageSet |
| 317 | 330 |
| 318 @classmethod | 331 @classmethod |
| 319 def Name(cls): | 332 def Name(cls): |
| 320 return 'smoothness.tough_image_decode_cases' | 333 return 'smoothness.tough_image_decode_cases' |
| 321 | 334 |
| 322 @benchmark.Disabled('android') # http://crbug.com/513699 | 335 @benchmark.Disabled('android') # http://crbug.com/513699 |
| 323 class SmoothnessImageDecodingCases(perf_benchmark.PerfBenchmark): | 336 class SmoothnessImageDecodingCases(_Smoothness): |
| 324 """Measures decoding statistics for jpeg images. | 337 """Measures decoding statistics for jpeg images. |
| 325 """ | 338 """ |
| 326 test = smoothness.Smoothness | 339 test = smoothness.Smoothness |
| 327 page_set = page_sets.ImageDecodingCasesPageSet | 340 page_set = page_sets.ImageDecodingCasesPageSet |
| 328 | 341 |
| 329 def SetExtraBrowserOptions(self, options): | 342 def SetExtraBrowserOptions(self, options): |
| 330 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 343 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 331 options.AppendExtraBrowserArgs('--disable-accelerated-jpeg-decoding') | 344 options.AppendExtraBrowserArgs('--disable-accelerated-jpeg-decoding') |
| 332 | 345 |
| 333 @classmethod | 346 @classmethod |
| 334 def Name(cls): | 347 def Name(cls): |
| 335 return 'smoothness.image_decoding_cases' | 348 return 'smoothness.image_decoding_cases' |
| 336 | 349 |
| 337 | 350 |
| 338 @benchmark.Disabled('android') # http://crbug.com/513699 | 351 @benchmark.Disabled('android') # http://crbug.com/513699 |
| 339 class SmoothnessGpuImageDecodingCases(perf_benchmark.PerfBenchmark): | 352 class SmoothnessGpuImageDecodingCases(_Smoothness): |
| 340 """Measures decoding statistics for jpeg images with GPU rasterization. | 353 """Measures decoding statistics for jpeg images with GPU rasterization. |
| 341 """ | 354 """ |
| 342 tag = 'gpu_rasterization_and_decoding' | 355 tag = 'gpu_rasterization_and_decoding' |
| 343 test = smoothness.Smoothness | 356 test = smoothness.Smoothness |
| 344 page_set = page_sets.ImageDecodingCasesPageSet | 357 page_set = page_sets.ImageDecodingCasesPageSet |
| 345 | 358 |
| 346 def SetExtraBrowserOptions(self, options): | 359 def SetExtraBrowserOptions(self, options): |
| 347 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 360 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 348 # TODO(sugoi): Remove the following line once M41 goes stable | 361 # TODO(sugoi): Remove the following line once M41 goes stable |
| 349 options.AppendExtraBrowserArgs('--enable-accelerated-jpeg-decoding') | 362 options.AppendExtraBrowserArgs('--enable-accelerated-jpeg-decoding') |
| 350 | 363 |
| 351 @classmethod | 364 @classmethod |
| 352 def Name(cls): | 365 def Name(cls): |
| 353 return 'smoothness.gpu_rasterization_and_decoding.image_decoding_cases' | 366 return 'smoothness.gpu_rasterization_and_decoding.image_decoding_cases' |
| 354 | 367 |
| 355 | 368 |
| 356 @benchmark.Enabled('android') | 369 @benchmark.Enabled('android') |
| 357 class SmoothnessPathologicalMobileSites(perf_benchmark.PerfBenchmark): | 370 class SmoothnessPathologicalMobileSites(_Smoothness): |
| 358 """Measures task execution statistics while scrolling pathological sites. | 371 """Measures task execution statistics while scrolling pathological sites. |
| 359 """ | 372 """ |
| 360 test = smoothness.Smoothness | 373 test = smoothness.Smoothness |
| 361 page_set = page_sets.PathologicalMobileSitesPageSet | 374 page_set = page_sets.PathologicalMobileSitesPageSet |
| 362 | 375 |
| 363 @classmethod | 376 @classmethod |
| 364 def Name(cls): | 377 def Name(cls): |
| 365 return 'smoothness.pathological_mobile_sites' | 378 return 'smoothness.pathological_mobile_sites' |
| 366 | 379 |
| 367 | 380 |
| 368 class SmoothnessToughAnimatedImageCases(perf_benchmark.PerfBenchmark): | 381 class SmoothnessToughAnimatedImageCases(_Smoothness): |
| 369 test = smoothness.Smoothness | 382 test = smoothness.Smoothness |
| 370 page_set = page_sets.ToughAnimatedImageCasesPageSet | 383 page_set = page_sets.ToughAnimatedImageCasesPageSet |
| 371 | 384 |
| 372 @classmethod | 385 @classmethod |
| 373 def Name(cls): | 386 def Name(cls): |
| 374 return 'smoothness.tough_animated_image_cases' | 387 return 'smoothness.tough_animated_image_cases' |
| 375 | 388 |
| 376 | 389 |
| 377 @benchmark.Disabled('reference') # http://crbug.com/499489 | 390 @benchmark.Disabled('reference') # http://crbug.com/499489 |
| 378 class SmoothnessToughTextureUploadCases(perf_benchmark.PerfBenchmark): | 391 class SmoothnessToughTextureUploadCases(_Smoothness): |
| 379 test = smoothness.Smoothness | 392 test = smoothness.Smoothness |
| 380 page_set = page_sets.ToughTextureUploadCasesPageSet | 393 page_set = page_sets.ToughTextureUploadCasesPageSet |
| 381 | 394 |
| 382 @classmethod | 395 @classmethod |
| 383 def Name(cls): | 396 def Name(cls): |
| 384 return 'smoothness.tough_texture_upload_cases' | 397 return 'smoothness.tough_texture_upload_cases' |
| 385 | 398 |
| 386 | 399 |
| 387 @benchmark.Disabled('reference') # http://crbug.com/496684 | 400 @benchmark.Disabled('reference') # http://crbug.com/496684 |
| 388 class SmoothnessToughAdCases(perf_benchmark.PerfBenchmark): | 401 class SmoothnessToughAdCases(_Smoothness): |
| 389 """Measures rendering statistics while displaying advertisements.""" | 402 """Measures rendering statistics while displaying advertisements.""" |
| 390 test = smoothness.Smoothness | 403 test = smoothness.Smoothness |
| 391 page_set = page_sets.ToughAdCasesPageSet | 404 page_set = page_sets.ToughAdCasesPageSet |
| 392 | 405 |
| 393 @classmethod | 406 @classmethod |
| 394 def Name(cls): | 407 def Name(cls): |
| 395 return 'smoothness.tough_ad_cases' | 408 return 'smoothness.tough_ad_cases' |
| 396 | 409 |
| 397 | 410 |
| 398 # http://crbug.com/496684 (reference) | 411 # http://crbug.com/496684 (reference) |
| 399 # http://crbug.com/522619 (mac/win) | 412 # http://crbug.com/522619 (mac/win) |
| 400 @benchmark.Disabled('reference', 'win', 'mac') | 413 @benchmark.Disabled('reference', 'win', 'mac') |
| 401 class SmoothnessScrollingToughAdCases(perf_benchmark.PerfBenchmark): | 414 class SmoothnessScrollingToughAdCases(_Smoothness): |
| 402 """Measures rendering statistics while scrolling advertisements.""" | 415 """Measures rendering statistics while scrolling advertisements.""" |
| 403 test = smoothness.Smoothness | 416 test = smoothness.Smoothness |
| 404 page_set = page_sets.ScrollingToughAdCasesPageSet | 417 page_set = page_sets.ScrollingToughAdCasesPageSet |
| 405 | 418 |
| 406 @classmethod | 419 @classmethod |
| 407 def Name(cls): | 420 def Name(cls): |
| 408 return 'smoothness.scrolling_tough_ad_cases' | 421 return 'smoothness.scrolling_tough_ad_cases' |
| 409 | 422 |
| 410 | 423 |
| 411 # http://crbug.com/496684 (reference) | 424 # http://crbug.com/496684 (reference) |
| 412 # http://crbug.com/522619 (mac/win) | 425 # http://crbug.com/522619 (mac/win) |
| 413 @benchmark.Disabled('reference', 'win', 'mac') | 426 @benchmark.Disabled('reference', 'win', 'mac') |
| 414 class SmoothnessBidirectionallyScrollingToughAdCases( | 427 class SmoothnessBidirectionallyScrollingToughAdCases(_Smoothness): |
| 415 perf_benchmark.PerfBenchmark): | |
| 416 """Measures rendering statistics while scrolling advertisements.""" | 428 """Measures rendering statistics while scrolling advertisements.""" |
| 417 test = smoothness.Smoothness | 429 test = smoothness.Smoothness |
| 418 page_set = page_sets.BidirectionallyScrollingToughAdCasesPageSet | 430 page_set = page_sets.BidirectionallyScrollingToughAdCasesPageSet |
| 419 | 431 |
| 420 def SetExtraBrowserOptions(self, options): | 432 def SetExtraBrowserOptions(self, options): |
| 421 # Don't accidentally reload the page while scrolling. | 433 # Don't accidentally reload the page while scrolling. |
| 422 options.AppendExtraBrowserArgs('--disable-pull-to-refresh-effect') | 434 options.AppendExtraBrowserArgs('--disable-pull-to-refresh-effect') |
| 423 | 435 |
| 424 @classmethod | 436 @classmethod |
| 425 def Name(cls): | 437 def Name(cls): |
| 426 return 'smoothness.bidirectionally_scrolling_tough_ad_cases' | 438 return 'smoothness.bidirectionally_scrolling_tough_ad_cases' |
| 427 | 439 |
| 428 | 440 |
| 429 @benchmark.Disabled('reference') # http://crbug.com/496684 | 441 @benchmark.Disabled('reference') # http://crbug.com/496684 |
| 430 class SmoothnessToughWebGLAdCases(perf_benchmark.PerfBenchmark): | 442 class SmoothnessToughWebGLAdCases(_Smoothness): |
| 431 """Measures rendering statistics while scrolling advertisements.""" | 443 """Measures rendering statistics while scrolling advertisements.""" |
| 432 test = smoothness.Smoothness | 444 test = smoothness.Smoothness |
| 433 page_set = page_sets.ToughWebglAdCasesPageSet | 445 page_set = page_sets.ToughWebglAdCasesPageSet |
| 434 | 446 |
| 435 @classmethod | 447 @classmethod |
| 436 def Name(cls): | 448 def Name(cls): |
| 437 return 'smoothness.tough_webgl_ad_cases' | 449 return 'smoothness.tough_webgl_ad_cases' |
| OLD | NEW |