| Files | Last commit | Last update |
|---|---|---|
Kirin X90/9030支持Cast/Mul/Transpose/Add/ConcatD/StridedSlice算子 Co-authored-by: chenlong1<chenlong1@huawei.com> Co-authored-by: jinzy1999<jinzy@pku.edu.cn> # message auto-generated for no-merge-commit merge: !6581 merge master into master Kirin X90/9030支持Cast/Mul/Transpose/Add/ConcatD/StridedSlice算子 Created-by: chenlong1 Commit-by: chenlong1;jinzy1999 Merged-by: cann-robot Description: ## 描述 Kirin X90/9030支持Cast/Mul/Transpose/Add/ConcatD/StridedSlice算子 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3790 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6581 | 17 days ago | |
docs: 修复注释与代码不一致(concat compact 阈值与 transpose 分核说明) Co-authored-by: tangpingchuan<tangpingchuan@huawei.com> # message auto-generated for no-merge-commit merge: !6493 merge docs/comment-cleanup-20261019-20 into master docs: 修复注释与代码不一致(concat compact 阈值与 transpose 分核说明) Created-by: pingchuantang Commit-by: tangpingchuan Merged-by: cann-robot Description: ## 描述 - conversion/concat/op_host/arch35/concat_tiling_arch35.cpp:compact 阈值注释 UINT32_MAX -> INT32_MAX,与 COMPACT_THRESHOLD 一致。 - conversion/transpose/op_host/arch35/transpose_tiling_arch35.cpp:SMALL_SHAPE 分核注释改为与实现一致的单核条件与 CeilDiv 开核逻辑。 ## 关联的Issue - https://gitcode.com/cann/ops-math/issues/3802 ## 测试 - pre-commit(含 OAT):通过 - Markdown 链接/图片检查:无新增失效项 - Markdown 代码围栏检查:通过 - 全部 26 个分支合并验证:无冲突 ## 文档更新 - conversion/concat/op_host/arch35/concat_tiling_arch35.cpp - conversion/transpose/op_host/arch35/transpose_tiling_arch35.cpp ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6493 | 24 days ago | |
feat: transpose 支持 ascend960dt/ascend960pr 平台及 4bit(HIF4/FP4)类型 Co-authored-by: zhanw_coding<zhanwang@huawei.com> # message auto-generated for no-merge-commit merge: !6332 merge ft-960dt-tp into master feat: transpose 支持 ascend960dt/ascend960pr 平台及 4bit(HIF4/FP4)类型 Created-by: zhanw_coding Commit-by: zhanw_coding Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> Transpose(permute)算子接入新平台 ascend960dt、ascend960pr,并在此架构(arch92)下新增 4bit (HIF4/FP4)数据类型支持;同时适配新架构下的 NDDMA 搬运接口并开启双 buffer。 改动原因: - 现有 Transpose 未支持 ascend960dt / ascend960pr,且 x 的 dtype 列表不含 4bit 类型。 改动方法: 1. 平台接入 - CMakeLists.txt:COMPUTE_UNIT 增加 ascend960dt、ascend960pr,TILING_DIR 指向 arch35。 - transpose_def.cpp:新增 buildConfig() 统一构造 OpAICoreConfig,AddConfig("ascend960dt"/"ascend960pr")。 - 新增 op_host/config/{ascend960dt,ascend960pr}/{transpose_binary.json,transpose_simplified_key.ini}; scripts/kernel/binary_config/ascendc_config.json 登记 Transpose 的 compute_units 与编译选项。 2. 数据类型扩展(arch92) - x/y 新增 DT_FLOAT4_E2M1、DT_FLOAT4_E1M2 及 DT_HIFLOAT4(42)、DT_HIFLOAT4_SCALE(43);perm 支持 INT32/INT64。op_api(aclnn_permute / transpose)按 NpuArch::DAV_9201/DAV_9202 分支使用 arch92 dtype 列表。 3. host 侧 tiling - 新增 4bit 双切分 tiling(transpose_tiling_b4_dual_cut_arch35.{h,cpp}),新增 SplitMode::B4_DOUBLE_SPLIT=10009,触发条件为 4bit 且尾轴转置。 - transpose_tiling_arch35 新增 CheckB4Tiling/TryB4Tiling/AdjustShapeForB4/CheckB4ShapeInfo:4bit 非尾轴转置按 int8 view 处理;校验 4bit 输入/输出尾轴为偶数;NDDMA 缓冲数在 DAV_9201/9202 下取双缓冲(BIG_DIM 支持回退单缓冲)。 4. kernel 侧 - 新增 arch35/transpose_b4.h(TransposeHIF4 双切分模板):UB 内 CopyIn(Compact) → Cast fp4→bf16 → bf16 域转置 → Cast bf16→fp4 → CopyOut。 - transpose_apt.cpp 新增 TilingKey B4_DUAL_CUT=10009 分支;4bit 场景下各模板按 int8_t 实例化。 - NDDMA 相关模板(big_dim/cut_one_axis/cut_two_axis/tensor_move/n_last/transdata_5hd/5hd_021/ with_gather)在 __DAV_920R1__ 下使用带额外参数的 DataCopy/DataCopyPad 接口,base.h 新增 NDDMA_BUFFER_NUM(920R1 为 2),并按缓冲数切分 UB buffer。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/3627 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 新增 UT:conversion/transpose/tests/ut/op_host/arch35/test_transpose_tiling_b4.cpp,覆盖 27 个用例, 含 2D~6D shape、多种 perm、尾轴/非尾轴转置、E2M1/E1M2、超大/极小 shape 等场景,校验 tiling 成功、 tiling key=10009 及 tiling data。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6332 | 29 days ago | |
Kirin X90/9030支持Cast/Mul/Transpose/Add/ConcatD/StridedSlice算子 Co-authored-by: chenlong1<chenlong1@huawei.com> Co-authored-by: jinzy1999<jinzy@pku.edu.cn> # message auto-generated for no-merge-commit merge: !6581 merge master into master Kirin X90/9030支持Cast/Mul/Transpose/Add/ConcatD/StridedSlice算子 Created-by: chenlong1 Commit-by: chenlong1;jinzy1999 Merged-by: cann-robot Description: ## 描述 Kirin X90/9030支持Cast/Mul/Transpose/Add/ConcatD/StridedSlice算子 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3790 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6581 | 17 days ago | |
fix: transpose tiling增加perm合法性校验(越界与重复维度) Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !5461 merge fix_perm into master fix: transpose tiling增加perm合法性校验(越界与重复维度) Created-by: yefeicoding Commit-by: yefeicoding Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3140 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5461 | 2 months ago |
| Files | Last commit | Last update |
|---|---|---|
| 17 days ago | ||
| 24 days ago | ||
| 29 days ago | ||
| 17 days ago | ||
| 2 months ago |