外观
Energy、Battery 与 Thermal 指标 v4
定义与 Registry
| 定义 | metricID | scope | unit | 来源字段 |
|---|---|---|---|---|
| Energy Total | ios.process.energy.total_cost | process | source-native-cost | Energy debug gauge energy.cost |
| CPU/GPU/Network/Location/Display/Overhead | ios.process.energy.cpu_cost / gpu_cost / network_cost / location_cost / display_cost / overhead | process | source-native-cost | 对应 energy.*.cost 与 energy.overhead |
| 电池放电电流 | ios.device.battery.current | device | milliampere candidate | InstantAmperage + ExternalConnected + IsCharging |
| 电池电压 | ios.device.battery.voltage | device | millivolt candidate | 同一 battery-only 快照的 Voltage |
| 电池放电功率 | ios.device.battery.power | device | milliwatt candidate | 同一快照 abs(InstantAmperage)×Voltage/1000 |
| 电池温度 | ios.device.battery.temperature_raw / temperature_celsius | device | source-native / degree-celsius | Temperature / Temperature÷100 |
| 热状态 | ios.device.thermal.status | device | enum-raw | 稳定来源字段 ThermalStatus,仅接受 0–3 |
计算、窗口与取整
Energy 沿用 v2:每个 DVT gauge 回包独立产生候选值,不插值、不差分、不跨样本累计;Total 直接取 energy.cost,不得把六分项求和;非负有限值原样保存,计算层不取整。
Battery 是设备级低频条件指标。Diagnostics 第一次立即读取,此后以 monotonic 固定 deadline 每 20 秒读取;调用耗时不累计漂移,错过窗口不追赶连发。只有 ExternalConnected == false、IsCharging == false、InstantAmperage <= 0 且 Voltage > 0 的同一快照可以生成 Current / Voltage / Power,其中 Current=abs(InstantAmperage),Power=Current×Voltage/1000。计算层保留 double,不取整、不插值、不累计。
Temperature 仍只在原始值为 0–8000 时除以 100。它与 Battery 电学门禁相互独立:USB 下电学三项不可用时,温度仍可作为候选事实。
质量语义
- Energy:身份未核验时七项
identity-unverified;负 Total 整帧source-sentinel;单负分项只关闭该项;通过门禁的真实 0 保留。 - Battery:
ExternalConnected != false为external-power-connected;明确充电为charging;电源状态字段缺失为power-state-missing;battery-only 场景出现正电流为source-sign-unverified。 - Voltage 必须为有限正值;Power 必须由同一快照的有效 Current 与 Voltage 计算,不跨样本拼接。
- Temperature 越界或缺失为 missing;真实 0 保留。
- ThermalStatus 源字段缺失时保持 missing;通知名称、温度、进程 Energy thermal cost 均不可代替 0–3 当前状态。
当前校准状态
Energy Usage 七项已进入实时产品和 perfowl.metric-self-calibration/1。iOS 17/18 Wi-Fi 匿名 Session 均观察到七项原始源;iOS 18 为 23 个有效 Energy 回包,七项都有数值(E4 candidate)。负 Total 仍整帧 source-sentinel,真实 0 保留。
Battery 三项已具备公式、Wi-Fi 设备发现、iOS 17+ userspace 路由、iOS 15/16 Network Lockdown 路由与 USB→Network 选中态保留。本批 iOS 17/18 Wi-Fi Session 各取得 2/3 个 20 秒条件快照,但设备均报告 ExternalConnected=true,因此 Current / Voltage / Power 正确保持 null / external-power-connected。软件公式与门禁 L1 已通过,放电数值 E4 仍需一次物理断开所有外供电后的长于 40 秒 Session。
Battery Temperature 在 iOS 17/18 Wi-Fi E4 分别观察到 29.00–29.29 ℃ 与 30.79–31.00 ℃。ThermalStatus 经 Battery IORegistry、完整 IOService 平面、MobileGestalt 和 DVT/Diagnostics 能力审计后仍没有稳定 0–3 当前值源,保持 source-missing。PowerTelemetryData、温度和 Energy thermal cost 都不用于推断该值。
版本历史
- v4(2026-09-06):纳入 P5 自校准器、Wi-Fi userspace/Network Lockdown 路由、iOS 17/18 Wi-Fi E4 数据与四项未关门边界。来源:P2/P5 指标自校准与产品闭环结果。
- v3(2026-09-05):增加 battery-only 模式门禁、20 秒固定 deadline、符号与电压规则;来源:CORE-20。
- v2(2026-09-05):Energy Total 与负值哨兵规则,已被本页取代。
- v1(2026-09-05):六项 Energy、Battery 与 Thermal 初始候选口径,已被后续版本取代。