| 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 benchmarks import silk_flags | 5 from benchmarks import silk_flags |
| 6 import page_sets | 6 import page_sets |
| 7 from measurements import smoothness | 7 from measurements import smoothness |
| 8 from telemetry import benchmark | 8 from telemetry import benchmark |
| 9 | 9 |
| 10 | 10 |
| 11 class SmoothnessTop25(benchmark.Benchmark): | 11 class SmoothnessTop25(benchmark.Benchmark): |
| 12 """Measures rendering statistics while scrolling down the top 25 web pages. | 12 """Measures rendering statistics while scrolling down the top 25 web pages. |
| 13 | 13 |
| 14 http://www.chromium.org/developers/design-documents/rendering-benchmarks""" | 14 http://www.chromium.org/developers/design-documents/rendering-benchmarks""" |
| 15 test = smoothness.Smoothness | 15 test = smoothness.Smoothness |
| 16 page_set = page_sets.Top25SmoothPageSet | 16 page_set = page_sets.Top25SmoothPageSet |
| 17 | 17 |
| 18 @classmethod |
| 19 def Name(cls): |
| 20 return 'smoothness.top_25_smooth' |
| 21 |
| 18 | 22 |
| 19 class SmoothnessToughFiltersCases(benchmark.Benchmark): | 23 class SmoothnessToughFiltersCases(benchmark.Benchmark): |
| 20 """Measures frame rate and a variety of other statistics. | 24 """Measures frame rate and a variety of other statistics. |
| 21 | 25 |
| 22 Uses a selection of pages making use of SVG and CSS Filter Effects. | 26 Uses a selection of pages making use of SVG and CSS Filter Effects. |
| 23 """ | 27 """ |
| 24 test = smoothness.Smoothness | 28 test = smoothness.Smoothness |
| 25 page_set = page_sets.ToughFiltersCasesPageSet | 29 page_set = page_sets.ToughFiltersCasesPageSet |
| 26 | 30 |
| 31 @classmethod |
| 32 def Name(cls): |
| 33 return 'smoothness.tough_filters_cases' |
| 34 |
| 27 | 35 |
| 28 # crbug.com/388877, crbug.com/396127 | 36 # crbug.com/388877, crbug.com/396127 |
| 29 @benchmark.Disabled('mac', 'win', 'android') | 37 @benchmark.Disabled('mac', 'win', 'android') |
| 30 class SmoothnessToughCanvasCases(benchmark.Benchmark): | 38 class SmoothnessToughCanvasCases(benchmark.Benchmark): |
| 31 """Measures frame rate and a variety of other statistics. | 39 """Measures frame rate and a variety of other statistics. |
| 32 | 40 |
| 33 Uses a selection of pages making use of the 2D Canvas API. | 41 Uses a selection of pages making use of the 2D Canvas API. |
| 34 """ | 42 """ |
| 35 test = smoothness.Smoothness | 43 test = smoothness.Smoothness |
| 36 page_set = page_sets.ToughCanvasCasesPageSet | 44 page_set = page_sets.ToughCanvasCasesPageSet |
| 37 | 45 |
| 46 @classmethod |
| 47 def Name(cls): |
| 48 return 'smoothness.tough_canvas_cases' |
| 49 |
| 38 | 50 |
| 39 @benchmark.Disabled('android', 'mac', 'win') # crbug.com/373812 | 51 @benchmark.Disabled('android', 'mac', 'win') # crbug.com/373812 |
| 40 class SmoothnessToughWebGLCases(benchmark.Benchmark): | 52 class SmoothnessToughWebGLCases(benchmark.Benchmark): |
| 41 test = smoothness.Smoothness | 53 test = smoothness.Smoothness |
| 42 page_set = page_sets.ToughWebglCasesPageSet | 54 page_set = page_sets.ToughWebglCasesPageSet |
| 43 | 55 |
| 56 @classmethod |
| 57 def Name(cls): |
| 58 return 'smoothness.tough_webgl_cases' |
| 59 |
| 44 | 60 |
| 45 @benchmark.Enabled('android') | 61 @benchmark.Enabled('android') |
| 46 class SmoothnessMaps(benchmark.Benchmark): | 62 class SmoothnessMaps(benchmark.Benchmark): |
| 47 test = smoothness.Smoothness | 63 test = smoothness.Smoothness |
| 48 page_set = page_sets.MapsPageSet | 64 page_set = page_sets.MapsPageSet |
| 49 | 65 |
| 66 @classmethod |
| 67 def Name(cls): |
| 68 return 'smoothness.maps' |
| 69 |
| 50 | 70 |
| 51 @benchmark.Enabled('android') | 71 @benchmark.Enabled('android') |
| 52 class SmoothnessKeyMobileSites(benchmark.Benchmark): | 72 class SmoothnessKeyMobileSites(benchmark.Benchmark): |
| 53 """Measures rendering statistics while scrolling down the key mobile sites. | 73 """Measures rendering statistics while scrolling down the key mobile sites. |
| 54 | 74 |
| 55 http://www.chromium.org/developers/design-documents/rendering-benchmarks""" | 75 http://www.chromium.org/developers/design-documents/rendering-benchmarks""" |
| 56 test = smoothness.Smoothness | 76 test = smoothness.Smoothness |
| 57 page_set = page_sets.KeyMobileSitesSmoothPageSet | 77 page_set = page_sets.KeyMobileSitesSmoothPageSet |
| 58 | 78 |
| 79 @classmethod |
| 80 def Name(cls): |
| 81 return 'smoothness.key_mobile_sites_smooth' |
| 82 |
| 59 | 83 |
| 60 class SmoothnessToughAnimationCases(benchmark.Benchmark): | 84 class SmoothnessToughAnimationCases(benchmark.Benchmark): |
| 61 test = smoothness.Smoothness | 85 test = smoothness.Smoothness |
| 62 page_set = page_sets.ToughAnimationCasesPageSet | 86 page_set = page_sets.ToughAnimationCasesPageSet |
| 63 | 87 |
| 88 @classmethod |
| 89 def Name(cls): |
| 90 return 'smoothness.tough_animation_cases' |
| 91 |
| 64 | 92 |
| 65 @benchmark.Enabled('android') | 93 @benchmark.Enabled('android') |
| 66 class SmoothnessKeySilkCases(benchmark.Benchmark): | 94 class SmoothnessKeySilkCases(benchmark.Benchmark): |
| 67 """Measures rendering statistics for the key silk cases without GPU | 95 """Measures rendering statistics for the key silk cases without GPU |
| 68 rasterization | 96 rasterization |
| 69 """ | 97 """ |
| 70 test = smoothness.Smoothness | 98 test = smoothness.Smoothness |
| 71 page_set = page_sets.KeySilkCasesPageSet | 99 page_set = page_sets.KeySilkCasesPageSet |
| 72 | 100 |
| 101 @classmethod |
| 102 def Name(cls): |
| 103 return 'smoothness.key_silk_cases' |
| 104 |
| 73 | 105 |
| 74 @benchmark.Enabled('android') | 106 @benchmark.Enabled('android') |
| 75 class SmoothnessGpuRasterizationTop25(benchmark.Benchmark): | 107 class SmoothnessGpuRasterizationTop25(benchmark.Benchmark): |
| 76 """Measures rendering statistics for the top 25 with GPU rasterization | 108 """Measures rendering statistics for the top 25 with GPU rasterization |
| 77 """ | 109 """ |
| 78 tag = 'gpu_rasterization' | 110 tag = 'gpu_rasterization' |
| 79 test = smoothness.Smoothness | 111 test = smoothness.Smoothness |
| 80 page_set = page_sets.Top25SmoothPageSet | 112 page_set = page_sets.Top25SmoothPageSet |
| 81 def CustomizeBrowserOptions(self, options): | 113 def CustomizeBrowserOptions(self, options): |
| 82 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 114 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 83 | 115 |
| 116 @classmethod |
| 117 def Name(cls): |
| 118 return 'smoothness.gpu_rasterization.top_25_smooth' |
| 119 |
| 84 | 120 |
| 85 @benchmark.Enabled('android') | 121 @benchmark.Enabled('android') |
| 86 class SmoothnessGpuRasterizationKeyMobileSites(benchmark.Benchmark): | 122 class SmoothnessGpuRasterizationKeyMobileSites(benchmark.Benchmark): |
| 87 """Measures rendering statistics for the key mobile sites with GPU | 123 """Measures rendering statistics for the key mobile sites with GPU |
| 88 rasterization | 124 rasterization |
| 89 """ | 125 """ |
| 90 tag = 'gpu_rasterization' | 126 tag = 'gpu_rasterization' |
| 91 test = smoothness.Smoothness | 127 test = smoothness.Smoothness |
| 92 page_set = page_sets.KeyMobileSitesSmoothPageSet | 128 page_set = page_sets.KeyMobileSitesSmoothPageSet |
| 93 def CustomizeBrowserOptions(self, options): | 129 def CustomizeBrowserOptions(self, options): |
| 94 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 130 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 95 | 131 |
| 132 @classmethod |
| 133 def Name(cls): |
| 134 return 'smoothness.gpu_rasterization.key_mobile_sites_smooth' |
| 135 |
| 96 | 136 |
| 97 @benchmark.Enabled('android') | 137 @benchmark.Enabled('android') |
| 98 class SmoothnessSyncScrollKeyMobileSites(benchmark.Benchmark): | 138 class SmoothnessSyncScrollKeyMobileSites(benchmark.Benchmark): |
| 99 """Measures rendering statistics for the key mobile sites with synchronous | 139 """Measures rendering statistics for the key mobile sites with synchronous |
| 100 (main thread) scrolling. | 140 (main thread) scrolling. |
| 101 """ | 141 """ |
| 102 tag = 'sync_scroll' | 142 tag = 'sync_scroll' |
| 103 test = smoothness.Smoothness | 143 test = smoothness.Smoothness |
| 104 page_set = page_sets.KeyMobileSitesSmoothPageSet | 144 page_set = page_sets.KeyMobileSitesSmoothPageSet |
| 105 def CustomizeBrowserOptions(self, options): | 145 def CustomizeBrowserOptions(self, options): |
| 106 silk_flags.CustomizeBrowserOptionsForSyncScrolling(options) | 146 silk_flags.CustomizeBrowserOptionsForSyncScrolling(options) |
| 107 | 147 |
| 148 @classmethod |
| 149 def Name(cls): |
| 150 return 'smoothness.sync_scroll.key_mobile_sites_smooth' |
| 151 |
| 108 @benchmark.Enabled('android') | 152 @benchmark.Enabled('android') |
| 109 class SmoothnessSimpleMobilePages(benchmark.Benchmark): | 153 class SmoothnessSimpleMobilePages(benchmark.Benchmark): |
| 110 """Measures rendering statistics for simple mobile sites page set """ | 154 """Measures rendering statistics for simple mobile sites page set """ |
| 111 test = smoothness.Smoothness | 155 test = smoothness.Smoothness |
| 112 page_set = page_sets.SimpleMobileSitesPageSet | 156 page_set = page_sets.SimpleMobileSitesPageSet |
| 113 | 157 |
| 158 @classmethod |
| 159 def Name(cls): |
| 160 return 'smoothness.simple_mobile_sites' |
| 161 |
| 114 @benchmark.Enabled('android', 'chromeos') | 162 @benchmark.Enabled('android', 'chromeos') |
| 115 class SmoothnessToughPinchZoomCases(benchmark.Benchmark): | 163 class SmoothnessToughPinchZoomCases(benchmark.Benchmark): |
| 116 """Measures rendering statistics for pinch-zooming into the tough pinch zoom | 164 """Measures rendering statistics for pinch-zooming into the tough pinch zoom |
| 117 cases | 165 cases |
| 118 """ | 166 """ |
| 119 test = smoothness.Smoothness | 167 test = smoothness.Smoothness |
| 120 page_set = page_sets.ToughPinchZoomCasesPageSet | 168 page_set = page_sets.ToughPinchZoomCasesPageSet |
| 121 | 169 |
| 170 @classmethod |
| 171 def Name(cls): |
| 172 return 'smoothness.tough_pinch_zoom_cases' |
| 173 |
| 122 | 174 |
| 123 @benchmark.Enabled('android') | 175 @benchmark.Enabled('android') |
| 124 class SmoothnessPolymer(benchmark.Benchmark): | 176 class SmoothnessPolymer(benchmark.Benchmark): |
| 125 """Measures rendering statistics for Polymer cases. | 177 """Measures rendering statistics for Polymer cases. |
| 126 """ | 178 """ |
| 127 test = smoothness.Smoothness | 179 test = smoothness.Smoothness |
| 128 page_set = page_sets.PolymerPageSet | 180 page_set = page_sets.PolymerPageSet |
| 129 | 181 |
| 182 @classmethod |
| 183 def Name(cls): |
| 184 return 'smoothness.polymer' |
| 185 |
| 130 | 186 |
| 131 @benchmark.Enabled('android') | 187 @benchmark.Enabled('android') |
| 132 class SmoothnessGpuRasterizationPolymer(benchmark.Benchmark): | 188 class SmoothnessGpuRasterizationPolymer(benchmark.Benchmark): |
| 133 """Measures rendering statistics for the Polymer cases with GPU rasterization | 189 """Measures rendering statistics for the Polymer cases with GPU rasterization |
| 134 """ | 190 """ |
| 135 tag = 'gpu_rasterization' | 191 tag = 'gpu_rasterization' |
| 136 test = smoothness.Smoothness | 192 test = smoothness.Smoothness |
| 137 page_set = page_sets.PolymerPageSet | 193 page_set = page_sets.PolymerPageSet |
| 138 def CustomizeBrowserOptions(self, options): | 194 def CustomizeBrowserOptions(self, options): |
| 139 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 195 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 140 | 196 |
| 197 @classmethod |
| 198 def Name(cls): |
| 199 return 'smoothness.gpu_rasterization.polymer' |
| 200 |
| 141 | 201 |
| 142 class SmoothnessToughFastScrollingCases(benchmark.Benchmark): | 202 class SmoothnessToughFastScrollingCases(benchmark.Benchmark): |
| 143 test = smoothness.Smoothness | 203 test = smoothness.Smoothness |
| 144 page_set = page_sets.ToughScrollingCasesPageSet | 204 page_set = page_sets.ToughScrollingCasesPageSet |
| 145 options = {'page_label_filter' : 'fastscrolling'} | 205 options = {'page_label_filter' : 'fastscrolling'} |
| 146 | 206 |
| 207 @classmethod |
| 208 def Name(cls): |
| 209 return 'smoothness.tough_scrolling_cases' |
| 210 |
| 147 | 211 |
| 148 class SmoothnessImageDecodingCases(benchmark.Benchmark): | 212 class SmoothnessImageDecodingCases(benchmark.Benchmark): |
| 149 """Measures decoding statistics for jpeg images. | 213 """Measures decoding statistics for jpeg images. |
| 150 """ | 214 """ |
| 151 test = smoothness.Smoothness | 215 test = smoothness.Smoothness |
| 152 page_set = page_sets.ImageDecodingCasesPageSet | 216 page_set = page_sets.ImageDecodingCasesPageSet |
| 153 def CustomizeBrowserOptions(self, options): | 217 def CustomizeBrowserOptions(self, options): |
| 154 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 218 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 155 options.AppendExtraBrowserArgs('--disable-accelerated-jpeg-decoding') | 219 options.AppendExtraBrowserArgs('--disable-accelerated-jpeg-decoding') |
| 156 | 220 |
| 221 @classmethod |
| 222 def Name(cls): |
| 223 return 'smoothness.image_decoding_cases' |
| 224 |
| 157 | 225 |
| 158 class SmoothnessGpuImageDecodingCases(benchmark.Benchmark): | 226 class SmoothnessGpuImageDecodingCases(benchmark.Benchmark): |
| 159 """Measures decoding statistics for jpeg images with GPU rasterization | 227 """Measures decoding statistics for jpeg images with GPU rasterization |
| 160 """ | 228 """ |
| 161 tag = 'gpu_rasterization_and_decoding' | 229 tag = 'gpu_rasterization_and_decoding' |
| 162 test = smoothness.Smoothness | 230 test = smoothness.Smoothness |
| 163 page_set = page_sets.ImageDecodingCasesPageSet | 231 page_set = page_sets.ImageDecodingCasesPageSet |
| 164 def CustomizeBrowserOptions(self, options): | 232 def CustomizeBrowserOptions(self, options): |
| 165 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) | 233 silk_flags.CustomizeBrowserOptionsForGpuRasterization(options) |
| 166 # TODO: Remove the following line once M41 goes stable | 234 # TODO: Remove the following line once M41 goes stable |
| 167 options.AppendExtraBrowserArgs('--enable-accelerated-jpeg-decoding') | 235 options.AppendExtraBrowserArgs('--enable-accelerated-jpeg-decoding') |
| 236 @classmethod |
| 237 def Name(cls): |
| 238 return 'smoothness.gpu_rasterization_and_decoding.image_decoding_cases' |
| 239 |
| OLD | NEW |