diff options
author | Adam Lesinski <adamlesinski@google.com> | 2015-09-05 18:05:40 -0700 |
---|---|---|
committer | Adam Lesinski <adamlesinski@google.com> | 2015-09-09 17:07:54 -0700 |
commit | 6832f39416cbe2cc9655af4eabefe39c5d272254 (patch) | |
tree | 7b6a2c99c7938a4d79ffcea8387ddc69365265a7 /core/res/res/xml | |
parent | 24a6be463e5628416ad234a3e2e33f1f4cc5b287 (diff) | |
download | frameworks_base-6832f39416cbe2cc9655af4eabefe39c5d272254.zip frameworks_base-6832f39416cbe2cc9655af4eabefe39c5d272254.tar.gz frameworks_base-6832f39416cbe2cc9655af4eabefe39c5d272254.tar.bz2 |
BatteryStats: Better big-little CPU accounting
Generalize cpu clusters so we can measure frequency
and power usage across heterogeneous cpu clusters.
This also brings back reading of cpu-times for power calculation.
Bug:22773176
Change-Id: I9c794ae9756c782c0e971c7f5fcebbe70374b269
Diffstat (limited to 'core/res/res/xml')
-rw-r--r-- | core/res/res/xml/power_profile.xml | 35 |
1 files changed, 28 insertions, 7 deletions
diff --git a/core/res/res/xml/power_profile.xml b/core/res/res/xml/power_profile.xml index 28d99d8..ddd0ca2 100644 --- a/core/res/res/xml/power_profile.xml +++ b/core/res/res/xml/power_profile.xml @@ -47,17 +47,38 @@ <value>0.2</value> <!-- ~2mA --> <value>0.1</value> <!-- ~1mA --> </array> - <!-- Different CPU speeds as reported in - /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state --> - <array name="cpu.speeds"> + + <!-- A list of heterogeneous CPU clusters, where the value for each cluster represents the + number of CPU cores for that cluster. + + Ex: + <array name="cpu.clusters.cores"> + <value>4</value> // cluster 0 has cpu0, cpu1, cpu2, cpu3 + <value>2</value> // cluster 1 has cpu4, cpu5 + </array> --> + <array name="cpu.clusters.cores"> + <value>1</value> <!-- cluster 0 has cpu0 --> + </array> + + <!-- Different CPU speeds for cluster 0 as reported in + /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state. + + There must be one of these for each cluster, labeled: + cpu.speeds.cluster0, cpu.speeds.cluster1, etc... --> + <array name="cpu.speeds.cluster0"> <value>400000</value> <!-- 400 MHz CPU speed --> </array> - <!-- Current when CPU is idle --> - <item name="cpu.idle">0.1</item> - <!-- Current at each CPU speed, as per 'cpu.speeds' --> - <array name="cpu.active"> + + <!-- Current at each CPU speed for cluster 0, as per 'cpu.speeds.cluster0'. + Like cpu.speeds.cluster0, there must be one of these present for + each heterogeneous CPU cluster. --> + <array name="cpu.active.cluster0"> <value>0.1</value> <!-- ~100mA --> </array> + + <!-- Current when CPU is idle --> + <item name="cpu.idle">0.1</item> + <!-- This is the battery capacity in mAh (measured at nominal voltage) --> <item name="battery.capacity">1000</item> |