| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
在experimental目录支持<<<>>>算子编译工程 Co-authored-by: luyakun<luyakun@h-partners.com> # message auto-generated for no-merge-commit merge: !3235 merge conv_exp into master 在experimental目录支持<<<>>>算子编译工程 Created-by: luyakun_hw Commit-by: luyakun Merged-by: cann-robot Description: ## 描述 在experimental目录支持<<<>>>算子编译工程,改动方式为在scripts目录下新增torch_extension目录用来存放编译<<<>>>算子编译whl包所需的脚本,同时适配build.sh脚本文件 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/1450 ## 测试 本地执行bash build.sh --pkg --experimental,编译experimental目录下所有算子,生成的whl包在build_out目录下,执行bash build.sh --pkg --experimental --ops=op1,op2,编译experimental目录下指定的算子 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!3235 | 3 个月前 | |
hadamard 算子的实现,单算子+融合量化算子 Co-authored-by: TX<tianxiang.xia1@huawei.com> # message auto-generated for no-merge-commit merge: !6248 merge fht-opsnn into master hadamard 算子的实现,单算子+融合量化算子 Created-by: egrr Commit-by: TX Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 新增 3 个融合快速哈达玛变换(FHT)算子,位于 experimental/matmul/ 下,用于 W4A4 量化中的哈达玛旋转: - fast_hadamard:FHT(fp16,非原地)。 - fast_hadamard_quant:FHT + 静态 int4 量化(packed int4,支持分组 scale/offset)。 - fast_hadamard_dynamic_quant:FHT + 每行动态 int4 量化(packed int4 + fp32 行 scale)。 实现方式:采用「生态最简算子」交付,单一 .cpp 含 device kernel + <<<>>> 启动 + TORCH_LIBRARY 注册,经 add_sources() 编入 ascend_ops_nn PyTorch 扩展,通过 torch.ops.ascend_ops_nn.* 调用。kernel 计算体取自经验证的 pto-ISA 参考实现,pto 头文件随 CANN 工具包发布(${ASCEND_TOOLKIT_HOME}/include/pto),无新增第三方依赖。动态量化算子将 reduce/expand tile 按编译期 kFullN 模板化,修复大 batch 下的 UB 越界。 附带一处共用构建修复:scripts/torch_extension/CMakeLists.txt 原 include 了仓库中缺失的 cmake/third_party/nlohmann_json.cmake,导致 PyTorch 扩展构建在 configure 阶段失败;该依赖无任何目标实际使用,改为 OPTIONAL。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue #3415 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> bash build.sh --pkg --experimental --soc=ascend910b --ops=fast_hadamard,fast_hadamard_quant,fast_hadamard_dynamic_quant pip install --no-deps --force-reinstall build_out/ascend_ops_nn-*.whl - 用例位于各算子 tests/test_*.py. python3 experimental/matmul/fast_hadamard/examples/benchmark.py 与 rotate_quant (rotq_us) 对比: batch N copy_us fht_us dyn_us rotq_us ------------------------------------------------- 8192 128 6.09 15.16 18.42 34.84 8192 256 6.12 15.45 20.50 34.58 8192 512 15.80 28.81 36.98 44.71 8192 1024 30.62 58.24 76.48 111.63 8192 2048 57.90 121.95 164.53 - rotate_quant 仅支持旋转维度 K ≤ 1024(matmul/rotate_quant/op_host/arch22/rotate_quant_tiling.cpp:39,207,tiling 校验 K must be between 16 and 1024,否则 GRAPH_FAILED);对比中旋转矩阵为 n×n(K=n),故 N=2048 超出其支持范围,无法参与对比,而本算子的向量蝶形实现支持到 n ≤ 16384。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 3 个算子的 README.mdq ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6248 | 24 天前 | |
ops-nn support ascend350 Co-authored-by: 丛吉钰<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !4745 merge huipian into master ops-nn support ascend350 Created-by: cong-jiyu Commit-by: 丛吉钰 Merged-by: cann-robot Description: ## 描述 ops-nn support ascend350 ## 关联的Issue [#2645](https://gitcode.com/cann/ops-nn/issues/2645) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4745 | 2 个月前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 15 天前 | |
在experimental目录支持<<<>>>算子编译工程 Co-authored-by: luyakun<luyakun@h-partners.com> # message auto-generated for no-merge-commit merge: !3235 merge conv_exp into master 在experimental目录支持<<<>>>算子编译工程 Created-by: luyakun_hw Commit-by: luyakun Merged-by: cann-robot Description: ## 描述 在experimental目录支持<<<>>>算子编译工程,改动方式为在scripts目录下新增torch_extension目录用来存放编译<<<>>>算子编译whl包所需的脚本,同时适配build.sh脚本文件 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/1450 ## 测试 本地执行bash build.sh --pkg --experimental,编译experimental目录下所有算子,生成的whl包在build_out目录下,执行bash build.sh --pkg --experimental --ops=op1,op2,编译experimental目录下指定的算子 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!3235 | 3 个月前 | |
在experimental目录支持<<<>>>算子编译工程 Co-authored-by: luyakun<luyakun@h-partners.com> # message auto-generated for no-merge-commit merge: !3235 merge conv_exp into master 在experimental目录支持<<<>>>算子编译工程 Created-by: luyakun_hw Commit-by: luyakun Merged-by: cann-robot Description: ## 描述 在experimental目录支持<<<>>>算子编译工程,改动方式为在scripts目录下新增torch_extension目录用来存放编译<<<>>>算子编译whl包所需的脚本,同时适配build.sh脚本文件 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/1450 ## 测试 本地执行bash build.sh --pkg --experimental,编译experimental目录下所有算子,生成的whl包在build_out目录下,执行bash build.sh --pkg --experimental --ops=op1,op2,编译experimental目录下指定的算子 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!3235 | 3 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 3 个月前 | ||
| 24 天前 | ||
| 2 个月前 | ||
| 15 天前 | ||
| 3 个月前 | ||
| 3 个月前 |