Pull Request已成功合入, 合并人@CANN-robot
(感谢 dovahkiiin 的贡献)变更摘要
此 PR 将第三方依赖 catlass 从 v1.4.0 升级至 v1.5.0,主要涉及构建脚本中的版本号更新、为 mki 的 compile_ascendc.py 自动注入 CATLASS_ARCH 宏以确保 tile-copy 按平台正确选择,以及在 BlockMmad 驻留 A 实现中新增上游要求的 tile-shape 静态编译期检查。
主要改动
catlass版本升级:在scripts/build.sh和scripts/release.sh中将catlass的拉取分支由v1.4.0更新为v1.5.0。- 自动注入
CATLASS_ARCH:在build.sh和release.sh中新增fn_patch_compile_ascendc_for_catlass函数,在构建流程中检查3rdparty/mki/scripts/compile_ascendc.py是否已包含CATLASS_ARCH定义,若缺失则根据目标 SoC(A2/A3 对应2201,Ascend950 对应3510)自动注入编译选项,保证 catlass >= 1.2 的 tile-copy 实现按平台正确选择。 - Tile-Shape 静态检查:在
block_mmad_preload_async_with_callback_resident_a.h中新增两条static_assert:约束L0TileShape::K <= L1TileShape::K,以及通过TileShapeAlignChecker校验 tile shape 需满足 32B(256b)对齐,与上游 catlass v1.5.0 新增的静态检查对齐。


代码审查
审查总结
| 文件 | 审查结果 |
|---|---|
scripts/build.sh |
1 个 P3 问题(Python needle 唯一性校验) |
scripts/release.sh |
1 个 P3 问题(同上,相同根因) |
src/kernels/mixkernels/utils/common/kernel/catlass/gemm/block/block_mmad_preload_async_with_callback_resident_a.h |
无问题 |
统计: P0: 0, P1: 0, P2: 0, P3: 2
整体风险评估: 低风险。catlass 版本升级(v1.4.0 → v1.5.0)本身是一个直接依赖更新;C++ 头文件中新增的两个 static_assert 是正确的编译期约束对齐;Shell 补丁函数的 Python 内联脚本存在一个轻微的健壮性缺陷(needle 未校验唯一性),但由于匹配模式非常特定(精确缩进 + 特定变量名),实际触发概率极低,仅建议改进。构建流程中补丁的调用顺序(mki 构建 → catlass 克隆 → 补丁注入 → 主项目编译)逻辑正确。
⚠️ 已识别出整体风险,但无法提取行内评论,请参考整体评估。


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
PR Approval Progress
✅ Congratulations! All modules have met the lgtm and approve requirements.
Module Approval Details
| module | lgtm status | approve status |
|---|---|---|
| repo-cann/ascend-transformer-boost | ✅ 尹祺然, goodpeople233 (2/2) | ✅ 尹祺然 (1/1) |
| src | ✅ 尹祺然, goodpeople233 (2/2) | ✅ 尹祺然 (1/1) |
💡 Tip:
- Committer can comment
/approveor/lgtm- Commenting
/approveimplies both code review (lgtm) and intent to merge (approve)
CLA Signature Pass
dovahkiiin, thanks for your pull request. All authors of the commits have signed the CLA. 👍


/check-pr


Pull Request 已合并或已关闭。
If you want to solve this problem, you can click here to do it in the FAQs.


描述
3rdparty/catlass拉取版本从v1.4.0升级到v1.5.0(scripts/build.sh/scripts/release.sh)BlockMmadResidentA 对齐上游新增的 tile-shape 静态检查Test plan
bash scripts/build.sh default全量编译通过MmDeqSwigluQuantMmDeqOperation精度用例 3/3 通过(m=32/256/576)GmmDeqSwigluQuantGmmDeqOperation精度用例 3/3 通过LinearOperationFP32(MoeGateCorr路径)m=1..256 通过checklist