Android功耗值测量

作者: ben3726 | 来源:发表于2018-08-23 21:22 被阅读33次

原文:https://source.android.com/devices/tech/power/values

设备制造商必须提供组件功耗配置文件/frameworks/base/core/res/res/xml/power_profile.xml

要测定电源配置文件的值,请使用测量设备使用功耗的硬件,并执行所需信息的各种操作。测量这些操作期间的所用功耗并计算值(根据需要从其他基线所用功耗中获得差异)。

由于功耗曲线的目标是适当地估计电池消耗,因此功率曲线值以电流(安培)给出。Android Framework 将电流乘以子系统处于活动状态的时间并计算mAh值,然后用于估计应用程序/子系统耗尽的电池量。

具有运行Android 7.0及更高版本的蓝牙,modem和Wi-Fi控制器的设备可以提供从芯片组数据获得的额外功耗值。

具有异构CPU的设备

具有异构体系结构CPU核心的设备的电源配置文件必须包含以下附加字段:

  • 每个群集的CPU总数(以cpu.clusters.cores表示)。
  • 每个群集支持的CPU速度。
  • 每个群集的活动CPU功耗。

要区分群集的活动CPU功耗和支持的CPU速度,请将群集编号附加到阵列的名称中。群集编号按内核设备树中CPU核的顺序分配。例如,在具有两(2)个具有四(4)个核的集群的异构体系结构中:

  • cluster0由cpu0-3组成
  • cluster1由cpu4-7组成

Android Framework从sysfs文件/sys/devices/system/cpu/cpu<number>/cpufreq/stats中读取统计信息时需要用到这些CPU核编号。

集群CPU和速度的示例:

<array name="cpu.active.cluster0">
<value>200</value>
<value>300</value>
<value>400</value>
</array>
<array name="cpu.speeds.cluster0">
<value>600000</value>
<value>800000</value>
<value>1200000</value>
</array>

<array name="cpu.active.cluster1">
<value>400</value>
<value>500</value>
<value>600</value>
</array>
<array name="cpu.speeds.cluster1">
<value>800000</value>
<value>1200000</value>
<value>1400000</value>
</array>

功耗值

下表介绍了可用的功耗值设置。要查看AOSP中的示例文件,请参阅 power_profile.xml

名称 描述 示例值 备注
none 0 -
screen.on 屏幕以最小亮度打开时使用的额外功率。 200mA 含触控和显示背光。在0亮度,而不是Android最小值(接近10或20%)。
screen.full 与最小亮度的屏幕相比,屏幕处于最大亮度时使用的额外功率。 100mA-300mA 将该值的一小部分(基于屏幕亮度)被添加到screen.on值以计算屏幕的使用功耗。
wifi.on 打开Wi-Fi但未接收、传输或扫描时使用的额外功耗。 2mA -
wifi.active 使用Wi-Fi发送或接收时的额外功耗。 31mA -
wifi.scan 使用Wi-Fi扫描接入点时的额外功耗。 100mA -
dsp.audio 使用DSP进行音频解码/编码时的额外功率。 14.1mA 保留供将来使用。
dsp.video 使用DSP进行视频解码时的额外功率。 54mA 保留供将来使用。
camera.avg 使用经典相机应用的相机子系统的平均功耗。 600mA 运行预览的应用程序的粗略估计,每分钟捕获大约10个全分辨率图片。
camera.flashlight 打开相机闪光灯模块时的平均功耗。 200mA -
gps.on 使用GPS获取信号时的额外功耗。 50mA -
radio.active 使用蜂窝无线电发送/接收时的额外功耗。 100mA-300mA -
radio.scanning 使用蜂窝无线电寻呼塔时的额外功耗。 1.2mA -
radio.on 开启蜂窝无线电时的额外功率。多值输入,每个信号强度一个(无信号,弱,中等,强)。 1.2mA 一些无线电设备在搜索蜂窝塔并且没有检测到信号时会增加功率。值可以相同或随着信号强度的增加而减小。如果只提供一个值,则所有强度都使用相同的值。如果提供两个值,第一个用于无信号,第二个值用于所有其他强度,依此类推。
bluetooth.controller.idle 空闲时蓝牙控制器的平均电流消耗(mA)。 - 这些值不是估算的,而是取自控制器的数据表。如果存在多个接收或发送状态,则采用这些状态的平均值。此外,系统现在为 低能耗(LE)和蓝牙扫描收集数据。Android N及更高版本不再为bluetooth.active(通过蓝牙A2DP播放音频时使用)和bluetooth.on(蓝牙开启但空闲时使用)使用蓝牙功耗值。
bluetooth.controller.rx 接收时蓝牙控制器的平均电流消耗(mA)。 - -
bluetooth.controller.tx 发送时蓝牙控制器的平均电流消耗(mA)。 - -
bluetooth.controller.voltage 蓝牙控制器的平均工作电压(mV)。 - -
modem.controller.idle 空闲时modem控制器的平均电流消耗(mA)。 - 这些值不是估算的,而是取自控制器的数据表。如果存在多个接收或发送状态,则采用这些状态的平均值。
modem.controller.rx 接收时modem控制器的平均电流消耗(mA)。 - -
modem.controller.tx 发送时modem控制器的平均电流消耗(mA)。 - -
modem.controller.voltage modem控制器的平均工作电压(mV)。 - -
wifi.controller.idle 空闲时Wi-Fi控制器的平均电流消耗(mA)。 - 这些值不是估算的,而是取自控制器的数据表。如果存在多个接收或发送状态,则采用这些状态的平均值。
wifi.controller.rx 接收时Wi-Fi控制器的平均电流消耗(mA)。 - -
wifi.controller.tx 发送时Wi-Fi控制器的平均电流消耗(mA)。 - -
wifi.controller.voltage Wi-Fi控制器的平均工作电压(mV)。 - -
cpu.speeds 多值输入,以KHz列出每个可能的CPU速度。 125000KHz,250000KHz,500000KHz,1000000KHz,1500000KHz 条目的数量和顺序必须与cpu.active中的mA条目相对应。
cpu.idle 当CPU(和SoC)处于系统休眠状态时系统汲取的总功耗。 3mA -
cpu.awake CPU处于调度空闲状态时的额外功耗(内核空闲循环); 系统未处于系统休眠状态。 50mA 您的平台可能有多个闲置状态,使用不同的功耗水平; 为较长时间的调度程序空闲(几毫秒)选择代表性空闲状态。检查测量设备上的功率图并选择CPU处于最低功耗的样本,丢弃CPU退出空闲时的较高样本。
cpu.active CPU以不同速度运行时的额外功耗。 100mA,120mA,140mA,160mA,200mA 值表示以不同速度运行时CPU轨道使用的功耗。将内核中的最大速度设置为允许的每个速度,并以该速度将CPU固定。条目的数量和顺序对应于cpu.speeds中条目的数量和顺序。
cpu.clusters.cores 每个CPU群集包含的核数。 4,2 仅适用于具有异构CPU架构的设备。条目数和顺序应与cpu.active和cpu.speeds的集群条目数相匹配。第一个条目表示cluster0中的CPU核心数,第二个条目表示cluster1中的CPU核心数,依此类推。
电池容量 总电池容量,单位为mAh。 3000mAh的 -

低能耗(LE)和蓝牙扫描

对于运行Android 7.0的设备,系统会收集低能耗(LE)扫描和蓝牙网络流量(如RFCOMM和L2CAP)的数据,并将这些活动与启动应用程序相关联。蓝牙扫描与启动扫描的应用程序相关联,但批量扫描不是(与蓝牙应用程序相关联)。对于扫描N毫秒的应用程序,扫描的成本是n毫秒的rx时间和N毫秒的tx时间; 所有剩余控制器时间都分配给网络流量或蓝牙应用程序。

相关文章

  • Android功耗值测量

    原文:https://source.android.com/devices/tech/power/values 设...

  • Android组件功耗测量

    原文:https://source.android.com/devices/tech/power/componen...

  • Android设备功耗测量

    原文:https://source.android.com/devices/tech/power/device 您...

  • 戴尔 U2412 功耗测量 --【功耗测量】

    测量对象:戴尔(DELL)UltraSharp U2412M 24英寸16:10屏幕比例旋转升降IPS屏显示器 面...

  • 蜗牛星际 --【功耗测量】

    测量对象:蜗牛星际b单千兆 配置: j1900 + 16g 固态 +4g ddr3l 内存 关机功耗 蜗牛星际关机...

  • 扫描BLE蓝牙

    Android4.3以上加入了低功耗蓝牙,可以大大节省设备功耗。低功耗蓝牙包括的术语及概念: 如上图所示,使用低功...

  • Android 蓝牙的一些知识

    低功耗蓝牙 Android BLE API 简介 BluetoothAdapter BluetoothAdapte...

  • BLE使用

    一、BLE概述 Android4.3以上加入了BLE——低功耗蓝牙。 使用低功耗蓝牙可以包括多个Profile,一...

  • 蓝牙ble

    绑定、配对、连接蓝牙4.0BLE介绍_casuallystone_新浪博客 Android_低功耗 Android...

  • 低功耗蓝牙BLE

    Google在android 4.3(API Level 18)的android版本中引入了低功耗蓝牙BLE核心A...

网友评论

    本文标题:Android功耗值测量

    本文链接:https://www.haomeiwen.com/subject/xzgmiftx.html