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

Side by Side Diff: tools/perf/perf_tools/memory_benchmark.py

Issue 12389073: Collect tab timing information for use in telementry-based startup tests (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: formatting/compile fix Created 7 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 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 from perf_tools import histogram_measurement 4 from perf_tools import histogram_measurement
5 from telemetry.page import page_benchmark 5 from telemetry.page import page_benchmark
6 6
7 MEMORY_HISTOGRAMS = [ 7 MEMORY_HISTOGRAMS = [
8 {'name': 'V8.MemoryExternalFragmentationTotal', 'units': 'percent'}, 8 {'name': 'V8.MemoryExternalFragmentationTotal', 'units': 'percent'},
9 {'name': 'V8.MemoryHeapSampleTotalCommitted', 'units': 'kb'}, 9 {'name': 'V8.MemoryHeapSampleTotalCommitted', 'units': 'kb'},
10 {'name': 'V8.MemoryHeapSampleTotalUsed', 'units': 'kb'}, 10 {'name': 'V8.MemoryHeapSampleTotalUsed', 'units': 'kb'},
(...skipping 11 matching lines...) Expand all
22 for h in MEMORY_HISTOGRAMS] + 22 for h in MEMORY_HISTOGRAMS] +
23 [histogram_measurement.HistogramMeasurement( 23 [histogram_measurement.HistogramMeasurement(
24 h, histogram_measurement.BROWSER_HISTOGRAM) 24 h, histogram_measurement.BROWSER_HISTOGRAM)
25 for h in BROWSER_MEMORY_HISTOGRAMS]) 25 for h in BROWSER_MEMORY_HISTOGRAMS])
26 26
27 def DidNavigateToPage(self, page, tab): 27 def DidNavigateToPage(self, page, tab):
28 for h in self.histograms: 28 for h in self.histograms:
29 h.Start(page, tab) 29 h.Start(page, tab)
30 30
31 def CustomizeBrowserOptions(self, options): 31 def CustomizeBrowserOptions(self, options):
32 options.AppendExtraBrowserArg('--dom-automation') 32 options.AppendExtraBrowserArg('--enable-stats-collection-bindings')
33 # For a hard-coded set of Google pages (such as GMail), we produce custom 33 # For a hard-coded set of Google pages (such as GMail), we produce custom
34 # memory histograms (V8.Something_gmail) instead of the generic histograms 34 # memory histograms (V8.Something_gmail) instead of the generic histograms
35 # (V8.Something), if we detect that a renderer is only rendering this page 35 # (V8.Something), if we detect that a renderer is only rendering this page
36 # and no other pages. For this test, we need to disable histogram 36 # and no other pages. For this test, we need to disable histogram
37 # customizing, so that we get the same generic histograms produced for all 37 # customizing, so that we get the same generic histograms produced for all
38 # pages. 38 # pages.
39 options.AppendExtraBrowserArg('--disable-histogram-customizer') 39 options.AppendExtraBrowserArg('--disable-histogram-customizer')
40 options.AppendExtraBrowserArg('--memory-metrics') 40 options.AppendExtraBrowserArg('--memory-metrics')
41 options.AppendExtraBrowserArg('--reduce-security-for-dom-automation-tests') 41 options.AppendExtraBrowserArg(
42 '--reduce-security-for-stats-collection-tests')
42 43
43 def CanRunForPage(self, page): 44 def CanRunForPage(self, page):
44 return hasattr(page, 'stress_memory') 45 return hasattr(page, 'stress_memory')
45 46
46 def MeasurePage(self, page, tab, results): 47 def MeasurePage(self, page, tab, results):
47 for h in self.histograms: 48 for h in self.histograms:
48 h.GetValue(page, tab, results) 49 h.GetValue(page, tab, results)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698