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 |