已合并
【PR】: [fix] 修复Dump txt相关问题 #1907
【PR】: [fix] 修复Dump txt相关问题 #1907
已合并
xchu42创建于 9 天前
xchu42
xchu42成员
9 天前

Pull Request

描述

请清晰准确地描述本次 Pull Request 的意图和变更内容。

  1. Queue的que_num在存在复用且que_num不一样时不准确,改为使用max
  2. 存在多个输出的节点时,buffer信息不准确

变更类型

请选择本次引入的变更类型:

关联的Issue

如何测试

描述测试此变更的步骤和前提条件:
NA

核对清单

其他信息

在此添加任何其他关于本次 PR 的说明。

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 xchu42 的贡献)
xchu42xchu42成员
9 天前 添加了label:enhancement
xchu42xchu42成员
9 天前 创建了 pull request,commit 650f10e6
atomgit-bot
atomgit-bot
9 天前 评论:

变更摘要

本 PR 修复了 Dump 相关的两个问题:一是 Queue 在复用场景下多个 tensor 携带的 buf_num 不一致导致信息不准确,改为取最大值以与 codegen LocalTQueAlloc 的 que 级聚合语义保持一致;二是原先仅收集节点 outputs()[0] 的信息,导致多输出节点的 queue/buffer 信息缺失,现改为遍历全部输出逐一收集,并为多输出节点增加 [i] 后缀以便在 dump 文本中区分各输出。

主要改动

  • 多输出节点遍历收集: CollectQueueInfoCollectBufferInfo 由仅处理 outputs()[0] 改为遍历节点全部输出,逐个收集 kAllocTypeQueue/kAllocTypeBuffer 类型的输出信息,修复多输出节点(如 split)下 buffer 信息缺失的问题。
  • 复用场景下 buf_num 取最大值: CollectQueueInfo 在 queue 已存在(复用场景)时使用 std::max 更新 queues[que_id].buf_num,确保复用且 buf_num 不一致时信息准确。
  • 新增 tensor_suffix 字段并接入输出: 在 QueueNodeInfo/BufferNodeInfo 结构体中新增 tensor_suffix 字段(多输出为 "[i]",单输出为空串),并在 DumpQueues/DumpBuffers 输出节点名时追加该后缀(如 split.y[0])。
  • 新增多输出布局 dump 单测: 在 code_dumper_unittest.cc 中新增 test_memory_layout_view_multi_output 用例,覆盖 queue 与 buffer 两种收集路径,验证多输出节点的每个输出的 que/buf 信息均被收集且命名为 y[i]
likedislike
不准确?
atomgit-bot
atomgit-bot
9 天前 评论:

代码审查

✅ 未发现问题

likedislike
不准确?
CANN-robotCANN-robot成员
9 天前 添加了label:cann-cla/yes
此处折叠了46条消息 查看更多
CANN-robotCANN-robot成员
8 天前 添加了label:lgtm
xchu42xchu42成员
8 天前 修改了pull request 的描述
yangyongqiang
yangyongqiang成员
8 天前 评论:

/approve

likedislike
CANN-robotCANN-robot成员
8 天前 添加了label:approved
CANN-robotCANN-robot成员
8 天前 合入了pull request