# High Performance Code Validation

> 验证模块、函数、算子或流水线的性能设计，量化计算量、访存与通信量、任务并行度及关键路径，识别可改写的串行流程、冗余计算和循环内同步等待，评估并复用多进程、多线程、SIMD/SIMT 及异步流水资源，以正确性检查和实测判断低延迟、高吞吐收益。用于高性能代码审核、并行化评估、性能优化和优化前后验收；允许为性能牺牲代码可读性，仍须保持约定语义和可验证性。

- Skill: `kirrito-k423/high-performance-code-validation` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add kirrito-k423/high-performance-code-validation`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kirrito-k423/high-performance-code-validation/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Kirrito-k423 (https://skillmd.com/u/kirrito-k423)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/kirrito-k423/high-performance-code-validation

---


# 高性能代码验证

围绕指定模块回答：**实际做了多少工作，哪些工作必须等待，哪些工作可以消除或并行，改动在目标硬件上是否更快。** 给出可定位的代码依据、可复核的推导和可重跑的验证结果。

## 性能取向

- 将用户指定的低延迟、尾延迟或吞吐量作为主要目标。允许降低抽象层次、融合逻辑、复制特化代码、手工展开、重排布局、使用底层指令或代码生成；不以“难读”单独否决有证据的收益。
- 区分**源码重复**与**运行时重复计算**。允许前者换取性能，主动消除后者；若少量重算能节省更多访存或同步，也允许以净收益保留。
- 保留外部语义、资源所有权和同步协议。牺牲可读性不等于允许数据竞争、越界、丢任务、偷减精度或漏算工作。用户另有近似精度契约时按其契约验收。
- 将不变量、布局公式和选择理由放在最少量注释、参考实现或验证报告中。性能实现可以难读，正确性依据必须可复核。

## 工作流程

### 1. 固定任务和验收口径

1. 读取目标仓库的 `AGENTS.md`、指定模块、直接调用者、相关测试及构建入口。按需要扩展调用链，避免无目标扫描。
2. 记录源码版本及未提交差异、模块入口、输入规模与分布、数据类型与布局、输出和副作用、目标硬件、运行时及编译参数。标记未知项，禁止编造设备能力。
3. 从现有上下文确定操作范围：审核请求默认分析并运行已有检查；优化或修复请求继续完成范围内实现与验证。未指定模块时请求目标路径，同时给出所需的最小输入清单。
4. 定义计时起终点、有效工作单位、冷启动或稳态、并发量、内存预算、精度与顺序要求。目标同时包含低延迟和高吞吐但未指定优先级时，分别给出结果及取舍，不擅自合并成一个分数。
5. 在测量前固定比较规则，包括用户给定的阈值和不能退化的指标。未给硬性阈值时报告收益幅度及波动，结论限定为测得的工作负载，不虚构达标线。

### 2. 建立工作量与依赖模型

阅读 [量化与并行改写方法](references/analysis-methods.md)，按阶段填写下表，使用真实规模代入一次；只有符号规模时保留公式。

| 阶段与源码位置 | 有效工作 / 实际执行工作 | 读写量 / 通信量 / 临时空间 | 前置依赖与关键路径 | 可运行任务数 / 当前执行资源 | 测得耗时与证据 |
|---|---|---|---|---|---|
| 填入具体阶段 | 写明操作类型、次数和单位 | 区分逻辑估算与实测流量 | 写明等待谁、等待什么 | 写明任务粒度和映射 | 未测时明确标记 |

- 分别统计算术、比较、索引、格式转换、分配、拷贝、同步和轮询；以 `次数 × 每次工作量` 给出公式，避免只写大 O。
- 区分单任务、单线程/核、单设备、全模块的口径，并计入循环次数、调用频率及不均衡分配。异步阶段不能直接用耗时之和解释墙钟时间。
- 构建依赖 DAG，区分真正的数据依赖、资源争用和实现额外引入的屏障。给出当前实现与候选算法各自的总工作量 `W`、最长依赖链 `D`、平均并行度 `W/D`；不要把改写后的潜在并行度当成现有代码的并行度。
- 同时检查访存、通信、启动开销及负载不均衡。区分算法上独立的任务、某时刻已就绪的任务和硬件上同时驻留的任务；线程数或核数本身不能证明并行度。

### 3. 逐项验证优化机会

围绕瓶颈产生少量具体候选，每项给出**位置 → 原因 → 改写 → 预期指标变化 → 正确性义务 → 验证方法**。允许用证据说明某种方案不适用。

1. **减少工作与数据移动。** 检查循环不变量、重复遍历、重复归约、重复地址计算、转换、拷贝、分配和初始化；评估结果复用、预计算、融合、分块与布局变换。说明缓存有效期、输入变化后的失效规则和额外空间。
2. **压缩热循环内操作，尤其是同步等待。** 按“每轮次数 × 循环轮数”列出计算、分配、提交、查询、锁、屏障及等待成本；能消除则消除，确为不变量则外提，能合并则批量执行。重点检查“提交一项就等待一项”、每轮全局同步和重复轮询，评估有界批量提交、按依赖等待、等待延后至首次消费或缓冲复用之前。按 [热循环与同步等待](references/analysis-methods.md#热循环与同步等待) 证明跨迭代依赖、可见性和进度；不能直接删等待或把异步变化的就绪标志外提。
3. **缩短串行依赖链。** 识别归约、前缀和、筛选压缩、分桶、合并、递推和整批等待；评估树形、扫描、分治、分层合并、分段处理及就绪驱动。说明代数条件、跨分块依赖和新增工作，不能只建议给原循环加线程。
4. **匹配执行资源。** 对 CPU 多进程、多线程、SIMD，GPU/NPU 的实际执行模型与 SIMT 能力分别判断适用性；写明任务到进程、线程、lane、block、核、设备的映射，不要求每个模块强行使用全部机制。
5. **复用资源并控制粒度。** 评估持久进程池/线程池、常驻工作线程、批量投递、复用缓冲区和编译结果；计入创建、序列化、IPC、唤醒、队列、合并及跨设备传输成本。避免每个小任务创建资源或嵌套线程池造成超额订阅。
6. **重叠阶段。** 评估计算与搬运重叠、双缓冲、异步提交及不同任务间的流水。写明生产者、消费者、发布与完成事件、缓冲区回收时机、背压；取消整批屏障时证明单项就绪足以安全消费。
7. **验证更激进的实现。** 在前述瓶颈仍成立时评估展开、特化、融合、底层指令和重排；把寄存器压力、指令体积、缓存影响、驻留数变化及尾部处理纳入比较。支持牺牲可读性，不用代码长度或复杂度代替性能证据。

对候选分别估计延迟和吞吐收益上限、主要新增成本及可信度。优先实施对主目标最有影响且能验证的候选；不要先规定固定的技术路线。

### 4. 执行正确性和性能验证

阅读 [验证协议](references/verification-protocol.md)。优先复用已有基准和参考实现，缺失时补充与改动机制直接相关的最小验证。

- 固定原始基线；先验证候选输出及协议正确，再比较性能。并行化收益需要与合理的优化串行实现比较，另保留相对原始基线的业务收益。
- 对输入规模、分布、并发数和任务粒度进行有界测量；单独记录冷启动、稳态、内核局部时间和端到端时间，计入与目标口径相关的启动、拷贝、排队、同步及结果合并。
- 用完成事件或适当同步覆盖真正执行时间；保持生产流程的并发语义。记录计时域与同步范围，不能把异步提交时间当完成时间。
- 保存命令、环境、原始样本、统计口径和正确性结果。做必要的消融，确认收益来自所声称的机制，避免同时改多项后随意归因。
- 没有目标设备时继续完成源码模型和可执行的主机检查；目标工具链及接口已知时提供设备验证入口，否则列出最少待补信息、可复用契约测试和验证方案，标记设备入口未完成。明确列出设备编译、正确性和性能待验证项，不编造命令，不用主机模拟或理论推导替代 GPU/NPU、真实多 rank 验证。
- 在约定范围和预算内迭代。收益落在噪声内、发生退化或关键证据缺失时，保留准确结论和下一项最小实验；不要通过挑选最好一次、丢掉必要工作或不断改验收条件制造通过。

### 5. 交付可复核结论

用 [报告模板](assets/report-template.md) 组织结果，可压缩不适用段落。文件写入用户指定位置或目标项目适当的非发布报告目录，不写回 Skill 源目录。小型审核可以直接在回复中交付。

必须覆盖：

1. **主要结论。** 当前瓶颈、最值得做的改动、已完成范围和证据边界。
2. **量化模型。** 分阶段计算量、数据移动、工作量与依赖链、并行任务及硬件映射。
3. **候选决策。** 冗余消除、串行算法改写和资源复用方案的采纳或不采纳理由，附源码位置。
4. **实测对比。** 同口径基线与候选、正确性结果、延迟与吞吐、资源代价、适用规模和必要回退路径。
5. **重现入口。** 代码版本、构建/运行命令、原始数据、未完成检查。

逐项标记结论为 **目标已验证、部分验证、仅分析、未达标或收益不明确**。仅在约定语义和性能指标均有对应目标环境证据时使用“目标已验证”；微基准通过不自动代表端到端通过。

