Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.
长尾算子开发,NPUGetFloatStatus算子新增950 SIMT实现
vector
NPUGetFloatStatus 与 NPUAllocFloatStatus 配套,用于混合精度训练(AMP)loss scaling 场景读取 NPU 浮点溢出状态。torch_npu 等三方框架迁移 Ascend 950 时依赖该控制流算子补齐算子清单,缺失会导致 AMP 溢出检测图构建失败。本仓交付 950 实现(暂不支持溢出探测的空实现),保证图编译与执行链路可用,语义与 canndev 对齐(无溢出时 addr 不被修改、data 恒为全零);其余产品(Atlas 训练/推理系列、200I/500 A2)由 canndev 既有实现覆盖。
addr
data
op_host/arch35/npu_get_float_status_tiling.cpp 中 NPUGetFloatStatusTilingFunc:
Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.
Backgroud(背景信息)
长尾算子开发,NPUGetFloatStatus算子新增950 SIMT实现
Origin(信息来源)
vector
Benefit / Necessity (价值/作用)
NPUGetFloatStatus 与 NPUAllocFloatStatus 配套,用于混合精度训练(AMP)loss scaling 场景读取 NPU 浮点溢出状态。torch_npu 等三方框架迁移 Ascend 950 时依赖该控制流算子补齐算子清单,缺失会导致 AMP 溢出检测图构建失败。本仓交付 950 实现(暂不支持溢出探测的空实现),保证图编译与执行链路可用,语义与 canndev 对齐(无溢出时
addr不被修改、data恒为全零);其余产品(Atlas 训练/推理系列、200I/500 A2)由 canndev 既有实现覆盖。Design(设计方案)
算子定义与 Shape 推导
Host 端 Tiling 实现
op_host/arch35/npu_get_float_status_tiling.cpp 中 NPUGetFloatStatusTilingFunc:
SIMT 设备端 Kernel
Tiling 数据结构与编译配置
关键设计决策与精度
Golden 参考实现与单元测试