文件最后提交记录最后更新时间
math仓的doc tools 工具检测的低错问题 Co-authored-by: caiwenwen<caiwenwen6@h-partners.com> # message auto-generated for no-merge-commit merge: !2461 merge master into master math仓的doc tools 工具检测的低错问题 Created-by: caiwenwen Commit-by: caiwenwen Merged-by: cann-robot Description: ## 描述 处理math仓的doc tools 工具检测的低错问题,包括markdown低错、htlm标签合入、链接是否可以正常跳转 ## 关联的Issue #关联issue#1262 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 更新全部文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!24611 个月前
增加A2 A3新算子支持 Co-authored-by: slx2008<shaolixin@huawei.com> # message auto-generated for no-merge-commit merge: !448 merge master into master 增加A2 A3新算子支持 Created-by: songkai111 Commit-by: slx2008 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4485 个月前
增加A2 A3新算子支持 Co-authored-by: slx2008<shaolixin@huawei.com> # message auto-generated for no-merge-commit merge: !448 merge master into master 增加A2 A3新算子支持 Created-by: songkai111 Commit-by: slx2008 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4485 个月前
refactor: 删除废弃公共头文件,完成 math/random 算子头文件去重 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !3000 merge math_tiling into master refactor: 删除废弃公共头文件,完成 math/random 算子头文件去重 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 删除 4 个已废弃的公共头文件,并完成剩余 math 算子和全部 random 算子的重复头文件消除。本 PR 为此系列重构的收尾提交。 ### 改动原因 前三批 PR(#2951 conversion / #2969 math上 / #2980 math下)已完成所有算子到 base 仓头文件的迁移。原公共头文件已成为空壳转发或不再被引用,可安全删除: - tiling_base.h:已改为转发 tiling_base_class.h,可直接删除 - tiling_templates_registry.h:math 专用部分已拆分到 math_tiling_templates_registry.h - tiling_util.h / tiling_util.cpp:功能已迁移至 base 仓 tiling_base_util.h 此前几批遗漏了部分 math 算子(add_lora, atan2, histogram_v2, stft 等 10+ 个)以及 random 目录下全部算子。 ### 改动方法 1. 删除 4 个废弃文件并精简 common/CMakeLists.txt 2. 更新遗漏的 math 算子:#include + 命名空间修正 3. 更新 20+ 个 random 算子:同样的 #include + 命名空间修正 4. 更新示例(add_example, add_example_c_api)和 opgen 模板脚本 ## 关联的Issue - #1697 ## 测试 - 涉及的算子二级冒烟测试已通过 ## 文档更新 无文档变更 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码重构,删除废弃头文件并完成去重收尾 See merge request: cann/ops-math!30005 天前
add kirin9030 ops Co-authored-by: zengjuan<zengjuan2@huawei.com> # message auto-generated for no-merge-commit merge: !963 merge master into master add kirin9030 ops Created-by: zengjuan Commit-by: zengjuan Merged-by: cann-robot Description: ## 描述 add kirin9030 ops: conversion/circular_pad conversion/diag_flat conversion/diag_v2 conversion/feeds_repeat conversion/fill_diagonal_v2 conversion/masked_select_v3 conversion/stack_ball_query conversion/strided_slice_assign_v2 conversion/transpose_v2 math/angle_v2 math/is_finite math/is_inf math/lin_space math/mul_addn math/non_finite_check math/pows math/segsum math/transform_bias_rescale_qkv ## 关联的Issue https://gitcode.com/cann/ops-math/issues/602 ## 测试 蓝区门禁、黄区门禁、算子二级冒烟 ## 文档更新 无 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!9633 个月前
修改变量名称blockDim为更符合语义的numBlocks Co-authored-by: songkai111<songkai16@huawei.com> # message auto-generated for no-merge-commit merge: !960 merge master into master 修改变量名称blockDim为更符合语义的numBlocks Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 将仓中所有算子,涉及使用blockDim命名变量的,全部修改为numBlocks ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/580 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!9603 个月前
增加A2 A3新算子支持 Co-authored-by: slx2008<shaolixin@huawei.com> # message auto-generated for no-merge-commit merge: !448 merge master into master 增加A2 A3新算子支持 Created-by: songkai111 Commit-by: slx2008 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4485 个月前
math仓的doc tools 工具检测的低错问题 Co-authored-by: caiwenwen<caiwenwen6@h-partners.com> # message auto-generated for no-merge-commit merge: !2461 merge master into master math仓的doc tools 工具检测的低错问题 Created-by: caiwenwen Commit-by: caiwenwen Merged-by: cann-robot Description: ## 描述 处理math仓的doc tools 工具检测的低错问题,包括markdown低错、htlm标签合入、链接是否可以正常跳转 ## 关联的Issue #关联issue#1262 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 更新全部文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!24611 个月前
README.md

Segsum

产品支持情况

产品 是否支持
Ascend 950PR/Ascend 950DT ×
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
Atlas 200I/500 A2 推理产品 ×
Atlas 推理系列产品 ×
Atlas 训练系列产品 ×
Kirin X90 处理器系列产品
Kirin 9030 处理器系列产品

功能说明

  • 算子功能:进行分段和计算。生成对角线为0的半可分矩阵,且上三角为-inf。

  • 计算公式(以4D输入为例):

    1. 输入self由(N1,N2,N3,N4)升维成(N1,N2,N3,N4,1)。

    2. 进行广播得到(N1,N2,N3,N4,N4)。

    3. 生成(N4,N4)类型为bool的三角矩阵A,上三角为True,下三角为False,对角线为True。

    4. 用0填充输入self里面与矩阵A中值为True的位置相对应的元素。

      selfi={selfi,Ai==False0,Ai==Trueself_i= \begin{cases}self_i,\quad A_i==False \\0, \quad A_i==True \end{cases}

    5. 以self的倒数第二维进行cumsum累加。从维度视角来看的某个元素(其它维度下标不变,当前维度下标依次递增),selfTemp_iselfTemp\_{i}是输出张量中对应位置的元素。

      selfTempi=self1+self2+self3+......+selfiselfTemp_{i} = self_{1} + self_{2} + self_{3} + ...... + self_{i}

    6. 生成(N4,N4)类型为bool的三角矩阵B,上三角为True,下三角为False,对角线为False。

    7. 用-inf填充selfTemp里面与矩阵B中值为True的位置相对应的元素。

      outi={selfTempi,Bi==False−inf,Bi==Trueout_i= \begin{cases}selfTemp_i,\quad B_i==False \\-inf, \quad B_i==True \end{cases}

    8. 计算selfTemp里面每个元素的指数。

      outi=eselfTempiout_i=e^{selfTemp_i}

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
x 输入 进行分段和计算的输入,对应公式中的`self`。 FLOAT32、FLOAT16、BFLOAT16 ND
y 输出 完成分段和计算后的输出,对应公式中的`out`。输出维度必须比输入维度大1,支持4D或5D。当输入`x`为3D时,输出前3维的维度大小与`x`的保持一致,最后1维的维度大小与第3维保持一致。当输入`x`为4D时,输出前4维的维度大小与`x`的保持一致,最后1维的维度大小与第4维保持一致。数据类型与输入`x`的数据类型保持一致。 FLOAT32、FLOAT16、BFLOAT16 ND
  • Kirin X90/Kirin 9030 处理器系列产品: 不支持BFLOAT16。

约束说明

调用说明

调用方式 样例代码 说明
aclnn接口 test_aclnn_segsum 通过aclnnExpSegsum接口方式调用Segsum算子。