Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 import re | 5 import re |
| 6 | 6 |
| 7 from core import perf_benchmark | 7 from core import perf_benchmark |
| 8 from telemetry import benchmark | 8 from telemetry import benchmark |
| 9 from telemetry.timeline import tracing_category_filter | 9 from telemetry.timeline import tracing_category_filter |
| 10 from telemetry.web_perf import timeline_based_measurement | 10 from telemetry.web_perf import timeline_based_measurement |
| (...skipping 28 matching lines...) Expand all Loading... | |
| 39 | 39 |
| 40 | 40 |
| 41 @benchmark.Disabled('all') # crbug.com/613050 | 41 @benchmark.Disabled('all') # crbug.com/613050 |
| 42 class SystemHealthTop25(_SystemHealthBenchmark): | 42 class SystemHealthTop25(_SystemHealthBenchmark): |
| 43 page_set = page_sets.Top25PageSet | 43 page_set = page_sets.Top25PageSet |
| 44 | 44 |
| 45 @classmethod | 45 @classmethod |
| 46 def Name(cls): | 46 def Name(cls): |
| 47 return 'system_health.top25' | 47 return 'system_health.top25' |
| 48 | 48 |
| 49 | |
| 49 @benchmark.Disabled('android') # crbug.com/601953 | 50 @benchmark.Disabled('android') # crbug.com/601953 |
| 50 @benchmark.Disabled('all') # crbug.com/613050 | 51 @benchmark.Disabled('all') # crbug.com/613050 |
| 51 class SystemHealthKeyMobileSites(_SystemHealthBenchmark): | 52 class SystemHealthKeyMobileSites(_SystemHealthBenchmark): |
| 52 page_set = page_sets.KeyMobileSitesPageSet | 53 page_set = page_sets.KeyMobileSitesPageSet |
| 53 | 54 |
| 54 @classmethod | 55 @classmethod |
| 55 def Name(cls): | 56 def Name(cls): |
| 56 return 'system_health.key_mobile_sites' | 57 return 'system_health.key_mobile_sites' |
| 57 | 58 |
| 58 | 59 |
| (...skipping 22 matching lines...) Expand all Loading... | |
| 81 def Name(cls): | 82 def Name(cls): |
| 82 return 'system_health.memory_%s' % cls.page_set.PLATFORM | 83 return 'system_health.memory_%s' % cls.page_set.PLATFORM |
| 83 | 84 |
| 84 @classmethod | 85 @classmethod |
| 85 def ValueCanBeAddedPredicate(cls, value, is_first_result): | 86 def ValueCanBeAddedPredicate(cls, value, is_first_result): |
| 86 # TODO(crbug.com/610962): Remove this stopgap when the perf dashboard | 87 # TODO(crbug.com/610962): Remove this stopgap when the perf dashboard |
| 87 # is able to cope with the data load generated by TBMv2 metrics. | 88 # is able to cope with the data load generated by TBMv2 metrics. |
| 88 return not _IGNORED_STATS_RE.search(value.name) | 89 return not _IGNORED_STATS_RE.search(value.name) |
| 89 | 90 |
| 90 | 91 |
| 92 @benchmark.Enabled('android') | |
|
Zhen Wang
2016/06/09 00:35:08
I am almost sure you will need @benchmark.Enabled(
perezju
2016/06/09 10:51:06
Yes, this should be android-webview.
alexandermont
2016/06/09 16:26:19
Done
| |
| 93 class WebviewStartupSystemHealthBenchmark(_SystemHealthBenchmark): | |
|
perezju
2016/06/09 10:51:07
I don't think this should subclass _SystemHealthBe
petrcermak
2016/06/09 12:56:03
This class is now wedged in the middle of memory s
alexandermont
2016/06/09 16:26:19
Done
| |
| 94 """Webview startup time benchmark | |
| 95 | |
| 96 Benchmark that measures how long WebView takes to start up | |
| 97 and load a blank page. Since thie metric only requires the trace | |
| 98 markers recorded in atrace, Chrome tracing is not enabled for this | |
| 99 benchmark. | |
| 100 """ | |
| 101 page_set = page_sets.BlankPageSet | |
|
perezju
2016/06/09 11:02:51
+torne, do we also want to run the benchmark on so
Torne
2016/06/09 11:22:31
I don't think it's particularly important right no
| |
| 102 | |
| 103 def CreateTimelineBasedMeasurementOptions(self): | |
| 104 options = timeline_based_measurement.Options() | |
| 105 options.SetTimelineBasedMetric('webviewStartupMetric') | |
| 106 options.config.enable_atrace_trace = True | |
| 107 options.config.enable_chrome_trace = False | |
| 108 options.config.atrace_config.app_name = 'org.chromium.webview_shell' | |
| 109 return options | |
| 110 | |
| 111 @classmethod | |
| 112 def Name(cls): | |
| 113 return 'system_health.webview_startup' | |
| 114 | |
| 115 | |
| 91 class DesktopMemorySystemHealth(_MemorySystemHealthBenchmark): | 116 class DesktopMemorySystemHealth(_MemorySystemHealthBenchmark): |
| 92 """Desktop Chrome Memory System Health Benchmark.""" | 117 """Desktop Chrome Memory System Health Benchmark.""" |
| 93 page_set = page_sets.DesktopMemorySystemHealthStorySet | 118 page_set = page_sets.DesktopMemorySystemHealthStorySet |
| 94 | 119 |
| 95 @classmethod | 120 @classmethod |
| 96 def ShouldDisable(cls, possible_browser): | 121 def ShouldDisable(cls, possible_browser): |
| 97 return possible_browser.platform.GetDeviceTypeName() != 'Desktop' | 122 return possible_browser.platform.GetDeviceTypeName() != 'Desktop' |
| 98 | 123 |
| 99 | 124 |
| 100 class MobileMemorySystemHealth(_MemorySystemHealthBenchmark): | 125 class MobileMemorySystemHealth(_MemorySystemHealthBenchmark): |
| 101 """Mobile Chrome Memory System Health Benchmark.""" | 126 """Mobile Chrome Memory System Health Benchmark.""" |
| 102 page_set = page_sets.MobileMemorySystemHealthStorySet | 127 page_set = page_sets.MobileMemorySystemHealthStorySet |
| 103 | 128 |
| 104 @classmethod | 129 @classmethod |
| 105 def ShouldDisable(cls, possible_browser): | 130 def ShouldDisable(cls, possible_browser): |
| 106 # http://crbug.com/612144 (reference on Nexus 5X). | 131 # http://crbug.com/612144 (reference on Nexus 5X). |
| 107 return possible_browser.platform.GetDeviceTypeName() == 'Desktop' or ( | 132 return possible_browser.platform.GetDeviceTypeName() == 'Desktop' or ( |
| 108 possible_browser.browser_type == 'reference' and | 133 possible_browser.browser_type == 'reference' and |
| 109 possible_browser.platform.GetDeviceTypeName() == 'Nexus 5X') | 134 possible_browser.platform.GetDeviceTypeName() == 'Nexus 5X') |
| OLD | NEW |