已关闭
CP设计缺陷分析 #79
lishanni创建于  4月11日关闭于  8月17日
lishanni
lishanni
4月11日 创建

CP 当前设计缺陷分析

  • 路径模型缺陷:parallelize_module 无 root-style 表达能力("" 失效)。
  • 接口耦合缺陷:CP 强依赖 q/k/v 入参位置,不支持 forward(x) 主流实现。
  • hook 侵入性高:大量 pre/post hook + DTensor/local 来回转换,组合 TP/FSDP 时行为不透明。
  • 语义可观测性差:缺少“当前张量布局合同”可视化与运行时校验,问题往往到 kernel 报错才暴露。
  • 异步状态脆弱点(Async CP):slot 机制在多 micro-batch/重入场景容易出现时序脆弱(需要更强状态机约束)。

建议

  1. 可用性

    • 修 parallelize_module root path:支持 "" / "." 显式作用当前模块。
    • 为 CP 增加 module_mode:
      module_mode="qkv"(现有)
      module_mode="hidden"(新增,支持 forward(x))
    • 新增 UT + NPU ST:覆盖两种 mode。
  2. 统一语义

    • 定义并文档化梯度缩放约定(TP/FSDP/CP 叠加下 sum/mean 行为)。
    • 在框架实现层统一处理缩放,不在测试层“末端除法”。
  3. 可维护性

    • 引入 CPAdapter 协议(提取/回填 QKV)。
    • 给 CP/AsyncCP 增加 layout 断言与 debug 日志(进入 attention 前打印 placements/shape)。
    • 把 group 选择与 gather/scatter 封装成统一工具函数,避免每个测试重复写。
likedislike
lishannilishanni
4月11日 问题后端类型 由 [] 改变为 [Ascend]
lishannilishanni
4月11日 关联组件 由 [] 改变为 [B-SIG-Parallel]
lishannilishanni
4月11日 关联分支 由 [] 改变为 [master]
yide12yide12成员
8月17日 issue状态由 TODO 改变为 ACCEPTED
yide12yide12成员
8月17日 issue状态由 ACCEPTED 改变为 WIP
yide12yide12成员
8月17日 issue状态由 WIP 改变为 DONE
yide12yide12成员
8月17日 关闭了 issue