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

Side by Side Diff: tools/telemetry/telemetry/internal/platform/android_platform_backend.py

Issue 1255673002: [Android][Telemetry] Add support for multiple power monitors (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 4 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 2013 The Chromium Authors. All rights reserved. 1 # Copyright 2013 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 logging 5 import logging
6 import os 6 import os
7 import re 7 import re
8 import shutil 8 import shutil
9 import stat 9 import stat
10 import subprocess 10 import subprocess
11 import tempfile 11 import tempfile
12 12
13 from catapult_base import binary_manager 13 from catapult_base import binary_manager
14 from telemetry.core import android_platform 14 from telemetry.core import android_platform
15 from telemetry.core import exceptions 15 from telemetry.core import exceptions
16 from telemetry.core import platform 16 from telemetry.core import platform
17 from telemetry.core import util 17 from telemetry.core import util
18 from telemetry import decorators 18 from telemetry import decorators
19 from telemetry.internal.forwarders import android_forwarder 19 from telemetry.internal.forwarders import android_forwarder
20 from telemetry.internal.image_processing import video 20 from telemetry.internal.image_processing import video
21 from telemetry.internal.platform import android_device 21 from telemetry.internal.platform import android_device
22 from telemetry.internal.platform import linux_based_platform_backend 22 from telemetry.internal.platform import linux_based_platform_backend
23 from telemetry.internal.platform.power_monitor import android_dumpsys_power_moni tor 23 from telemetry.internal.platform.power_monitor import android_dumpsys_power_moni tor
24 from telemetry.internal.platform.power_monitor import android_temperature_monito r 24 from telemetry.internal.platform.power_monitor import android_temperature_monito r
25 from telemetry.internal.platform.power_monitor import monsoon_power_monitor 25 from telemetry.internal.platform.power_monitor import monsoon_power_monitor
26 from telemetry.internal.platform.power_monitor import power_monitor_controller 26 from telemetry.internal.platform.power_monitor import power_monitor_controller
27 from telemetry.internal.platform.power_monitor import sysfs_power_monitor
27 from telemetry.internal.platform.profiler import android_prebuilt_profiler_helpe r 28 from telemetry.internal.platform.profiler import android_prebuilt_profiler_helpe r
28 from telemetry.internal.util import exception_formatter 29 from telemetry.internal.util import exception_formatter
29 from telemetry.internal.util import external_modules 30 from telemetry.internal.util import external_modules
30 31
31 psutil = external_modules.ImportOptionalModule('psutil') 32 psutil = external_modules.ImportOptionalModule('psutil')
32 util.AddDirToPythonPath(util.GetChromiumSrcDir(), 33 util.AddDirToPythonPath(util.GetChromiumSrcDir(),
33 'third_party', 'webpagereplay') 34 'third_party', 'webpagereplay')
34 import adb_install_cert 35 import adb_install_cert
35 import certutils 36 import certutils
36 import platformsettings 37 import platformsettings
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 try: 159 try:
159 self._can_access_protected_file_contents = ( 160 self._can_access_protected_file_contents = (
160 self._device.HasRoot() or self._device.NeedsSU()) 161 self._device.HasRoot() or self._device.NeedsSU())
161 except: 162 except:
162 logging.exception('New exception caused by DeviceUtils conversion') 163 logging.exception('New exception caused by DeviceUtils conversion')
163 raise 164 raise
164 self._device_copy_script = None 165 self._device_copy_script = None
165 power_controller = power_monitor_controller.PowerMonitorController([ 166 power_controller = power_monitor_controller.PowerMonitorController([
166 monsoon_power_monitor.MonsoonPowerMonitor(self._device, self), 167 monsoon_power_monitor.MonsoonPowerMonitor(self._device, self),
167 android_dumpsys_power_monitor.DumpsysPowerMonitor(self._battery, self), 168 android_dumpsys_power_monitor.DumpsysPowerMonitor(self._battery, self),
169 sysfs_power_monitor.SysfsPowerMonitor(self, standalone=True),
168 ], self._battery) 170 ], self._battery)
169 self._power_monitor = android_temperature_monitor.AndroidTemperatureMonitor( 171 self._power_monitor = android_temperature_monitor.AndroidTemperatureMonitor(
170 power_controller, self._device) 172 power_controller, self._device)
171 self._video_recorder = None 173 self._video_recorder = None
172 self._installed_applications = None 174 self._installed_applications = None
173 175
174 self._wpr_ca_cert_path = None 176 self._wpr_ca_cert_path = None
175 self._device_cert_util = None 177 self._device_cert_util = None
176 self._is_test_ca_installed = False 178 self._is_test_ca_installed = False
177 179
(...skipping 652 matching lines...) Expand 10 before | Expand all | Expand 10 after
830 for process in psutil.process_iter(): 832 for process in psutil.process_iter():
831 try: 833 try:
832 if psutil.version_info >= (2, 0): 834 if psutil.version_info >= (2, 0):
833 if 'adb' in process.name(): 835 if 'adb' in process.name():
834 process.cpu_affinity([0]) 836 process.cpu_affinity([0])
835 else: 837 else:
836 if 'adb' in process.name: 838 if 'adb' in process.name:
837 process.set_cpu_affinity([0]) 839 process.set_cpu_affinity([0])
838 except (psutil.NoSuchProcess, psutil.AccessDenied): 840 except (psutil.NoSuchProcess, psutil.AccessDenied):
839 logging.warn('Failed to set adb process CPU affinity') 841 logging.warn('Failed to set adb process CPU affinity')
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698