用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/tile-ai/tilelang-mlir-ascend --skill tilelang-op-optimize命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | tilelang-op-optimize |
| description | 对精度通过的算子实现进行性能调优,产出 {op}.py 与调优日志。触发:性能调优、optimize、性能优化、perf tuning。 |
对 Stage 3 精度通过的 {op}.py 进行性能调优,每轮只改一个优化点,改完单独验证,产出优化后的 perf_opt/{op}.py 与调优日志,直到满足中止条件。
环境前提:本 skill 运行在已具备 NPU 设备的环境中,性能 profiling 在 NPU 上真实执行。调优分析(瓶颈识别、优化策略)与性能测量均为真实结果。
{op}.py 与 DESIGN.md 性能目标章节。注意,只能使用 msprof op 命令采集 kernel 本身的耗时, 命令参考下面所示:
msprof op --kernel-name=kernel_name --output=output --launch-count=10 --warm-up=5 python script.py
每轮迭代执行:
| 策略 | 适用场景 | 预期收益 |
|---|---|---|
| 调整 block size | 访存/计算不均衡 | 10-30% |
| 增加 T.Pipelined 流水深度 | 有多次循环迭代 | 10-20% |
| double-buffer / 多缓冲 | 搬运与计算可重叠 | 10-15% |
| v-prefix API 替换 npuir_xxx | Vector 类 | 5-15% |
| 减少中间 buffer | UB 压力 | 5-10% |
| data reuse / 寄存器化 | 重复访存 | 5-15% |
perf_opt/{op}}_v{iter}.py(基于上一版修改)。perf_opt/opt_log.md:迭代号、策略、latency、相对基线提升、精度状态。满足任一即结束:
perf_opt/{op}.py。TUNING_COMPLETED。examples/{project}/{op}/perf_opt/
├── {op}.py # 最终最优版本
├── {op}_opt_v1.py # 各迭代版本
├── {op}_opt_v2.py
├── opt_log.md # 调优日志
└── baseline.py -> ../{op}.py # 基线(软链或拷贝)
# {op} 性能调优日志
## 基线
- latency: {base} us
- 来源: {op}.py
## 迭代记录
| iter | 策略 | latency(us) | 提升 | 精度 |
|------|------|-------------|------|------|
| 1 | {策略} | {v} | {x}% | pass |
| 2 | {策略} | {v} | {x}% | pass |
## 结论
- 最优版本: {op}.py (iter {N})
- 最终 latency: {v} us
- 总提升: {x}%
- 中止原因: {达目标 / 迭代上限 / 连续无提升}
## Stage Result
- stage: 4
- project: {project}
- operator: {op}
- output: examples/{project}/{op}/perf_opt/{op}.py
- verdict: TUNING_COMPLETED
- iterations: {N}
- baseline_latency: {v} us
- final_latency: {v} us
- improvement: {x}%
- stop_reason: {达目标 / 迭代上限 / 连续无提升}
- skills_consulted: <引用的 skill 路径>
- summary: <一句话>
- issues: <若无则 none>