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

Side by Side Diff: tools/perf/measurements/power_many_tabs.py

Issue 178363005: [Telemetry] Measure power in tab_switching measurement (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remove extreneous change Created 6 years, 9 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
« no previous file with comments | « tools/perf/benchmarks/power.py ('k') | tools/perf/metrics/speedindex.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 import time
6
7 from metrics import power
8 from telemetry.core import util
9 from telemetry.page import page_measurement
10
11
12 class PowerManyTabs(page_measurement.PageMeasurement):
13 """Load pageset in multiple tabs, measure power after quiesencence."""
14
15 # Amount of time to measure power usage for, in seconds.
16 POWER_MEAUSUREMENT_TIME_S = 5
17
18 def __init__(self, action_name_to_run=''):
19 super(PowerManyTabs, self).__init__(action_name_to_run=action_name_to_run)
20 self._power_metric = power.PowerMetric()
21
22 def CustomizeBrowserOptions(self, options):
23 power.PowerMetric.CustomizeBrowserOptions(options)
24
25 def TabForPage(self, page, browser):
26 return browser.tabs.New()
27
28 def StopBrowserAfterPage(self, browser, page):
29 # Restart browser after all pages in pageset are loaded.
30 return len(browser.tabs) == len(page.page_set.pages)
31
32 def MeasurePage(self, page, tab, results):
33 """Only measure on the last tab."""
34 if len(tab.browser.tabs) != len(page.page_set.pages):
35 return
36
37 util.WaitFor(tab.HasReachedQuiescence, 60)
qsr 2014/02/27 14:00:52 Should you wait for the quiescence of every tab, a
38
39 # Measure power after quiescence.
40 self._power_metric.Start(page, tab)
41 time.sleep(PowerManyTabs.POWER_MEAUSUREMENT_TIME_S)
42 self._power_metric.Stop(page, tab)
43
44 self._power_metric.AddResults(tab, results)
OLDNEW
« no previous file with comments | « tools/perf/benchmarks/power.py ('k') | tools/perf/metrics/speedindex.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698