已关闭
[Bug-Report|缺陷反馈]: agent的repo-skill需要维护 #340
Riki创建于  8月6日关闭于  8月6日
Riki
Riki成员
8月6日 创建

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

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

cuda2ascend 插件在 ops-blas 仓的 agent skills 配置存在以下缺陷,导致 agent 生成的算子代码质量不佳:

  1. 编程模型选择偏向 SIMT:遇到复杂计算时 agent 倾向选择 SIMT 实现(如 __simt_vf__ + asc_vf_call),而非优先评估 SIMD 方案。例如 syrkx 明明可使用 SIMD 的 AscendC API 替代 SIMT 逐元素操作,agent 未分析出来。

  2. 架构选择未按 SOC 默认反选:在 CP0 已明确 ascend950 的情况下,agent 仍试图生成 arch22 架构算子的目录和代码。例如 sgemv 在 ascen950 目标下产生了 arch22 的代码。

  3. 临时文件被带入 PR:性能迭代工作流中产生的 {op}_perf.cpp{op}_perf.csvrun_perf.py 等文件,提 PR 时会被一并带上。波及 herk 等算子。

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

  • 项目:cuda2ascend 插件
  • 仓库:ops-blas-riki
  • 涉及文件:agent/skills/repo-op-templates/SKILL.md、agent/skills/repo-test-develop/SKILL.md、agent/skills/repo-build-guide/SKILL.md

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

  1. 使用 agent 开发 syrkx/sgemv/herk 等算子
  2. 观察 agent 选择的编程模型(倾向 SIMT)
  3. 以 ascend950 为目标开发 sgemv,观察生成的 arch 目录
  4. 完成性能迭代后提 PR,观察是否带入了 *_perf.* 文件

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

  1. 优先评估 SIMD 方案可行性,仅在确实无法使用 SIMD 表达时才退化为 SIMT
  2. 根据 SOC 参数默认反选正确的 arch 目录(ascend950 → arch35 等)
  3. PR 中不包含性能迭代临时文件

用户反馈记录

在CP0已经明确是ascend950的情况下,默认情况依然试图生成arch22架构算子
agent倾向于使用simt这种简单的实现方式;明明使用SIMD可以通过ascend api的相关接口替代simt的逐元素操作,但agent没有分析出来
新的工作流会生成几个性能相关文件,提pr时会带上这些文件(是性能迭代中产生的{op}_perf.cpp/{op}_perf.csv/run_perf.py)
likedislike
RikiRiki成员
8月6日 添加了label:bug-report
RikiRiki成员
8月6日 修改了issue 的描述
RikiRiki成员
8月6日 将 Twoliges 设为负责人
RikiRiki成员
8月6日 修改标题为 “[Bug-Report|缺陷反馈]: agent的repo-skill需要维护”,原标题为“[Bug-Report|缺陷反馈]: ”
RikiRiki成员
8月6日 关联了pull request:fix(skills): 修复agent代码生成质量缺陷 - SIMD优先/临时文件清理/架构反选
CANN-robotCANN-robot成员
8月6日 关闭了 issue
CANN-robotCANN-robot成员
8月6日 添加了label:resolved