summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorbulach@chromium.org <bulach@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-27 09:32:45 +0000
committerbulach@chromium.org <bulach@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-27 09:32:45 +0000
commit4b611e93f77c75c33a9f9128fe542c0c59aa4be3 (patch)
tree626c12771e75d79a88aa4cb1947f707f334874db /tools
parent247df2be0e6a352eb5d74edf0e55bc1914f2f062 (diff)
downloadchromium_src-4b611e93f77c75c33a9f9128fe542c0c59aa4be3.zip
chromium_src-4b611e93f77c75c33a9f9128fe542c0c59aa4be3.tar.gz
chromium_src-4b611e93f77c75c33a9f9128fe542c0c59aa4be3.tar.bz2
Telemetry / Android: adds option to prevent setting "performance mode".
After r184153, Telemetry always set the cpu governor to max performance by default. This is done so all bots and graphs will have less noise as theoretically the cpu frequency will remain more constant. However, sometimes it's interesting to change run on whatever mode was configured manually. BUG= TEST= NOTRY=true Review URL: https://chromiumcodereview.appspot.com/12314102 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184914 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools')
-rw-r--r--tools/telemetry/telemetry/core/browser_options.py8
-rw-r--r--tools/telemetry/telemetry/core/chrome/android_browser_finder.py2
-rw-r--r--tools/telemetry/telemetry/core/chrome/android_platform_backend.py8
3 files changed, 16 insertions, 2 deletions
diff --git a/tools/telemetry/telemetry/core/browser_options.py b/tools/telemetry/telemetry/core/browser_options.py
index bacde66..b809c98 100644
--- a/tools/telemetry/telemetry/core/browser_options.py
+++ b/tools/telemetry/telemetry/core/browser_options.py
@@ -125,6 +125,14 @@ class BrowserOptions(optparse.Values):
help='Increase verbosity level (repeat as needed)')
parser.add_option_group(group)
+ # Platform options
+ group = optparse.OptionGroup(parser, 'Platform options')
+ group.add_option('--no-performance-mode', action='store_true',
+ help='Some platforms run on "full performance mode" where the '
+ 'benchmark is executed at maximum CPU speed in order to minimize noise '
+ '(specially important for dashboards / continuous builds). '
+ 'This option prevents Telemetry from tweaking such platform settings.')
+
real_parse = parser.parse_args
def ParseArgs(args=None):
defaults = parser.get_default_values()
diff --git a/tools/telemetry/telemetry/core/chrome/android_browser_finder.py b/tools/telemetry/telemetry/core/chrome/android_browser_finder.py
index 7095f00..a2f8b18 100644
--- a/tools/telemetry/telemetry/core/chrome/android_browser_finder.py
+++ b/tools/telemetry/telemetry/core/chrome/android_browser_finder.py
@@ -56,7 +56,7 @@ class PossibleAndroidBrowser(possible_browser.PossibleBrowser):
self._options, *self._args)
platform_backend = android_platform_backend.AndroidPlatformBackend(
self._args[0].Adb(), self._args[1],
- self._args[4])
+ self._args[4], self._options.no_performance_mode)
b = browser.Browser(backend, platform.Platform(platform_backend))
backend.SetBrowser(b)
return b
diff --git a/tools/telemetry/telemetry/core/chrome/android_platform_backend.py b/tools/telemetry/telemetry/core/chrome/android_platform_backend.py
index e5ab574..47b9e5b 100644
--- a/tools/telemetry/telemetry/core/chrome/android_platform_backend.py
+++ b/tools/telemetry/telemetry/core/chrome/android_platform_backend.py
@@ -2,6 +2,7 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
+import logging
import os
import sys
@@ -21,7 +22,7 @@ except Exception:
class AndroidPlatformBackend(object):
- def __init__(self, adb, window_package, window_activity):
+ def __init__(self, adb, window_package, window_activity, no_performance_mode):
super(AndroidPlatformBackend, self).__init__()
self._adb = adb
self._window_package = window_package
@@ -29,6 +30,9 @@ class AndroidPlatformBackend(object):
self._surface_stats_collector = None
self._perf_tests_setup = perf_tests_helper.PerfTestSetup(self._adb)
self._thermal_throttle = thermal_throttle.ThermalThrottle(self._adb)
+ self._no_performance_mode = no_performance_mode
+ if self._no_performance_mode:
+ logging.warning('CPU governor will not be set!')
def IsRawDisplayFrameRateSupported(self):
return True
@@ -45,6 +49,8 @@ class AndroidPlatformBackend(object):
self._surface_stats_collector = None
def SetFullPerformanceModeEnabled(self, enabled):
+ if self._no_performance_mode:
+ return
if enabled:
self._perf_tests_setup.SetUp()
else: