thread_times.py revision 5f1c94371a64b3196d4be9466099bb892df9b88e
15d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# Copyright 2014 The Chromium Authors. All rights reserved.
25d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be
35d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# found in the LICENSE file.
45d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
5a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)from benchmarks import silk_flags
65d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)from measurements import thread_times
7f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)import page_sets
8116680a4aac90f2aa7413d9095a592090648e557Ben Murdochfrom telemetry import benchmark
95d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
10a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
11116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ThreadTimesKeySilkCases(benchmark.Benchmark):
125d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  """Measures timeline metrics while performing smoothness action on key silk
135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  cases."""
145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  test = thread_times.ThreadTimes
15f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.KeySilkCasesPageSet
165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  options = {"report_silk_results": True}
175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
18a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
19116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ThreadTimesFastPathKeySilkCases(benchmark.Benchmark):
20a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  """Measures timeline metrics while performing smoothness action on key silk
21a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  cases using bleeding edge rendering fast paths."""
22a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  tag = 'fast_path'
23a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  test = thread_times.ThreadTimes
24f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.KeySilkCasesPageSet
25a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  options = {"report_silk_results": True}
26a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  def CustomizeBrowserOptions(self, options):
27a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    silk_flags.CustomizeBrowserOptionsForFastPath(options)
28a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
29a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
30116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch@benchmark.Disabled
315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)class LegacySilkBenchmark(ThreadTimesKeySilkCases):
325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  """Same as thread_times.key_silk_cases but with the old name."""
335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  @classmethod
345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  def GetName(cls):
355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    return "silk.key_silk_cases"
365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
37cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
38116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ThreadTimesFastPathMobileSites(benchmark.Benchmark):
395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  """Measures timeline metrics while performing smoothness action on
405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  key mobile sites labeled with fast-path tag.
415d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
425d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  test = thread_times.ThreadTimes
43f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.KeyMobileSitesPageSet
445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  options = {'page_label_filter' : 'fastpath'}
455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
465f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)class ThreadTimesSimpleMobileSites(benchmark.Benchmark):
475f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  """Measures timeline metric using smoothness action on simple mobile sites
485f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
495f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = thread_times.ThreadTimes
505f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = page_sets.SimpleMobileSitesPageSet
515f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
52cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
53116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ThreadTimesCompositorCases(benchmark.Benchmark):
54cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  """Measures timeline metrics while performing smoothness action on
55cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  tough compositor cases.
56cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
57cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  test = thread_times.ThreadTimes
58f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.ToughCompositorCasesPageSet
595c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu
605c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu
61116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch@benchmark.Enabled('android')
62116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ThreadTimesPolymer(benchmark.Benchmark):
635c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  """Measures timeline metrics while performing smoothness action on
645c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  Polymer cases."""
655c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  test = thread_times.ThreadTimes
66f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  page_set = page_sets.PolymerPageSet
67010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)  options = { 'report_silk_results': True }
68