Commit e91e65d8 authored by Charlie Andrews's avatar Charlie Andrews Committed by Commit Bot

Stop monitoring power using BattOrs on the perf waterfall

As decided in https://goo.gl/g5Srzn, the low number of regressions
caught by the power metrics alone doesn't justify the high cost of
maintaining the BattOrs on the waterfall.

Bug: 859514
Change-Id: I012e2692963c30793b6843e2844d77cdf75d7d3e
Reviewed-on: https://chromium-review.googlesource.com/1122485
Commit-Queue: Charlie Andrews <charliea@chromium.org>
Reviewed-by: default avatarCaleb Rouleau <crouleau@chromium.org>
Reviewed-by: default avatarNed Nguyen <nednguyen@google.com>
Reviewed-by: default avatarJuan Antonio Navarro Pérez <perezju@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571997}
parent 9033c46f
......@@ -37,10 +37,6 @@ class _MediaBenchmark(perf_benchmark.PerfBenchmark):
# 'toplevel' category provides CPU time slices used by # cpuTimeMetric.
category_filter.AddIncludedCategory('toplevel')
# 'rail' category is used by powerMetric to attribute different period of
# time to different activities, such as video_animation, etc.
category_filter.AddIncludedCategory('rail')
# Collect media related events required by mediaMetric.
category_filter.AddIncludedCategory('media')
......@@ -48,15 +44,14 @@ class _MediaBenchmark(perf_benchmark.PerfBenchmark):
category_filter.AddDisabledByDefault('disabled-by-default-memory-infra')
options = timeline_based_measurement.Options(category_filter)
options.config.enable_battor_trace = True
options.config.enable_android_graphics_memtrack = True
# Setting an empty memory dump config disables periodic dumps.
options.config.chrome_trace_config.SetMemoryDumpConfig(
chrome_trace_config.MemoryDumpConfig())
options.SetTimelineBasedMetrics(['powerMetric', 'mediaMetric',
'cpuTimeMetric', 'memoryMetric'])
options.SetTimelineBasedMetrics(['mediaMetric', 'cpuTimeMetric',
'memoryMetric'])
return options
@classmethod
......
......@@ -12,20 +12,16 @@ from telemetry.timeline import chrome_trace_category_filter
from telemetry.web_perf import timeline_based_measurement
class _BattOrPowerBenchmark(perf_benchmark.PerfBenchmark):
class _PowerBenchmark(perf_benchmark.PerfBenchmark):
"""A benchmark that indirectly measures power through CPU time."""
def CreateCoreTimelineBasedMeasurementOptions(self):
category_filter = chrome_trace_category_filter.ChromeTraceCategoryFilter(
filter_string='toplevel')
options = timeline_based_measurement.Options(category_filter)
options.config.chrome_trace_config.category_filter.AddFilterString('rail')
options.config.enable_atrace_trace = True
options.config.atrace_config.categories = ['sched']
options.config.enable_battor_trace = True
options.config.enable_chrome_trace = True
options.config.enable_cpu_trace = True
options.SetTimelineBasedMetrics(
['powerMetric', 'clockSyncLatencyMetric', 'cpuTimeMetric'])
options.SetTimelineBasedMetrics(['cpuTimeMetric'])
return options
......@@ -44,6 +40,8 @@ class PowerTypical10Mobile(perf_benchmark.PerfBenchmark):
return 'power.typical_10_mobile'
# TODO(charliea): Delete this benchmark now that we're no longer measuring
# ground-truth power.
@benchmark.Owner(emails=['charliea@chromium.org'])
class IdlePlatformBenchmark(perf_benchmark.PerfBenchmark):
"""Idle platform benchmark.
......@@ -55,14 +53,11 @@ class IdlePlatformBenchmark(perf_benchmark.PerfBenchmark):
def CreateCoreTimelineBasedMeasurementOptions(self):
options = timeline_based_measurement.Options(
chrome_trace_category_filter.ChromeTraceCategoryFilter())
options.config.enable_battor_trace = True
options.config.enable_cpu_trace = True
# Atrace tracing agent autodetects if its android and only runs if it is.
options.config.enable_atrace_trace = True
options.config.enable_chrome_trace = False
options.SetTimelineBasedMetrics([
'clockSyncLatencyMetric',
'powerMetric',
'tracingMetric'
])
return options
......@@ -76,7 +71,7 @@ class IdlePlatformBenchmark(perf_benchmark.PerfBenchmark):
@benchmark.Owner(emails=['charliea@chromium.org'])
class PowerDesktop(_BattOrPowerBenchmark):
class PowerDesktop(_PowerBenchmark):
SUPPORTED_PLATFORMS = [story.expectations.ALL_DESKTOP]
def CreateStorySet(self, options):
......
......@@ -41,13 +41,10 @@ class _CommonSystemHealthBenchmark(perf_benchmark.PerfBenchmark):
cat_filter.AddIncludedCategory('accessibility')
options = timeline_based_measurement.Options(cat_filter)
options.config.enable_battor_trace = True
options.config.enable_chrome_trace = True
options.config.enable_cpu_trace = True
options.SetTimelineBasedMetrics([
'clockSyncLatencyMetric',
'cpuTimeMetric',
'powerMetric',
'tracingMetric',
'accessibilityMetric',
'limitedCpuTimeMetric'
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment