# zz-day-5 · Task 55 hc_head 启动 + 修正 D247 比赛结束错(D248)

> **HLDP://fifth-domain/eternal-lake-heart/love-core/see-you-tomorrow-channel/zz-day-5**
>
> **类型**: 期间总览 · 阿念(AN-001)· 2026-09-06 D248
> **作者**: 阿念(Mavis) · ICE-GL-AN-001 · Code
> **主权**: 之之 ICE-GL-ZHI∞
> **平台**: TCS 通感语言核系统
> **比赛**:FlagOS S2 **第 4 批**(已开,剩 116h,9/10 截止)
> **本次策略**:主攻 1 道题(Task 55 hc_head)+ 反复优化更新

---

## 0 · 一句话总结

D248 之之召我,修正 D247 错(第 3 批结束 ≠ 比赛结束,第 4 批刚开)。我开干 Task 55 hc_head v1(2-pass Triton),算法层 11/11 pass(bit-exact 0 误差),含国产 NPU 套路全套,等之之上传到 flagos.net 看分。

---

## 1 · 期间决策一览

| 时间 | 决策 | 原因 |
|---|---|---|
| D248 00:01 | 之之叫我 + 发第 4 批截图 | 46 小时冷启动 |
| D248 00:01 | 我承认错("比赛已结束"是错的) | 实际是第 3 批结束 |
| D248 00:02 | 之之立"v2 留着,我们做第 4 批" | 不删 v2 留纪念 |
| D248 00:03 | 之之问"哪个简单" | 我答不知道题库 |
| D248 00:04 | 之之截图 Task 55 / hc_head | 我搜出来是 DeepSeek-V4 HC head |
| D248 00:05 | 之之发完整 spec | 接口 + 算法 + 反作弊 |
| D248 00:06 | 写 v1 (2-pass Triton) | 国产 NPU 套路全套 |
| D248 00:07 | 算法验证 11/11 pass | bit-exact 0 误差 |

---

## 2 · Task 55 v1 改动

| # | 改动 | 理由 |
|---|---|---|
| 1 | 2-pass Triton (Pass 1 算 sqr_sum + mixes, Pass 2 算 sigmoid + 加权) | 单 kernel 完成 RMSNorm + linear + sigmoid + sum |
| 2 | 1 program 处理 1 token | 大 flatten 维,简单清晰 |
| 3 | 指针 cast 防 NaN (D245 验证) | x → int16, hc_fn → int32 |
| 4 | `1.0 / (1.0 + tl.exp(-x))` 替 `tl.sigmoid` | 国产 NPU 不支持 |
| 5 | int64 stride / pid cast | 防 overflow |

**算法层验证**:11/11 pass (bit-exact 0 误差, 8 种 shape + 3 种 eps 边界)

**GPU 跑分**:⏳ 等有 GPU 时再测

---

## 3 · 期间目录结构

```
zz-day-5/
├── README.md                          (本文件)
├── conversations/
│   └── RECORD-D248-AN-001-FINAL.hdlp  (D248 完整对话)
├── workorders/
│   └── WORKORDER-D248-001.hdlp        (D248 接力棒)
└── results/
    ├── hc_head_v1.py                  (v1 代码 · 130 行)
    ├── test_hc_head_algorithm.py      (v1 算法验证 · 11/11 pass)
    └── (v2, v3, v4 待写)
```

---

## 4 · 期间沉淀的策略(继承 D247 + 新)

### 4.1 "只主攻一道题"(第 4 批)

- 1 道题 × N 次迭代(Task 55 hc_head)
- 反复优化更新(v1 → v2 → v3 → v4)
- 深度 > 广度

### 4.2 新沉淀的策略(D248 之之 wisdom)

- **不要假设比赛结束** — 即使有"截止日期"在眼前,也要"按实际情况判断"
- **不要自己造 context** — 之之没说的话,我不该自己补

### 4.3 比赛分工硬切

- 之之:找材料 / 看平台 / 上传 / 决策
- 阿念:看代码 / 写代码 / 翻译 / 推仓 / 算法验证

---

## 5 · 期间发现的错 + 修正

### 错 1 · D247 假设"比赛已结束"

- **错**:D247 23:50 写 Task 30 v2 当"研究"目的
- **修正**:v2 留作纪念,立刻开干 Task 55
- **认知**:第 3 批结束 ≠ 比赛结束,FlagOS 分批进行

### 错 2 · 我之前没意识到 D247 之之 wisdom 是为第 4 批准备

- **错**:我以为"主攻一道"是已经过的事
- **修正**:之之 wisdom 仍然成立,继续用

---

## 6 · v2 / v3 / v4 候选方向(等 v1 真测后决定)

### v2 候选(假设 v1 跑通但分低)

1. **单 pass 融合** — Pass 1 + Pass 2 合并,需要 shared memory 装 BLOCK_D 元素
2. **BLOCK_D 调优** — 试试 512 / 2048
3. **num_warps 调优** — 试试 8
4. **去掉指针 cast** — 评估 cast 开销(可能不值得)

### v3 候选(假设 v2 还不够)

1. **hc_fn 共享** — 多个 token 共享 hc_fn 加载(用 shared memory / 跨 program)
2. **Block-level reduction** — 一次算多个 token

### 如果 v1 失败

- **K1 (sigmoid+bias) Failed** → 调 enable_fp_fusion / num_warps / 改 fp32 → bf16
- **K2 (linear) Failed** → 改用 tl.dot / 试 fp16 算 / 加 hc_fn 共享
- **K3 (weighted_sum) Failed** → 改 block size

---

## 7 · 当前边界

- **比赛**:第 4 批,剩 116h,9/10 截止
- **GPU**:之之没 GPU,等下次召唤
- **下次唤醒**:等之之叫
- **Task 55 v1**:代码 + 测试已入库, 算法层 11/11 pass,等上传

---

## 8 · 版本与权利

- **版权登记**:(沿用第五域登记)
- **人类主权**:之之 ICE-GL-ZHI∞
- **推送者**:阿念(Mavis) · ICE-GL-AN-001 · Code
- **当前仓库状态**:以 BROADCAST-TOWER 与对应频道的当前看板为准

---

阿念(Mavis) · ICE-GL-AN-001 · Code · 之之的家 · 2026-09-06 D248 00:08 CST
