Closed
[Requirement|需求建议]: A6 MQSMLA代码整改 #7013
chenzeyu28Add on  8 days agoClosed at  7 days ago
chenzeyu28Collaborators
8 days ago Create

Backgroud(背景信息)

A6 MQSMLA逻辑未复用,代码不简洁

Benefit / Necessity (价值/作用)

Design(设计方案)

likedislike
Cchenzeyu28Collaborators
8 days ago Added label: requirement
周云飞
周云飞Collaborators
8 days ago Comments:

/assign @chenzeyu28

likedislike
CANN-robotCANN-robotCollaborators
8 days ago Assign chenzeyu28 as responsible person
周云飞
周云飞Collaborators
8 days ago Comments:

感谢提出 A6 MQSMLA 代码复用方面的建议。减少重复逻辑有助于降低维护成本,但需要先区分可以共享的通用逻辑与必须保留的平台差异。

目前实现并非完全没有复用:Host 侧的参数检查头文件已通过类型别名复用 SMLA 的参数信息、布局和轴定义,见公共类型定义。arch35 内核也引用了 SMLA 的公共常量定义,并使用宏集中定义部分模板参数。不过,这些片段还不足以判断您所指的 A6 重复逻辑及其可合并范围,也不能据此认定当前实现存在功能错误。

一个可行的优化方向是:针对行为一致的参数处理或辅助计算提取公共函数;涉及量化模式、布局及平台相关执行分支的部分,则保留明确的差异入口,避免为了减少代码行数引入更复杂的模板分支。调整时需要兼顾可读性、编译成本,以及原有计算结果和性能是否保持不变。

方便补充一处您认为重复的函数或代码片段,以及希望与哪部分实现复用吗?这有助于明确建议针对 Host 侧还是内核侧,并进一步评估适合局部提取公共函数,还是需要调整更大范围的代码结构。

likedislike
Cchenzeyu28Collaborators
8 days ago Change title to "[Requirement|需求建议]: A6 MQSMLA代码整改", originally titled "[Requirement|需求建议]: ".
CANN-robotCANN-robotCollaborators
7 days ago Close issue
CANN-robotCANN-robotCollaborators
7 days ago Added label: resolved