Pull Request已成功合入, 合并人@ascend-robot
(感谢 xmz 的贡献)变更摘要
本 PR 合并原 !155 与 !156 两处改动:一是修正 TileLang-Ascend 构建文档中不支持的 -v 参数,使文档命令可直接执行;二是为默认安装(未启用 CATLASS 编译)下必然失败的 CATLASS 单元测试增加跳过保护,并在快速入门文档中补充可选组件说明。核心代码改动集中在 tests/unit_tests/catlass/test_chunk_loss.py:将 pytestmark 由单个 skipif 改为列表,新增对 torch.ops.mindspeed_ops.catlass_chunk_loss 存在性的检查,未编译 CATLASS 算子时用例自动跳过。
主要改动
- CATLASS 用例跳过保护:
tests/unit_tests/catlass/test_chunk_loss.py中pytestmark改为两个pytest.mark.skipif组成的列表,新增条件not hasattr(torch.ops.mindspeed_ops, "catlass_chunk_loss"),未启用 CATLASS 编译时自动跳过,skip reason 提示以MINDSPEED_BUILD_CATLASS=1重新安装;原有torch_npu缺失判断保持不变。 - 文档构建命令修正:
README.md与docs/zh/install_guide.md中「从源码构建并安装 TileLang-Ascend wheel」一节的命令由./build_wheel_ascend.sh --enable-llvm -v修正为./build_wheel_ascend.sh --enable-llvm,消除参数解析阶段Unknown option: -v立即失败的问题。 - 快速入门文档补充说明:
docs/zh/quick_start_ops.md「运行单元测试」章节新增 CATLASS / TileLang 可选组件与用例跳过行为的说明,与新增的跳过机制保持一致。


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.
PR Approval Progress
✅ Congratulations! All modules have met the lgtm and approve requirements.
Module Approval Details
| module | lgtm status | approve status |
|---|---|---|
| docs | ✅ 王晓歆, zhizaidicengshehua (2/2) | ✅ 王晓歆 (1/1) |
| repo-Ascend/MindSpeed-Ops | ✅ 王晓歆, zhizaidicengshehua (2/2) | ✅ 王晓歆 (1/1) |
💡 Tip:
- Committer can comment
/approveor/lgtm- Commenting
/approveimplies both code review (lgtm) and intent to merge (approve)
CLA Signature Pass
EliasKaslan, thanks for your pull request. All authors of the commits have signed the CLA. 👍


ascend docs pipeline is running...


ascend docs pipeline is running...


| 阶段 | 任务名 | 状态 | 详情 |
|---|---|---|---|
| 恶意代码检查 | Antipoison | ✅ COMPLETED | >>> |
| 编码安全与规范检查 | Only_doc_commit | ✅ COMPLETED | >>> |
| pre-commit | ✅ COMPLETED | >>> | |
| 开源片段检查 | SCA | ✅ COMPLETED | >>> |
| 开发者测试 | UT_MindSpeed_1 | ✅ COMPLETED | >>> |
| UT_MindSpeed_2 | ✅ COMPLETED | >>> | |
| UT_MindSpeed_3 | ✅ COMPLETED | >>> | |
| UT_MindSpeed_4 | ✅ COMPLETED | >>> | |
| 流水线 | PR-pipeline_MindSpeed-Ops | ✅ COMPLETED | >>> |
- compile : 运行流水线
- retry : 重试流水线所有失败子任务
- retry <任务名> : 仅重试指定失败子任务
- stop : 停止流水线


/approve


What this PR does / why we need it?
改动 1:修复 TileLang-Ascend 构建命令中不支持的 -v 参数(关联 #68)
README.md与docs/zh/install_guide.md中「从源码构建并安装 TileLang-Ascend wheel」一节的构建命令为:但 tilelang-ascend 仓库的
build_wheel_ascend.sh脚本仅支持--enable-llvm一个可选参数(见 tile-ai/tilelang-ascend build_wheel_ascend.sh),传入-v会在参数解析阶段立即失败(Unknown option: -v,退出码 1),后续pip install -U dist/tilelang-*.whl无从执行,用户按文档操作无法完成 TileLang-Ascend 安装。该脚本自引入(tile-ai/tilelang-ascend#612)以来从未支持过-v,tilelang-ascend 官方 README 用法也仅为./build_wheel_ascend.sh [--enable-llvm]。本 PR 将两处命令修正为
./build_wheel_ascend.sh --enable-llvm,与上游官方文档一致,命令可直接执行。(!155 原本附带的 README 第 23 行失效锚点修复
[版本配套表](#版本配套表),已由 master 最新提交 fda1a3e 更完整地修复为[版本说明](#版本说明),故本 PR 不再重复改动。)改动 2:修复默认安装下运行单元测试时 CATLASS 用例失败的问题(关联 #69)
快速入门文档指引通过
pytest tests/unit_tests运行单元测试验证算子功能,但 CATLASS 算子默认不参与编译(需安装时设置MINDSPEED_BUILD_CATLASS=1,见 README「可选:编译并运行 CATLASS 算子」章节)。默认安装下tests/unit_tests/catlass/test_chunk_loss.py的用例报错失败:修改内容:
pytest.importorskip("tilelang")的处理方式一致):未启用 CATLASS 编译时自动跳过,并在 skip reason 中给出启用方法;quick_start.md更名为quick_start_ops.md,本 PR 已将说明相应落到新文件。Does this PR introduce any user-facing change?
./build_wheel_ascend.sh --enable-llvm -v修正为./build_wheel_ascend.sh --enable-llvm,涉及README.md、docs/zh/install_guide.md。修正前用户按文档操作会立即得到Unknown option: -v报错;修正后命令可正常执行。docs/zh/quick_start_ops.md「运行单元测试」章节新增两条可选组件说明。MINDSPEED_BUILD_CATLASS=1重新安装)。How was this patch tested?
两项改动的详细实测与原 !155 / !156 完全一致(改动内容未变,仅重新基于 master 合入):
1. TileLang-Ascend 构建命令(昇腾环境实测:Ascend 910B / CANN 9.0.0 / Python 3.11 / Debian 11 x86_64):
dist/tilelang-0.1.4+linux.cann900-cp311-cp311-linux_x86_64.whl,安装后python -c "import tilelang; print(tilelang.__version__)"输出0.1.4+89a9364e47a341fffdd65ed94786b1d4f9b6a78c,导入验证通过。2. CATLASS 用例跳过保护(Ascend 910B、CANN 9.0.0、Python 3.11、PyTorch 2.9.0、torch_npu 2.9.0):
pip install -e .)后运行pytest tests/unit_tests/catlassAttributeError)/ 2 passed(纯输入校验用例)MINDSPEED_BUILD_CATLASS=1)MINDSPEED_BUILD_CATLASS=1安装后运行pytest tests/unit_tests/catlassMINDSPEED_BUILD_CATLASS=1场景包含rm -rf build后全量干净重装的复验,两次均 29 passed;pytest tests/unit_tests(默认安装、修复前,Ascend 910B 实测):27 failed / 912 passed / 108 skipped,失败全部集中在 catlass 算子缺失(AttributeError),其余模块(aclnn / triton)用例均通过或按设计跳过。