Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(494)

Side by Side Diff: tools/perf/benchmarks/page_cycler_v2.py

Issue 2070773002: Reland: [PCv2] Add tracing category needed for computing ttfmp (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2016 The Chromium Authors. All rights reserved. 1 # Copyright 2016 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 """The page cycler v2. 5 """The page cycler v2.
6 6
7 For details, see design doc: 7 For details, see design doc:
8 https://docs.google.com/document/d/1EZQX-x3eEphXupiX-Hq7T4Afju5_sIdxPWYetj7ynd0 8 https://docs.google.com/document/d/1EZQX-x3eEphXupiX-Hq7T4Afju5_sIdxPWYetj7ynd0
9 """ 9 """
10 10
11 from core import perf_benchmark 11 from core import perf_benchmark
12 import page_sets 12 import page_sets
13 13
14 from telemetry import benchmark 14 from telemetry import benchmark
15 from telemetry.page import cache_temperature 15 from telemetry.page import cache_temperature
16 from telemetry.timeline import tracing_category_filter 16 from telemetry.timeline import tracing_category_filter
17 from telemetry.web_perf import timeline_based_measurement 17 from telemetry.web_perf import timeline_based_measurement
18 18
19 19
20 class _PageCyclerV2(perf_benchmark.PerfBenchmark): 20 class _PageCyclerV2(perf_benchmark.PerfBenchmark):
21 def CreateTimelineBasedMeasurementOptions(self): 21 def CreateTimelineBasedMeasurementOptions(self):
22 cat_filter = tracing_category_filter.TracingCategoryFilter( 22 cat_filter = tracing_category_filter.TracingCategoryFilter(
23 filter_string='blink.console,navigation,blink.user_timing,loading') 23 filter_string='blink.console,navigation,blink.user_timing,loading')
24 24
25 # Below categories are needed for first-meaningful-paint computation.
26 cat_filter.AddDisabledByDefault('disabled-by-default-blink.debug.layout')
27 cat_filter.AddIncludedCategory('devtools.timeline')
28
25 tbm_options = timeline_based_measurement.Options( 29 tbm_options = timeline_based_measurement.Options(
26 overhead_level=cat_filter) 30 overhead_level=cat_filter)
27 tbm_options.SetTimelineBasedMetric('firstPaintMetric') 31 tbm_options.SetTimelineBasedMetric('firstPaintMetric')
28 return tbm_options 32 return tbm_options
29 33
30 34
31 @benchmark.Disabled('win') # crbug.com/615178 35 @benchmark.Disabled('win', 'reference') # crbug.com/615178, crbug.com/619254
32 class PageCyclerV2Typical25(_PageCyclerV2): 36 class PageCyclerV2Typical25(_PageCyclerV2):
33 """Page load time benchmark for a 25 typical web pages. 37 """Page load time benchmark for a 25 typical web pages.
34 38
35 Designed to represent typical, not highly optimized or highly popular web 39 Designed to represent typical, not highly optimized or highly popular web
36 sites. Runs against pages recorded in June, 2014. 40 sites. Runs against pages recorded in June, 2014.
37 """ 41 """
38 options = {'pageset_repeat': 2} 42 options = {'pageset_repeat': 2}
39 43
40 @classmethod 44 @classmethod
41 def Name(cls): 45 def Name(cls):
42 return 'page_cycler_v2.typical_25' 46 return 'page_cycler_v2.typical_25'
43 47
44 @classmethod 48 @classmethod
45 def ShouldDisable(cls, possible_browser): # crbug.com/615178 49 def ShouldDisable(cls, possible_browser): # crbug.com/615178
46 if (possible_browser.browser_type == 'reference' and 50 if (possible_browser.browser_type == 'reference' and
47 possible_browser.platform.GetOSName() == 'android'): 51 possible_browser.platform.GetOSName() == 'android'):
48 return True 52 return True
49 # crbug.com/616781 53 # crbug.com/616781
50 if (cls.IsSvelte(possible_browser) or 54 if (cls.IsSvelte(possible_browser) or
51 possible_browser.platform.GetDeviceTypeName() == 'Nexus 5X' or 55 possible_browser.platform.GetDeviceTypeName() == 'Nexus 5X' or
52 possible_browser.platform.GetDeviceTypeName() == 'AOSP on BullHead'): 56 possible_browser.platform.GetDeviceTypeName() == 'AOSP on BullHead'):
53 return True 57 return True
54 return False 58 return False
55 59
56 def CreateStorySet(self, options): 60 def CreateStorySet(self, options):
57 return page_sets.Typical25PageSet(run_no_page_interactions=True, 61 return page_sets.Typical25PageSet(run_no_page_interactions=True,
58 cache_temperatures=[ 62 cache_temperatures=[
59 cache_temperature.PCV1_COLD, cache_temperature.PCV1_WARM]) 63 cache_temperature.PCV1_COLD, cache_temperature.PCV1_WARM])
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698