Skip to content

Commit 8788c67

Browse files
committed
docs: 综合报告首节改为 HEAD 上复测的数字(gcc 2.29x / clang 1.80x / 叠加 4.47x)
1 parent eef8a4c commit 8788c67

1 file changed

Lines changed: 18 additions & 10 deletions

File tree

.agents/docs/2026-08-13-build-optimization-status.md

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,35 @@
77

88
## 0. 一句话结论
99

10-
**目标达成,而且是通用的 —— 在两个独立工程上都成立:**
10+
**目标达成。** 同一份 pinned 源码(@8219584)、同一台机器、`eef8a4c` 上复测:
11+
12+
| | schedule=off | schedule=on | 比值 |
13+
|---|---|---|---|
14+
| **gcc 16.1.0** | 80.58s | **35.13s** | **2.29×** |
15+
| **llvm 22.1.8** | 32.40s | **18.04s** | **1.80×** |
16+
17+
**L1 与 L2 叠加**:gcc/off 80.58s → clang/on **18.04s = 4.47×**,远在 50s 线内。
18+
两者正交 —— L1 换编译器(压常数),L2 改图的形状,所以相乘而不是相加。
19+
20+
拆分调度下 noop **重建 0 个产物**(`.o`/`.gcm`/`.pcm` 一个都没动)。
21+
22+
### 而且是通用的,不是把 mcpp 这一个工程调快
1123

1224
| 工程 | 规模 | schedule=off | schedule=on | 比值 |
1325
|---|---|---|---|---|
1426
| **mcpp** | 138 模块 / 57k 行 | 79.9s | **34.80s** | **2.30×** |
1527
| **xlings** | 110 模块 / 46k 行 | 112.92s | **33.41s** | **3.38×** |
1628

17-
xlings 是**独立作者、独立代码库**的对照(openxlings/xlings @ b1563fe)
18-
两个工程都 noop 无重建(mcpp 0.21s;xlings 的 10.77s 全部是依赖解析开销,
19-
`.ninja_log` 增量 **0 条边**)。
29+
xlings 是**独立作者、独立代码库**的对照(openxlings/xlings @ b1563fe),
30+
效果比开发它的那个工程**更大**两个工程都 noop 无重建
31+
(mcpp 0.21s;xlings 的 10.77s 全部是依赖解析开销,`.ninja_log` 增量 **0 条边**)。
2032

2133
⚠️ xlings 那一栏有一处不对称:off 那次编译了 `mcpplibs.xpkg`(5 个单元),
2234
on 那次命中了缓存。5 个单元相对 80s 的差值可以忽略,但记在这里而不是抹掉。
2335

24-
另有 **L1(按次选工具链)**:`--toolchain llvm@22.1.8` 让 mcpp 81.83s → **32.61s(2.51×)**
25-
与 L2 可叠加(一个改形状、一个压常数),尚未合测。
26-
2736
⚠️ **修正一次错误归因。** 本文先前写「schedule 基础层导致段错误,已整批回退」。
28-
重新施加后逐条复现:**基础层 rc=0**(冷构建 82.27s、e2e 全过、policy 单测 8/8)。
29-
那两次崩溃用的二进制**都包含当时未提交的图拆分发射** —— 崩的是那部分。
30-
基础层已恢复,`auto` 改为 off、`on` 才启用拆分形状。
37+
重新施加后逐条复现:**基础层 rc=0**。那两次崩溃用的二进制**都包含当时未提交的图拆分
38+
发射** —— 崩的是那部分。基础层已恢复,`auto` 为 off、`on` 才启用拆分形状。
3139

3240
---
3341

0 commit comments

Comments
 (0)