operator_task_package/ref/01_methodology/optimization_decision_tree.md

939 B
Raw Permalink Blame History

优化决策树

时间是否主要在目标 kernel
├─ 否:检查 JIT、launch、同步、workspace、额外 kernel/memcpy
└─ 是:检查资源和 profiler
   ├─ private memory 非零:缩小 fragment、减少展开和线程临时数组
   ├─ shared 限制驻留:复用生命周期、缩小 tile、减少 stage
   ├─ AP busy 低:网格不足、负载不均、长尾或 host bubble
   ├─ AP busy 高 + MMA 低
   │  ├─ WSM/shared stall 高布局、bank conflict、barrier、reduction
   │  ├─ MTE/内存高向量加载、合并访问、预取、cache reuse
   │  └─ STE/标量高地址、mask、softmax、控制流
   ├─ cache miss/global bytes 高重复读取、所有权、tile 复用
   └─ MMA 高但仍慢tile 数、计算工作量、指令吞吐上界

每条分支都先提出能被生成代码或 profiler 否证的假设,再修改代码。