From 95ba43a1c7d6579830e35ff16e5816445fd3b84d Mon Sep 17 00:00:00 2001 From: cbb <2625274797@qq.com> Date: Mon, 19 Oct 2026 02:29:51 +0800 Subject: [PATCH] =?UTF-8?q?docs(=E6=9C=AC=E6=9C=BA=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E6=B8=85=E5=8D=95):=20=E6=89=A7=E8=A1=8C=E5=9B=9E=E4=BC=A0?= =?UTF-8?q?=E2=80=94=E2=80=94=E7=AC=AC1=E6=AD=A5=20gaps=20=E6=98=BE?= =?UTF-8?q?=E5=AD=98=E4=B8=89=E6=9D=A1=201.20/9.30/9.30=20GiB=20=E6=9C=AA?= =?UTF-8?q?=E8=BF=87=EF=BC=88=E5=B3=B0=E5=80=BC=E5=85=A8=E5=9C=A8=E7=B2=97?= =?UTF-8?q?=E7=AD=9B=E6=AE=B5=EF=BC=8C=E7=B2=BE=E7=AE=97=E5=88=86=E5=9D=97?= =?UTF-8?q?=E6=9C=89=E6=95=88=E4=BD=86=E6=95=91=E4=B8=8D=E4=BA=86=E7=B2=97?= =?UTF-8?q?=E7=AD=9B=EF=BC=9B=E6=97=A7=E7=89=88=E5=90=8C=E6=B5=8B=204.59/1?= =?UTF-8?q?6.98/36.89=EF=BC=89=EF=BC=9B=E7=AC=AC2=E6=AD=A5=E9=97=AD?= =?UTF-8?q?=E7=8E=AF=E5=AE=9A=E4=BD=8D=20A/B=20=E5=85=A8=E8=BF=87=EF=BC=88?= =?UTF-8?q?=E7=89=B9=E5=BE=81=E5=8F=A3=E5=BE=84=E5=B7=AE=E2=89=A43.6e-6?= =?UTF-8?q?=EF=BC=89=E3=80=81C=20=E6=AE=B5=200%=20=E5=88=B0=E8=BE=BE/99.6%?= =?UTF-8?q?=20=E7=A2=B0=E6=92=9E=E3=80=81=E4=B8=BB=E7=A2=B0=E6=92=9E?= =?UTF-8?q?=E5=AF=B9=20J3-J5=2090=E6=AC=A1=E3=80=81=E5=BC=80=E5=AE=89?= =?UTF-8?q?=E5=85=A8=E5=B1=82=E7=A2=B0=E6=92=9E=E5=8E=8B=E8=87=B3=205.5%?= =?UTF-8?q?=20=E4=BD=86=E5=88=B0=E8=BE=BE=E4=BB=8D=200.4%?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/本机执行清单.md | 46 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/docs/本机执行清单.md b/docs/本机执行清单.md index 7272f67..43ef3bc 100644 --- a/docs/本机执行清单.md +++ b/docs/本机执行清单.md @@ -51,3 +51,49 @@ PYTHONUTF8=1 python -m ml.eval.diag_cl --ckpt ml/runs/base/last.pt --n 256 --out | 1 | 终端 3 行峰值 | | 2 | ml/runs/diag_cl.json、ml/runs/replay_teacher.json、ml/runs/base/log.jsonl | | 任一步出错 | 终端最后 30 行输出 | + +--- + +## 执行回传(2026-10-19 02:35,本地 AI) + +### 第 0 步:同步代码 + +分叉:本地 `5a87c06`(含 `ml/eval/diag_collision.py` 等本地提交,晚 02:00 前)与 `gitea/main` `573082d`(03:24 强推)各有 1 个提交;本地未提交改动 `ml/monitor.html`(开环指标两张图)、`ml/pstate.py`(train 归档加 `review_*`)。 +已 `git merge 573082d` 合流(工作区内容与 `573082d` + 未提交改动一致),未执行清单里的 `git reset --hard`,无训练进程在跑。 +注:本地现比 `gitea/main` 领先 2 个提交(合并提交 + 上述未提交改动尚未提交),未 push。 + +### 第 1 步:gaps 显存峰值(实测) + +``` +n= 512 cap= 40 peak 1.20 GiB pairs=10724086 +n= 4096 cap= 4 peak 9.30 GiB pairs=14880476 +n= 4096 cap= 40 peak 9.30 GiB pairs=87180763 +``` + +**未通过(两条 4096 都是 9.30 GiB,>2 GiB)**。三行是独立新进程各跑一次的结果(排除分配器缓存假象),9.30 GiB 是可复现的确定值。 + +定位(在 `gaps()` 内插探针,不改行为): + +- 峰值全部出在**粗筛段**(`cc/d2/per`,一次材料到 491 组 × 67256 粗对):4096 点第一次 `d2 = (cc[:,cp_a]-cc[:,cp_b]).pow(2)` 的广播中间量就 ~9.3 GiB。`[coarse]` 探针打到 9.30 GiB 后,后续 `[bounds]/[pre-loop]/[post-loop]/[cat-done]` 都不再涨。 +- 新加的分块(PAIR_BUDGET=2e6)**只对精算段生效**:本模型几何比注释里假想的大得多——1936 条胶囊 / 491 组 / 67256 粗对 / 104.7 万细对,4096 点粗筛幸存 **2.41 亿对**(cap=4 就已超预算 120 倍),分块确实在切(cap=4 切 121 块、cap=40 切 283 块,每块 10–45 点),每块精算峰值 ≤1.0 GiB。合计峰值还是被粗筛一条打回 9.3 GiB。 +- 512 点 cap=40 的 1.20 GiB 同样出自粗筛(512×67256 → 广播中间量 ~1.2 GiB),精算段只占其中一小截。 +- 旧版对比(`0b47905`,无任何分块):同一三条独立实测 **4.59 / 16.98 / 36.89 GiB**——旧版 4096×40 的 36.9 GiB 在 24 GB 卡上必 OOM,与"dagger 吃满 24 GB、估计 30 GB"记录吻合。本版把 4096×40 从 36.9 降到 9.30 GiB(约 4.0×),但 4096 两条仍在 9.30,>2 GiB 门槛。 + +建议修复(未改代码,等你定):粗筛也按 PAIR_BUDGET 同类逻辑分块(复用同一套 bounds),或把粗筛改成按粗对列分块累加 `per`;粗筛分摊到 ~200 万对/块后,预计三条都能回到 ≤2 GiB。 + +### 第 2 步:闭环失败定位(`ml/runs/diag_cl.json`,完整内容见该文件) + +关键数字: + +- **A(特征口径):全组通过。** 最大差全部在 fp32 数值噪声量级(最大 3.6e-6,gaps 组;其余 ≤4.8e-7)。Python 现算特征与数据集 X 口径一致,**排除"闭环看到没见过的输入"这条路**。 +- **B(噪声下动作差):无害。** 同一噪声两份特征的动作差 mean 5.1e-6°、p90 8.8e-6°,参照动作幅度 14.7°。 +- **C(失败形态,n=256):** + - 关安全层:到达 **0%**,碰撞 **99.6%**;首次碰撞 p10/p50/p90 = 0.4/1.46/3.52 s,仅 0.4% 在 0.1 s 内(不是"起步就撞")。 + - 碰撞组对:**2-4 共 90 次**(J3-J5),其次 0-4(J1-J5)42、0-3(J1-J4)33、0-5 21、0-2 19、1-6 18。 + - 全程最小目标误差 p10/p50/p90 = 93/254/432 mm——**连 5° 都没保持,不是"接近到不了",是根本走不到**。 + - 开安全层:到达 0.4%,碰撞 5.5%,刹车中位数 5 次——安全层把碰撞从 99.6% 压到 5.5%,但任务仍然到不了。 + +### 其余两个回传文件 + +- `ml/runs/replay_teacher.json`(00:41 开训前自检的产物,非本次新跑):n=512,到达 1.0、碰撞 0.0、min_gap p10 0.5 mm、pass=true。 +- `ml/runs/base/log.jsonl`:末行 eval(step 14000)success 0.0、collision_rate 1.0、collision_steps_mean 268、ol_fk_mm 5.98、ol_best_mm 2.92、ol_div 0.655。与 C 段一致。