| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
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 | 2 个月前 | |
fix:重构runtime2_util.h Co-authored-by: chenqianyu<chenqianyu1@h-partners.com> # message auto-generated for no-merge-commit merge: !8841 merge rename_runtime2util into master fix:重构runtime2_util.h Created-by: FishPotatoChen Commit-by: chenqianyu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 将 common/inc/op_api/runtime2_util.h 重命名为 common/inc/op_api/runtime2_util_nn.h,以避免与 CANN 仓内其他模块同名头文件产生命名冲突。 主要改动内容: 1. 重命名头文件 runtime2_util.h 为 runtime2_util_nn.h,并同步更新文件内的 doxygen 注释、头文件保护宏(CANN_OPS_BUILT_IN_OP_TILING_RUNTIME2_UTIL_NN_H_)以及文件末尾换行。 2. 批量更新所有引用该头文件的 26 个源文件(.h/.cpp)中的 #include "op_api/runtime2_util.h" 为 #include "op_api/runtime2_util_nn.h",涉及 activation、index、loss、norm 等 nn 算子目录。 3. 同步更新 common/inc/op_host/cache_runinfo.h 等公共头文件的引用,并更新版权年份至 2025-2026。 该改动为纯重命名重构,不涉及任何功能逻辑变更。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5037 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> - 由于改动仅涉及头文件重命名及引用路径更新,无功能逻辑变更,主要通过全量编译验证所有受影响算子可正确找到新头文件并编译通过。 - 编译范围覆盖 activation、index、loss、norm 等目录下受影响的 arch35 tiling 与 infershape 模块。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:重构代码 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8841 | 13 天前 | |
MicroAPI namespace to Reg for arch35 kernels Co-authored-by: gcw_DS4cmz2b<1312925094@qq.com> # message auto-generated for no-merge-commit merge: !9267 merge rename into master MicroAPI namespace to Reg for arch35 kernels Created-by: gcw_DS4cmz2b Commit-by: gcw_DS4cmz2b Merged-by: cann-robot Description: ## 描述 修改了index,activation,matmul,conv,foreach,optim,experimental,vfusion,hash这几个文件夹内的命名空间,将MicroAPI-->Reg ## 关联的Issue [多个文件夹内的算子命名空间使用的MicroAPI,应改为Reg](https://gitcode.com/cann/ops-nn/issues/5218) ## 测试 验证方法 严格按四步流程,逐算子验证: 1. Step 1:编译原始代码,保存 baseline binary .o 文件 MD5 2. Step 2:执行 MicroAPI → Reg 替换 3. Step 3:编译替换后代码,保存 after binary .o 文件 MD5 4. Step 4:对比 A_before.md5 与 B_after.md5 平台:ascend950,编译参数:--soc=ascend950 --ops=<op> -j16 验证替换前后 binary 产物 MD5 完全一致。 冒烟,代码审查均通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9267 | 9 天前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
新增或整改算子mish、prelu、sparse_slice、softmax_grad_ext 、erfinv,适配下一代芯片 Co-authored-by: dyd-dmy<dengyidan@huawei.com> # message auto-generated for no-merge-commit merge: !2508 merge code_migration into master 新增或整改算子mish、prelu、sparse_slice、softmax_grad_ext 、erfinv,适配下一代芯片 Created-by: dyd-dmy Commit-by: dyd-dmy Merged-by: cann-robot Description: ## 描述 ### 新增算子: 1. prelu:一种激活函数,当Tensor中value大于0,取该value,小于0时取权重与value的乘积。 <table style="undefined;table-layout: fixed; width: 980px"><colgroup> <col style="width: 100px"> <col style="width: 150px"> <col style="width: 280px"> <col style="width: 330px"> <col style="width: 120px"> </colgroup> <thead> <tr> <th>参数名</th> <th>输入/输出/属性</th> <th>描述</th> <th>数据类型</th> <th>数据格式</th> </tr></thead> <tbody> <tr> <td>x</td> <td>输入</td> <td>待进行PRelu计算的入参。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>weight</td> <td>输入</td> <td>计算的权重参数,元素个数为1或者元素个数与x输入的channel数量一致,channel为输入维度的第二维度。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>out</td> <td>输出</td> <td>PRelu计算的出参。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> </tbody></table> 2. sparse_slice:基于start和size对SparseTensor进行切片操作。 <table style="undefined;table-layout: fixed; width: 980px"><colgroup> <col style="width: 100px"> <col style="width: 150px"> <col style="width: 280px"> <col style="width: 330px"> <col style="width: 120px"> </colgroup> <thead> <tr> <th>参数名</th> <th>输入/输出/属性</th> <th>描述</th> <th>数据类型</th> <th>数据格式</th> </tr></thead> <tbody> <tr> <td>indices</td> <td>输入</td> <td>SparseTensor的索引,形状为[n, rank],其中n为输入值数量,rank为值索引的维度。</td> <td>INT64</td> <td>ND</td> </tr> <tr> <td>values</td> <td>输入</td> <td>SparseTensor的值,形状为[n]。</td> <td>INT64、INT32、UINT16、INT16、UINT8、INT8、FLOAT16、FLOAT、DOUBLE、COMPLEX64、COMPLEX128、BOOL、STRING、RESOURCE、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>shape</td> <td>输入</td> <td>SparseTensor的形状,形状为[rank]。</td> <td>INT64</td> <td>ND</td> </tr> <tr> <td>start</td> <td>输入</td> <td>切片的起始位置,形状为[rank]。</td> <td>INT64</td> <td>ND</td> </tr> <tr> <td>size</td> <td>输入</td> <td>切片的大小,形状为[rank]。</td> <td>INT64</td> <td>ND</td> </tr> <tr> <td>y_indices</td> <td>输出</td> <td>切片后SparseTensor的索引。</td> <td>INT64</td> <td>ND</td> </tr> <tr> <td>y_values</td> <td>输出</td> <td>切片后SparseTensor的值,类型与输入values相同。</td> <td>INT64、INT32、UINT16、INT16、UINT8、INT8、FLOAT16、FLOAT、DOUBLE、COMPLEX64、COMPLEX128、BOOL、STRING、RESOURCE、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>y_shape</td> <td>输出</td> <td>切片后SparseTensor的形状。</td> <td>INT64</td> <td>ND</td> </tr> </tbody></table> 3. softmax_grad_ext: <table style="undefined;table-layout: fixed; width: 980px"><colgroup> <col style="width: 100px"> <col style="width: 150px"> <col style="width: 280px"> <col style="width: 330px"> <col style="width: 120px"> </colgroup> <thead> <tr> <th>参数名</th> <th>输入/输出/属性</th> <th>描述</th> <th>数据类型</th> <th>数据格式</th> </tr></thead> <tbody> <tr> <td>grad</td> <td>输入</td> <td>反向输入张量。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>x1</td> <td>输入</td> <td>反向梯度,与grad具有相同的类型、格式和形状。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>x2</td> <td>输入</td> <td>反向缩放因子,与grad具有相同的类型。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>y</td> <td>输出</td> <td>反向输出,与grad具有相同的类型、格式和形状。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>axes</td> <td>属性</td> <td>归约的轴,默认值为1。</td> <td>INT</td> <td>-</td> </tr> <tr> <td>keep_dims</td> <td>属性</td> <td>是否保持维度数,默认值为true。true表示保留长度为1的归约维度。</td> <td>BOOL</td> <td>-</td> </tr> </tbody></table> 4. erfinv:erfinv是高斯误差函数erf的反函数。返回输入Tensor中每个元素对应在标准正态分布函数的分位数。 <table style="undefined;table-layout: fixed; width: 980px"><colgroup> <col style="width: 100px"> <col style="width: 150px"> <col style="width: 280px"> <col style="width: 330px"> <col style="width: 120px"> </colgroup> <thead> <tr> <th>参数名</th> <th>输入/输出/属性</th> <th>描述</th> <th>数据类型</th> <th>数据格式</th> </tr></thead> <tbody> <tr> <td>self</td> <td>输入</td> <td>待进行erfinv计算的入参。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>out</td> <td>输出</td> <td>erfinv计算的出参。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> </tbody></table> ### 整改算子: 1. mish:一个自正则化的非单调神经网络激活函数。主要整改原Mish算子不合理的目录结构、代码和文档,新增适配下一代芯片的功能代码与测试代码。 <table style="undefined;table-layout: fixed; width: 980px"><colgroup> <col style="width: 100px"> <col style="width: 150px"> <col style="width: 280px"> <col style="width: 330px"> <col style="width: 120px"> </colgroup> <thead> <tr> <th>参数名</th> <th>输入/输出/属性</th> <th>描述</th> <th>数据类型</th> <th>数据格式</th> </tr></thead> <tbody> <tr> <td>self</td> <td>输入</td> <td>待进行Mish激活计算的入参。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> <tr> <td>out</td> <td>输出</td> <td>Mish激活计算的出参。</td> <td>FLOAT、FLOAT16、BFLOAT16</td> <td>ND</td> </tr> </tbody></table> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/1684 ## 测试 1、算子包编译成功,部署成功,aclnn通路验证成功 2、david冒烟、二级冒烟、st用例都通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新p_relu、mish、erfinv算子的README.md文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!2508 | 5 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 2 个月前 | ||
| 13 天前 | ||
| 9 天前 | ||
| 1 个月前 | ||
| 5 个月前 |