已合并
TopkV2算子代码优化 #6015
cy_hw创建于 9月28日
TopkV2算子代码优化 #6015
已合并
Pull Request已成功合入, 合并人@CANN-robot
(感谢 cy_hw 的贡献)atomgit-bot
9月28日 评论:
9月28日 评论:
变更摘要
本 PR 围绕 TopK 相关算子(top_k_v2、sort_with_index)的 host 侧 tiling 与 kernel 侧实现进行可读性与命名规范化整理。改动主要集中在 SortTileInfo 等结构体字段与常量的顺序/命名调整、tiling 计算函数中局部变量与形参的重命名,以及 kernel 侧 MergeSort、小轴插入/两阶段排序等模板类的参数与变量语义化命名。整体以代码清晰度优化为主,未改变对外接口语义。
主要改动
- tiling 数据结构与常量调整:
SortTileInfo(sort_with_index_tiling.h、top_k_v2_tiling_base.h)字段顺序与命名调整,新增/移动lastDimNeedCore、tmpUbSize等成员;新增UB_CONST_INT32、UB_CONST_INT64常量并重排TMP_UB、CONST_*等常量声明位置。 - 查找表与工具函数重命名:
tilingDataTypeKeyMap、tilingDataTypeBitMap、optDataTypeBitMap分别改名为tilingDtypeKeyLookup、tilingDtypeBitWidthLookup、optDtypeBitWidthLookup,CeilDiv1/CeilDivMul1形参改为dividend/divisor,并同步更新所有引用点。 - tiling 计算函数局部变量语义化:
ComputeTileData1、NeedAdjTileData1、TileMoreCoreModeOfIdx等函数中tileData、lastDimTileNum、coreNumNeed、sortLoopTimes等改为tileElemNum、axisTileCount、coresRequired、axisLoopCount等更明确命名,逻辑分支保持一致。 - host 声明重命名:
top_k_v2_tiling_base.h/.cpp中SelectSmallAxisRoute/SelectNonLastSmallAxisRoute改为PickTopkSmallAxisRoute/PickTopkNonLastSmallAxisRoute,CeilAlignUint32改为TopkCeilAlignUint32,并在top_k_v2_tiling_arch35.cpp调用处同步更新。 - kernel 侧模板类参数与变量重命名:
TopKMergeSortIntraCore::MergeOneGroup/MergeSingleBatch、TopKMergeSortMoreCore、TopKSmallAxisInsertion、TopKSmallAxisTwoStage等类的形参与局部变量(如numBlocks→pendingSegNum、batchId→batchIdx、validSegs→validSegCount、innerStart→innerTileStart)统一语义化命名,top_k_merge_sort.h的CopyValue2Gm中拷贝参数与 tensor 变量重命名。


不准确?
atomgit-bot
9月28日 评论:
9月28日 评论:
9月28日 添加了label:cann-cla/yes
CANN-robot
9月28日 评论:
9月28日 评论:
Thanks for your pull-request.
The full list of commands accepted by me can be found at here.
You can get sig-info at here.
You can self-configure the PR merge rules for this repository. For more details, please refer to Here.
For more, you also can visit HICANN.
PR Approval Progress
✅ Congratulations! All modules have met the lgtm and approve requirements.
Module Approval Details
| module | lgtm status | approve status |
|---|---|---|
| 9.2.0 | ✅ gcw_kUomxQ2l, 宋恺 (2/2) | ✅ gcw_kUomxQ2l (1/1) |
💡 Tip:
- Committer can comment
/approveor/lgtm- Commenting
/approveimplies both code review (lgtm) and intent to merge (approve)
CLA Signature Pass
caoyan_huawei, thanks for your pull request. All authors of the commits have signed the CLA. 👍


9月28日 将yue-ma,zhou-qilong,wangrui_,rxtfeng,loov1,zhangzijie,TianXL,jia0liang,zl_hw,songkai111,jiangtao_rts,gitcode-chenjiao,chenxingyu18,hanxiaolong,pingchuantang,llimwang,gubaocheng,andong_hw,xuejinghui,zhanw_coding,gcw_kUomxQ2l,Andy-lb,clinglai0517设为评审人
9月28日 将yue-ma,zhou-qilong,wangrui_,rxtfeng,loov1,zhangzijie,TianXL,jia0liang,zl_hw,songkai111,jiangtao_rts,gitcode-chenjiao,chenxingyu18,hanxiaolong,pingchuantang,llimwang,gubaocheng,andong_hw,xuejinghui,zhanw_coding,gcw_kUomxQ2l,Andy-lb,clinglai0517设为评审人
9月28日 将TianXL,jiangtao_rts,gitcode-chenjiao,hanxiaolong,gcw_kUomxQ2l,Andy-lb设为审查人
cy_hw
9月28日 评论:
9月28日 评论:
compile


9月28日 预合并成功(commit_id: 21e191f5d4ea2235737d77bf7396f83f3a1906bb)
CANN-robot
9月28日 评论:
9月28日 评论:
| 🚀 CI 流水线已启动 |
|---|
| 📋 执行详情: 点击查看流水线 |


9月28日 添加了label:ci-pipeline-running
此处折叠了5条事件消息 查看更多
9月28日 修改了pull request 的描述
songkai111
9月28日 评论:
9月28日 评论:
/lgtm


cpy_123456
9月28日 评论:
9月28日 评论:
lgtm


9月28日 修改了pull request 的描述
9月28日 解决了最后一个问题
liulun0308
9月28日 评论:
9月28日 评论:
/approve


9月28日 添加了label:lgtmapproved
9月28日 关闭了关联的issue
9月28日 合入了pull request
描述
本 PR 围绕 TopK 相关算子(top_k_v2、sort_with_index)的 host 侧 tiling 与 kernel 侧实现进行可读性与命名规范化整理。改动主要集中在 SortTileInfo 等结构体字段与常量的顺序/命名调整、tiling 计算函数中局部变量与形参的重命名,以及 kernel 侧 MergeSort、小轴插入/两阶段排序等模板类的参数与变量语义化命名。整体以代码清晰度优化为主,未改变对外接口语义。
关联的Issue
https://gitcode.com/cann/ops-math/issues/3341
测试
二级冒烟,ST测试通过
文档更新
类型标签