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

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

Issue 2130683002: [Experiment] purge-and-suspend Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 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
OLDNEW
1 # Copyright 2015 The Chromium Authors. All rights reserved. 1 # Copyright 2015 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 8
9 from telemetry import benchmark 9 from telemetry import benchmark
10 from telemetry.timeline import chrome_trace_category_filter 10 from telemetry.timeline import chrome_trace_category_filter
(...skipping 13 matching lines...) Expand all
24 24
25 This benchmark records data using memory-infra (https://goo.gl/8tGc6O), which 25 This benchmark records data using memory-infra (https://goo.gl/8tGc6O), which
26 is part of chrome tracing, and extracts it using timeline-based measurements. 26 is part of chrome tracing, and extracts it using timeline-based measurements.
27 """ 27 """
28 28
29 def SetExtraBrowserOptions(self, options): 29 def SetExtraBrowserOptions(self, options):
30 options.AppendExtraBrowserArgs([ 30 options.AppendExtraBrowserArgs([
31 # TODO(perezju): Temporary workaround to disable periodic memory dumps. 31 # TODO(perezju): Temporary workaround to disable periodic memory dumps.
32 # See: http://crbug.com/513692 32 # See: http://crbug.com/513692
33 '--enable-memory-benchmarking', 33 '--enable-memory-benchmarking',
34 # TODO(ssid): Remove this flag after fixing http://crbug.com/461788.
35 '--no-sandbox',
34 ]) 36 ])
35 37
36 def CreateTimelineBasedMeasurementOptions(self): 38 def CreateTimelineBasedMeasurementOptions(self):
37 # Enable only memory-infra, to get memory dumps, and blink.console, to get 39 # Enable only memory-infra, to get memory dumps, and blink.console, to get
38 # the timeline markers used for mapping threads to tabs. 40 # the timeline markers used for mapping threads to tabs.
39 trace_memory = chrome_trace_category_filter.ChromeTraceCategoryFilter( 41 trace_memory = chrome_trace_category_filter.ChromeTraceCategoryFilter(
40 filter_string='-*,blink.console,disabled-by-default-memory-infra') 42 filter_string='-*,blink.console,disabled-by-default-memory-infra')
41 tbm_options = timeline_based_measurement.Options( 43 tbm_options = timeline_based_measurement.Options(
42 overhead_level=trace_memory) 44 overhead_level=trace_memory)
43 tbm_options.config.enable_android_graphics_memtrack = True 45 tbm_options.config.enable_android_graphics_memtrack = True
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 of long running idle Gmail page """ 218 of long running idle Gmail page """
217 page_set = page_sets.LongRunningIdleGmailBackgroundPageSet 219 page_set = page_sets.LongRunningIdleGmailBackgroundPageSet
218 220
219 @classmethod 221 @classmethod
220 def Name(cls): 222 def Name(cls):
221 return 'memory.long_running_idle_gmail_background_tbmv2' 223 return 'memory.long_running_idle_gmail_background_tbmv2'
222 224
223 @classmethod 225 @classmethod
224 def ShouldDisable(cls, possible_browser): # http://crbug.com/616530 226 def ShouldDisable(cls, possible_browser): # http://crbug.com/616530
225 return cls.IsSvelte(possible_browser) 227 return cls.IsSvelte(possible_browser)
228
229
230 @benchmark.Enabled('android')
231 class RendererMemoryTest(_MemoryInfra):
232 """Timeline based benchmark for measuring memory consumption on mobile
233 sites on which blink's memory consumption is relatively high."""
234
235 TBM_VERSION = 2
236
237 page_set = page_sets.MemoryTestPageSet
238
239 def SetExtraBrowserOptions(self, options):
240 super(RendererMemoryTest, self).SetExtraBrowserOptions(
241 options)
242 options.AppendExtraBrowserArgs([
243 # Ignore certs errors because record_wpr cannot handle certs correctly
244 # in some cases (e.g. WordPress).
245 '--ignore-certificate-errors',
246 # Add purge-and-suspend-time.
247 '--purge-and-suspend-time=10',
248 '--enable-heap-profiling',
249 ])
250
251 @classmethod
252 def Name(cls):
253 return 'memory.memory_test'
254
255 @classmethod
256 def ValueCanBeAddedPredicate(cls, value, is_first_result):
257 return (not _IGNORED_STATS_RE.search(value.name) and
258 'renderer_processes' in value.name)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698