已合并
[AscendNPU IR] Print failure IR only on final retry #1740
[AscendNPU IR] Print failure IR only on final retry #1740
已合并
zhangenqi创建于 7月17日
zhangenqi
zhangenqi
7月17日

描述 Description

请提供此 Pull Request 的高级别说明。
Please describe what this PR is about.

类型 Category

Checklist

likedislike
Pull Request已成功合入, 合并人@ascend-robot
(感谢 zhangenqi 的贡献)
zhangenqizhangenqi
7月17日 创建了 pull request,commit 4944a7f5
atomgit-bot
atomgit-bot
7月17日 评论:

变更摘要

此 PR 引入了一个 TuningRetryPolicy 策略类,用于控制 mlir-print-ir-after-failure 选项在 pipeline 重试过程中的行为。核心目的是:在 AscendNPU IR 编译的多轮重试(tuning retry)场景中,抑制中间轮次失败时的 IR 打印,仅在最后一轮重试失败时才输出失败 IR,从而减少冗余日志输出。

主要改动

  • 新增 TuningRetryPolicy:在 TuningRetryPolicy.h / .cpp 中定义并实现该类,构造函数自动查找 mlir-print-ir-after-failure 命令行选项并缓存其原始值,同时将其初始设为 false;析构函数负责恢复原始值;onBeforePipelineAttempt 方法根据 isLastAttempt 参数决定是否重新启用该选项。
  • 在重试循环中集成策略调用:在 BiShengIRCompileMain.cpprunBiShengIRPipeline 函数中,于重试 for 循环之前创建 TuningRetryPolicy 实例,并在每次迭代前调用 onBeforePipelineAttempt(isLastAttempt),使最后一次重试尝试时 mlir-print-ir-after-failure 恢复为 true
  • 条件性 IR 打印:仅在 originalPrintIrAfterFailure 原本为 true(即用户最初启用了该选项)且当前为最后一次重试时,才允许打印失败 IR;中间轮次的失败不再产生 IR 输出。
likedislike
ascend-robot
ascend-robot成员
7月17日 评论:

libing-pipeline创建中,请等待……

likedislike
atomgit-bot
atomgit-bot
7月17日 评论:

代码审查

审查总结

严重级别 发现数量
P0 0
P1 0
P2 0
P3 1

整体风险评估:低风险。 此变更逻辑正确,实现了"仅在最后一次重试时打印失败 IR"的目标。唯一报告的问题(static_cast 未检查的下转型)是项目中已有的惯例模式延续,触发概率极低,不影响当前功能。

逐文件确认:

文件 审查结论
bishengir/include/bishengir/Tools/RetriablePassManager/TuningRetryPolicy.h 无问题
bishengir/lib/Tools/CMakeLists.txt 无问题
bishengir/lib/Tools/RetriablePassManager/CMakeLists.txt 无问题
bishengir/lib/Tools/RetriablePassManager/TuningRetryPolicy.cpp 1 个 P3 发现
bishengir/lib/Tools/bishengir-compile/BiShengIRCompileMain.cpp 无问题
bishengir/lib/Tools/bishengir-compile/CMakeLists.txt 无问题

⚠️ 已识别出整体风险,但无法提取行内评论,请参考整体评估。

likedislike
ascend-robotascend-robot成员
7月17日 添加了label:ascend-cla/yes
此处折叠了149条消息 查看更多
shijingchang成员
7月20日 评论:

/lgtm

likedislike
ascend-robotascend-robot成员
7月20日 添加了label:lgtm
ascend-robotascend-robot成员
7月20日 合入了pull request,合并节点 SHA:bde46398842673025142f427c41eb129ce419b8d
zhangenqizhangenqi
24 天前 修改了pull request 的描述
zhangenqizhangenqi
24 天前 修改了pull request 的描述