Skip to content

G132 全指标目标不变,CPU首项锁定 ​

Owner要求与本批决定 · 2026-10-07 ​

Owner明确“全指标交付、一个指标一个指标完成,不完成当前指标不进入下一个指标交付”。同AI承担方案、实现、测试和自复核,不称第三方验收,不使用子代理。当前main基线c4022b0、工作区干净;完整54项、原误差/五轮/120槽240点/500ms/连续有效100%保持。上一聊天关于调整目标仅是建议,不修改冻结v3,不回改旧证据或把已有诊断升级验收。

首项锁定目标App CPU ios.process.cpu.non_normalized。暂停G131提出的virtual优先路线;CPU未完整验收并交付前,不开展内存或其他metricID的新交付。 原内存预检仍保存,暂停不等于删除或验收通过。相关共享回归可用于确认CPU修复未破坏其他指标,但不算推进其他指标交付。

每项阶段目标与完成标准 ​

  1. 指标定义:真实Registry metricID、scope、单位、系统源、计算公式、质量与适用条件先入档;候选定义不得升级为物理准确。
  2. 修复闭环:只修已证产品缺陷,匹配回归与同规模前后资源/耗时验证,不以改预期、填零、复制旧数或插值凑通过。
  3. 独立对照:当前安装版本、同目标进程寿命、原生时轴与测量窗口,独立参考语义和误差按冻结v3。参考不足即保持未验收。
  4. 固定五轮:先声明场景/窗口/刺激,再执行五轮。实时项原500ms、每轮120个1秒槽/240必需发布点,数值逐点过原误差;连续性及有效性100%。完整准备/过渡/尾/失败另外保留,不挑好轮,不用旧版本诊断充正式轮。会话统计和枚举按原对应定义验收,不伪造每500ms独立事件。
  5. 实际交付:UI/Raw/导出可追溯、当前签名测试包校验并同址覆盖,逐项报告明确已验和未验条件。Owner内部测试包公证等待豁免仍有效,但最终整体交付的公证及开源合规门不撤销。
  6. 转项:本项证据复核、测试包交付完成后显式解锁下一项;实现完成、工具测试通过、单次诊断、缺参考、远端成功均不代替指标完成。阻碍仍留在本项,说明原因/影响/待满足条件,不跳到更容易项。

54项交付次序见 internal/acceptance/metric-stage-targets.json。前七项依次:目标App CPU、物理内存占用、驻留内存、虚拟内存、线程数、目标App网络发送、目标App网络接收。每个metricID单独阶段,不把同族通过数混同一个阶段。后续依次整机内存/CPU、调度、磁盘、整机网络、显示/会话统计、GPU、能耗与电池热指标;完整顺序由机读清单固定,不省略困难项。

CPU当前缺口与本批唯一取证动作 ​

G130实际五组CPU参考完整成本1.25795%–1.34210%,超原1%;其原500Hz双API流有1000/998/998/998/998实点和0/2/2/2/2 missed,原件保持,不再重跑相同采样工具。成本未达只证此参考路线未准入,不证明产品CPU错误或CPU指标不可实现。准确性/GUI/五轮仍未完成。

本批串行只读已封存G130五份native二进制、对应成本报告、源码与清单:独立验证字节和原160B解析/实际API顺序,计算getrusage、TASK_ABSOLUTETIME及handler的墙钟读时长、全进程CPU与累计CPU端点差。不把墙钟耗时当CPU、不把两者相减归为线程/唤醒/背景成本,不减去背景来过原门。实点和缺点均保留。

这是停止盲目重复后的一次成本结构核实,用于明确下一次需要改变的机制或缺少的测量,非新成本attempt/非参考准确性验收。所有0个新phone/Session/正式轮从本批实际动作登记,不用旧证据声称当前手机已退出。产品、SDK、Fixture原字节保持,无新包或安装动作。

资源与交付边界 ​

小文件输入合计≤4MiB、单文件≤1MiB、文本行≤64KiB,处理O(n)、串行1、分析≤30s/RSS64MiB、纯流式摘要一次缓存复用,CPU秒实测,物理I/O峰值unknown。磁盘至少10GiB及预计增量两倍,不清理未知用途数据。站点只构建,≤300s/3GiB;本次没有产品变更不打包、不发布网站、不新建环境。

实施后追加实际数字与下一具体CPU动作,更新串行计划、完整状态账本和handoff;新不可变HTML归档、时间线与门表联动。窄范围提交、双远端各一次,GitLab失败不重试不阻断产品,交付通知按两类新规范。产品accepted0/54、CPU正式0/5不因规则落盘变化。

实施前补充 · 串行调度检查 ​

增加内部纯函数 metric_stage_gate.py:校验54项集合、冻结合同摘要、顺序号、scope/unit/type/tolerance、当前项和所有前序的显式验收/交付声明;只允许当前metricID进入交付执行。任何缺项、重复、缩清单、非当前请求或前序未交付即拒绝调度,不自动推进。此函数只是调度守卫,不证明声明的真实性、不替代证据审核;改变当前序号必须完成本项证据复核再显式落盘。匹配负控≤5s/64MiB,O(54),不运行产品或手机。

Implementation / Validation Update · 2026-10-07 ​

已完成54项一一对应的阶段顺序:与冻结Registry集合完全相同,scope/unit/valueKind/tolerance逐项保持;currentSequence=1/currentMetricID=ios.process.cpu.non_normalized,不自动跳项。新增内部调度守卫10个方法,实际拒绝其余53项请求、CPU未验前转第二项、缩清单/重复/改误差/错scope/假已交付等负控;工具全回归298/298,7.728950960s/directCPU6.557539s/directRSS49762304B/observedtree59142144B。调度守卫只是声明一致性检查,不等于审查真实证据,更不新增已验收项。

本批只读独立旧封存G130五份真实ARM binary与cost分析报告,输入摘要/bytes与原delivery seal逐项一致,原FineCPUReference完整读者核五组、双API错误0、footer/实际1000/998/998/998/998点与0/2/2/2/2missed均保留;不重跑CPU成本矩阵、不重新打开手机、不把旧run变为新验证。逐点读取真实rusage与TASK_ABSOLUTETIME括号,得到下表。

组全进程CPU ms(原完整成本)handler累计墙钟 msgetrusage累计读墙钟 msTASK累计读墙钟 mshandler内其余墙钟 ms
126.84215.3075004.34916710.1969170.761417
225.39414.7555004.2655839.7251250.764792
325.15914.5783754.1586259.5723330.847417
425.25014.1814174.0212089.4155420.744667
525.25314.3453334.0474179.5341250.763792

边界:handler累计墙钟不是CPU;全进程CPU减handler墙钟不构成唤醒/其他线程/背景归因。API合计读墙钟占handler的大部分,非API部分只有0.744667–0.847417ms,缺少直接worker CPU/冷启动与收尾归属时,不继续把buffer/QoS改动当成已证修复方向。first→last累计CPU另列,但不包含setup/closeout,不能代替原完整资源门。原五组1.25795%–1.34210%全FAIL维持。

分析0.189234582s/CPU0.181055s/RSS18968576B/唯一输入846978B/串行1,4MiB/30s/64MiB门内,I/O物理峰unknown。产品265pins、SDK6pins、冻结v3与原源码字节保持。本批没有产品/Fixture修改、phone/Session/正式轮/新成本attempt/新包/安装/环境/网站发布;不以本批0phone推断当前手机退出状态。当前CPU完整验收未通过、formal0/5、54accepted0/54;所有最终公证/合规/外部参考门保留。

下一唯一动作 · 仍是CPU,不转内存 ​

先资格核实实际SDK公开CLOCK_THREAD_CPUTIME_ID的语义/可用性与读取开销,仅用于observer线程成本诊断,不作新的过程CPU独立真值。若可用,以独占另名一次带前后worker CPU记录的诊断分辨采样线程与全进程成本边界;不在500Hz循环加额外查询,不放宽1%/64MiB、不减双API500Hz、不扣背景。新动作必须先单独落盘有界合同与匹配控制,未证明SDK声明/host结果就是目标设备runtime;不重跑旧QoS/组件/buffer矩阵。事实不足时停在CPU,明确缺口,不跳项。

完整54项交付顺序(每个ID独立阶段) ​

顺序指标metricID当前阶段状态
01目标App CPUios.process.cpu.non_normalized当前锁定:未验收
02物理内存占用ios.process.memory.physical_footprint等待前序交付,不进入
03驻留内存ios.process.memory.real等待前序交付,不进入
04虚拟内存ios.process.memory.virtual等待前序交付,不进入
05线程数ios.process.thread.count等待前序交付,不进入
06目标App网络发送ios.process.network.send_rate等待前序交付,不进入
07目标App网络接收ios.process.network.receive_rate等待前序交付,不进入
08整机空闲内存ios.device.memory.free等待前序交付,不进入
09整机可用内存候选ios.device.memory.available等待前序交付,不进入
10整机CPU总量ios.device.cpu.total等待前序交付,不进入
11整机CPU归一化ios.device.cpu.total.normalized等待前序交付,不进入
12逐核CPUios.device.cpu.core_usage等待前序交付,不进入
13上下文切换率ios.process.scheduler.context_switch_rate等待前序交付,不进入
14中断唤醒率ios.process.scheduler.interrupt_wakeup_rate等待前序交付,不进入
15磁盘读取速率ios.process.disk.read_rate等待前序交付,不进入
16磁盘写入速率ios.process.disk.write_rate等待前序交付,不进入
17整机网络发送ios.device.network.send_rate等待前序交付,不进入
18整机网络接收ios.device.network.receive_rate等待前序交付,不进入
19屏幕刷新率ios.display.refresh_rate等待前序交付,不进入
20前台FPSios.foreground.fps等待前序交付,不进入
21单帧耗时ios.frame.time等待前序交付,不进入
22帧耗时P95ios.frame.time.p95等待前序交付,不进入
23帧节奏抖动ios.frame.pacing_jitter等待前序交付,不进入
24平均FPSios.frame.fps.average等待前序交付,不进入
25FPS至少18占比ios.frame.fps.at_least_18_percent等待前序交付,不进入
26FPS至少25占比ios.frame.fps.at_least_25_percent等待前序交付,不进入
27帧耗时至少100ms占比ios.frame.ftime_ge_100_percent等待前序交付,不进入
28帧耗时正向突增率ios.frame.ftime_positive_delta_gt_100_per_hour等待前序交付,不进入
29FPS下降率ios.frame.drop_per_hour等待前序交付,不进入
30FPS中位范围占比ios.frame.med_range_percent等待前序交付,不进入
311%低帧率ios.frame.one_percent_low_fps等待前序交付,不进入
32小卡顿率ios.frame.small_jank_per_10min等待前序交付,不进入
33卡顿率ios.frame.jank_per_10min等待前序交付,不进入
34大卡顿率ios.frame.big_jank_per_10min等待前序交付,不进入
35卡顿时间占比ios.frame.stutter_percent等待前序交付,不进入
36微卡顿率ios.frame.tiny_jank_per_10min等待前序交付,不进入
37流畅度ios.frame.smooth等待前序交付,不进入
38GPU渲染利用率ios.foreground.gpu.renderer_utilization等待前序交付,不进入
39GPU平铺利用率ios.foreground.gpu.tiler_utilization等待前序交付,不进入
40GPU整体利用率ios.foreground.gpu.device_utilization等待前序交付,不进入
41GPU原生计数器ios.device.gpu.counter.source_native等待前序交付,不进入
42总能耗评分ios.process.energy.total_cost等待前序交付,不进入
43CPU能耗评分ios.process.energy.cpu_cost等待前序交付,不进入
44GPU能耗评分ios.process.energy.gpu_cost等待前序交付,不进入
45网络能耗评分ios.process.energy.network_cost等待前序交付,不进入
46定位能耗评分ios.process.energy.location_cost等待前序交付,不进入
47显示能耗评分ios.process.energy.display_cost等待前序交付,不进入
48能耗服务开销评分ios.process.energy.overhead等待前序交付,不进入
49整机热状态ios.device.thermal.status等待前序交付,不进入
50电池电压ios.device.battery.voltage等待前序交付,不进入
51电池放电电流ios.device.battery.current等待前序交付,不进入
52电池放电功率ios.device.battery.power等待前序交付,不进入
53电池原始温度ios.device.battery.temperature_raw等待前序交付,不进入
54电池摄氏温度ios.device.battery.temperature_celsius等待前序交付,不进入

Perfowl · Performance Observer