Skip to content

perf: 分离 #54 完整子进程与执行器 CPU 计量 - #106

Closed
JavaZeroo wants to merge 2 commits into
perf/grapheme-hosted-r54from
perf/grapheme-cpu-r54
Closed

JavaZeroo wants to merge 2 commits into
perf/grapheme-hosted-r54from
perf/grapheme-cpu-r54

Conversation

@JavaZeroo

@JavaZeroo JavaZeroo commented Oct 27, 2026 •

Copy link
Copy Markdown
Owner

#54 首次 hosted 成本批次只记录内部CPU,无法分开子进程启动/准备/校验与执行器工作。本PR增加独立的完整子进程CPU、runner CPU和全机计数诊断,并保留一次预声明的六位置实际结果;原v1、112位置顺序、5%护栏和旧失败保持。

基于 Draft #105(目标分支 perf/grapheme-hosted-r54),本PR保持Draft。Windows CPython3.12、1–64逻辑CPU下使用退出前保留的进程句柄读取GetProcessTimes,90秒期限/清理5秒,原始流及失败保留、首错停止。非支持环境只跳过3个专属native测试,不缩小项目既有Python支持。

固定六位置与全部证据:复用原审计的.3/.4 EXE,在明确共享Windows11宿主上执行一次 .3,.4,.4,.3,.3,.4 interactive/chunk1/observe0/原2秒区间;6次输出正确、退出0,来源前后复核通过。区间外CPU 0.078125–0.109375s,runner 0–0.015625s,扣除后的余额34.578%–50.974%。它未做空闲资格筛选,不报告成本比,不反推旧hosted原因,没有成本验收样本。

归档100053B、46份清单证据和16份原字节流;长/短/转义路径改为别名,子PID移除,原件保留local。原始/公开哈希分列;独立复核全机/进程/runner余额、原始JSON与完整oracle通过。实际执行源码ff0d7ca的6个执行文件哈希与发布版一致;初次发布树 2cde1081ac524f1e89e9c44ecf40d7c40cd403f6 与初次审查树逐字节一致;CI修订发布树 0c177e8d6094c31ad3151a5055ef91e08bd841fb 与修订审查树一致。

验证:measurement本地最终36/36(17.069s),归档离线复核通过;Standards最终0项剩余发现(修正native测试适用条件),Spec最终0项发现。首次 c76bab0 的默认PR/push均通过;两条候选Windows CI因缺少psutil而失败,原日志保留,Linux为41通过/4跳过。修正工作流安装现有固定依赖;干净Python环境重现缺包后,新测试4/4、完整measurement36/36(19.266s)通过。执行源码与原六次观察未变,CI修订经Standards/Spec复核均0项发现;修订 beeb64496b2e2898e8619fa5e9c39f490a3891c4 的四条普通CI全部 success、attempt 1:默认PR、默认push均为 Windows46/46、Linux29/29;候选PR、候选push的measurement均为 Windows45/45、Linux41通过/4个明确平台跳过。PR实际检出 371eb22de6a8327242687a1a71acbd09416b5ed5,树与最终审查树相同。普通回归与原成本失败分列,不据CI声明性能通过。

Refs #54、#34。下一步另行预声明独立hosted边界诊断;完整受控A/B、allocator/projection和组件归因、预算提案及用户确认仍未完成。

Independent six-observation diagnostic; preserve the original v1 cost failure.
Reviewed local tree: 10542c04a569605b416c074a3780f409da84f887.
Measured local source: ff0d7caca138b91683f16ce8d748eea6fbb289b7.
Published tree is byte-identical to the final Standards/Spec reviewed tree.
Preserve the first missing-psutil CI failures. Clean Python reproduces the error; fixed requirements give 4/4 native/accounting and 36/36 measurement tests.
Reviewed local commit: 769c84eba37a4ab49ac0abf7d6402596123c4db1.
Measurement code and retained six observations are unchanged.
@JavaZeroo

Copy link
Copy Markdown
Owner Author

由 #262 取代关闭:#104–#107 是同一目标(#54 冻结字素成本批次与 hosted/CPU 诊断)的四层堆叠,根分支落后 main 398 个提交,栈顶对 main 有 2 处文档语义冲突,无法机械重基。

#262 已从 main 起新分支重放这 10 个提交,并把文档增量合并为一次提交;CI 全绿(10/10)。

本 PR 的讨论与提交仍保留在分支上,需要时可直接查阅。

@JavaZeroo JavaZeroo closed this Oct 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant