已关闭
[Bug-Report|缺陷反馈]: Mlaprolog超大函数拆分 #5062
wangss21创建于  13 天前关闭于  11 天前
wangss21成员
13 天前 创建

Thanks for sending an issue! Please fill in the following template to help quickly solve your problem.

Describe the current behavior / 问题描述 (Mandatory / 必填)

mla_prolog 算子 kernel 侧三个架构文件(arch22、arch35/split_m、arch35/split_n)及 Tiling 侧文件中,多个核心函数体量过大(100-200 行),单函数承担多重职责,存在以下问题:

  1. 可读性差:单函数包含初始化、计算、同步、搬运等多种逻辑,阅读时需在大量代码中追踪数据流
  2. 维护困难:修改某一子逻辑需在超大函数中定位,容易误改相邻代码
  3. 跨架构不一致:arch22 和 arch35 的同名函数结构差异大,难以对比同步
  4. Tiling 侧校验逻辑臃肿:InferShape 和 ConvertContext 中维度校验与属性解析混在同一函数

Environment / 环境信息 (Mandatory / 必填)

Ascned950,Ascend910b

Steps to reproduce the issue / 重现步骤 (Mandatory / 必填)

对Mlaprolog进行codecheck检测

Describe the expected behavior / 预期结果 (Mandatory / 必填)

mlaprolog超大函数完成函数拆分,原函数缩减为调度框架,单函数行数不超过 50 行

Mlaprolog存在超大函数

Special notes for this issue/备注 (Optional / 选填)

likedislike
Wwangss21成员
13 天前 添加了label:bug-report
游震成员
13 天前 评论:

/assign @wangss21

likedislike
CANN-robotCANN-robot成员
13 天前 将 wangss21 设为负责人
CANN-robotCANN-robot成员
11 天前 关闭了 issue
CANN-robotCANN-robot成员
11 天前 添加了label:resolved
Sshasha_an成员
10 天前 删除了关联的pull request:Mlaprolog cleancode