1f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)# Copyright 2013 The Chromium Authors. All rights reserved.
2f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be
3f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)# found in the LICENSE file.
4f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
5a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)from benchmarks import silk_flags
6f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)from measurements import rasterize_and_record_micro
7f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)import page_sets
8116680a4aac90f2aa7413d9095a592090648e557Ben Murdochfrom telemetry import benchmark
9f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
10f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
115c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu# RasterizeAndRecord disabled on mac because of crbug.com/350684.
125c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu# RasterizeAndRecord disabled on windows because of crbug.com/338057.
13116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch@benchmark.Disabled('mac', 'win')
14116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass RasterizeAndRecordMicroTop25(benchmark.Benchmark):
15f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  """Measures rasterize and record performance on the top 25 web pages.
16f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
17f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
18f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  test = rasterize_and_record_micro.RasterizeAndRecordMicro
19f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.Top25PageSet
20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
21f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
22116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch@benchmark.Disabled('mac', 'win')
23116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass RasterizeAndRecordMicroKeyMobileSites(benchmark.Benchmark):
24f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  """Measures rasterize and record performance on the key mobile sites.
25f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
26f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
27f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  test = rasterize_and_record_micro.RasterizeAndRecordMicro
28f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.KeyMobileSitesPageSet
29a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
30a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
31116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch@benchmark.Disabled('mac', 'win')
32116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass RasterizeAndRecordMicroKeySilkCases(benchmark.Benchmark):
33a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  """Measures rasterize and record performance on the silk sites.
34a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
35a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
36a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  test = rasterize_and_record_micro.RasterizeAndRecordMicro
37f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.KeySilkCasesPageSet
38a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
39a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
40116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch@benchmark.Disabled('mac', 'win')
41116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass RasterizeAndRecordMicroFastPathGpuRasterizationKeySilkCases(
42116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch    benchmark.Benchmark):
435c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  """Measures rasterize and record performance on the silk sites.
445c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu
455c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  Uses GPU rasterization together with bleeding edge rendering fast paths.
465c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu
475c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
485c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  tag = 'fast_path_gpu_rasterization'
495c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  test = rasterize_and_record_micro.RasterizeAndRecordMicro
50f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.KeySilkCasesPageSet
515c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  def CustomizeBrowserOptions(self, options):
525c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu    silk_flags.CustomizeBrowserOptionsForFastPath(options)
535c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu    silk_flags.CustomizeBrowserOptionsForGpuRasterization(options)
545c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu
555c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu
56116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch@benchmark.Enabled('android')
57116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass RasterizeAndRecordMicroPolymer(benchmark.Benchmark):
585c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  """Measures rasterize and record performance on the Polymer cases.
595c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu
605c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
615c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  test = rasterize_and_record_micro.RasterizeAndRecordMicro
62f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.PolymerPageSet
63