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

Unified Diff: tools/perf/benchmarks/memory_infra.py

Issue 1920363003: Reland of Set up a parallel memory.memory_health_quick_tbmv2 benchmark (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | tools/perf/page_sets/memory_health_story.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/perf/benchmarks/memory_infra.py
diff --git a/tools/perf/benchmarks/memory_infra.py b/tools/perf/benchmarks/memory_infra.py
index 40f09ad89e465ad4fa468da18a3ba623007c9e1e..ffc6d842c3e17e8a8446f3303533841be079fe0d 100644
--- a/tools/perf/benchmarks/memory_infra.py
+++ b/tools/perf/benchmarks/memory_infra.py
@@ -22,6 +22,9 @@
is part of chrome tracing, and extracts it using timeline-based measurements.
"""
+ # Subclasses can override this to use TBMv2 instead of TBMv1.
+ TBM_VERSION = 1
+
def SetExtraBrowserOptions(self, options):
options.AppendExtraBrowserArgs([
# TODO(perezju): Temporary workaround to disable periodic memory dumps.
@@ -37,16 +40,19 @@
tbm_options = timeline_based_measurement.Options(
overhead_level=trace_memory)
tbm_options.config.enable_android_graphics_memtrack = True
+ if self.TBM_VERSION == 1:
+ # TBMv1 (see telemetry/telemetry/web_perf/metrics/memory_timeline.py
+ # in third_party/catapult).
+ tbm_options.SetLegacyTimelineBasedMetrics((
+ memory_timeline.MemoryTimelineMetric(),
+ ))
+ elif self.TBM_VERSION == 2:
+ # TBMv2 (see tracing/tracing/metrics/system_health/memory_metric.html
+ # in third_party/catapult).
+ tbm_options.SetTimelineBasedMetric('memoryMetric')
+ else:
+ raise Exception('Unrecognized TBM version: %s' % self.TBM_VERSION)
return tbm_options
-
- @classmethod
- def HasTraceRerunDebugOption(cls):
- return True
-
- def SetupBenchmarkDefaultTraceRerunOptions(self, tbm_options):
- tbm_options.SetLegacyTimelineBasedMetrics((
- memory_timeline.MemoryTimelineMetric(),
- ))
# TODO(bashi): Workaround for http://crbug.com/532075
@@ -76,6 +82,24 @@
@classmethod
def Name(cls):
return 'memory.memory_health_plan'
+
+
+@benchmark.Enabled('android')
+class TBMv2MemoryBenchmarkTop10Mobile(MemoryHealthQuick):
+ """Timeline based benchmark for the Memory Health Plan based on TBMv2.
+
+ This is a temporary benchmark to compare the new TBMv2 memory metric
+ (memory_metric.html) with the existing TBMv1 one (memory_timeline.py). Once
+ all issues associated with the TBMv2 metric are resolved, all memory
+ benchmarks (including the ones in this file) will switch to use it instead
+ of the TBMv1 metric and this temporary benchmark will be removed. See
+ crbug.com/60361.
+ """
+ TBM_VERSION = 2
+
+ @classmethod
+ def Name(cls):
+ return 'memory.top_10_mobile_tbmv2'
# TODO(bashi): Workaround for http://crbug.com/532075
« no previous file with comments | « no previous file | tools/perf/page_sets/memory_health_story.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698