文件最后提交记录最后更新时间
pad_v2算子支持昇腾950 Co-authored-by: pengyiming7<pengyiming7@h-partners.com> # message auto-generated for no-merge-commit merge: !1562 merge pad_v2 into master pad_v2算子支持昇腾950 Created-by: pengyiming7 Commit-by: pengyiming7 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> pad_v2算子支持昇腾950,pad算子新增支持fp8和fp4数据类型,pad_v3算子新增支持fp4数据类型 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1400 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了README.md文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!15621 个月前
pad_v2算子支持昇腾950 Co-authored-by: pengyiming7<pengyiming7@h-partners.com> # message auto-generated for no-merge-commit merge: !1562 merge pad_v2 into master pad_v2算子支持昇腾950 Created-by: pengyiming7 Commit-by: pengyiming7 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> pad_v2算子支持昇腾950,pad算子新增支持fp8和fp4数据类型,pad_v3算子新增支持fp4数据类型 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1400 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了README.md文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!15621 个月前
pad_v2 infershape增加空指针拦截 Co-authored-by: pengyiming7<pengyiming7@h-partners.com> # message auto-generated for no-merge-commit merge: !3013 merge pad_v2_infershape into master pad_v2 infershape增加空指针拦截 Created-by: pengyiming7 Commit-by: pengyiming7 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> pad_v2 infershape增加空指针拦截 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1506 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!30133 天前
PadV2算子未获取tilingdata Co-authored-by: pengyiming7<pengyiming7@h-partners.com> # message auto-generated for no-merge-commit merge: !2602 merge pad_apt into master PadV2算子未获取tilingdata Created-by: pengyiming7 Commit-by: pengyiming7 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> PadV2算子未获取tilingdata ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1469 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!260228 天前
pad_v2 infershape增加空指针拦截 Co-authored-by: pengyiming7<pengyiming7@h-partners.com> # message auto-generated for no-merge-commit merge: !3013 merge pad_v2_infershape into master pad_v2 infershape增加空指针拦截 Created-by: pengyiming7 Commit-by: pengyiming7 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> pad_v2 infershape增加空指针拦截 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1506 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!30133 天前
pad_v2算子支持昇腾950 Co-authored-by: pengyiming7<pengyiming7@h-partners.com> # message auto-generated for no-merge-commit merge: !1562 merge pad_v2 into master pad_v2算子支持昇腾950 Created-by: pengyiming7 Commit-by: pengyiming7 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> pad_v2算子支持昇腾950,pad算子新增支持fp8和fp4数据类型,pad_v3算子新增支持fp4数据类型 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1400 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了README.md文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!15621 个月前
fix: 修复 README 断链问题(共 9 处) Co-authored-by: StoneChan_<chensitong2@huawei.com> # message auto-generated for no-merge-commit merge: !2805 merge fix-readme-broken-links into master fix: 修复 README 断链问题(共 9 处) Created-by: StoneChan_ Commit-by: StoneChan_ Merged-by: cann-robot Description: ## 问题概述 通过断链扫描发现 ops-math 仓库 README.md 中存在 9 处断链,影响用户查阅示例代码和接口文档。 ## 修复内容 ### 1. 文件不存在导致的断链(6 处) - conversion/pad_v2/README.md: 修正 examples 链接路径(添加 arch35/ 层级) - experimental/math/acosh/README.md: 删除不存在的 inplace 版本链接 - experimental/math/reduce_mean_with_count/README.md: 删除占位链接 - experimental/math/atan_grad/README.md: 删除不存在的 docs 目录链接,标注待补充 ### 2. 链接换行导致的断链(3 处) - random/stateless_random_normal_v3/README.md: 合并跨行链接 - math/nan_to_num/README.md: 合并跨行链接 - conversion/matmul_v2_compress_dequant/README.md: 合并跨行链接 ## 关联 Issue Closes #1582 See merge request: cann/ops-math!280515 天前
README.md

PadV2

产品支持情况

产品 是否支持
Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
Atlas 200I/500 A2 推理产品
Atlas 推理系列产品
Atlas 训练系列产品

功能说明

  • 算子功能:对输入 tensor 进行指定值的常量填充。

  • 示例

    输入 tensor([[0,1,2]])
    paddings([[2,2]])
    constant_values(0)
    
    输出为([[0,0,0,1,2,0,0]])
    

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
x 输入 待进行填充的原始 tensor。 FLOAT、FLOAT16、INT32、INT64、INT16、INT8、UINT8、UINT16、UINT32、UINT64、BOOL、DOUBLE、COMPLEX64、COMPLEX128、BFLOAT16、HIFLOAT8、FLOAT8_E5M2、FLOAT8_E4M3FN、FLOAT8_E8M0、FLOAT4_E2M1、FLOAT4_E1M2。 ND
paddings 输入 填充配置,shape=[N, 2],其中 N 为 x 的维度数。 INT32、INT64 ND
constant_values 输入 填充常量值,标量 tensor。 FLOAT、FLOAT16、INT32、INT64、INT16、INT8、UINT8、UINT16、UINT32、UINT64、BOOL、DOUBLE、COMPLEX64、COMPLEX128、BFLOAT16、HIFLOAT8、FLOAT8_E5M2、FLOAT8_E4M3FN、FLOAT8_E8M0、FLOAT4_E2M1、FLOAT4_E1M2。 ND
y 输出 填充后的 tensor。 FLOAT、FLOAT16、INT32、INT64、INT16、INT8、UINT8、UINT16、UINT32、UINT64、BOOL、DOUBLE、COMPLEX64、COMPLEX128、BFLOAT16、HIFLOAT8、FLOAT8_E5M2、FLOAT8_E4M3FN、FLOAT8_E8M0、FLOAT4_E2M1、FLOAT4_E1M2。 ND
  • Atlas 训练系列产品、Atlas 推理系列产品、Atlas 200I/500 A2 推理产品:数据类型不支持BFLOAT16、HIFLOAT8、FLOAT8_E5M2、FLOAT8_E4M3FN、FLOAT8_E8M0、FLOAT4_E2M1、FLOAT4_E1M2。
  • Atlas A3 训练系列产品/Atlas A3 推理系列产品、Atlas A2 训练系列产品/Atlas A2 推理系列产品:数据类型不支持 HIFLOAT8、FLOAT8_E5M2、FLOAT8_E4M3FN、FLOAT8_E8M0、FLOAT4_E2M1、FLOAT4_E1M2。

输出 shape 计算

y.shape[d] = x.shape[d] + paddings[d][0] + paddings[d][1]

约束说明

  1. 维度约束

    • x 的维度数必须在 [1, 8] 范围内
    • paddings 的第一维必须等于 x 的维度数
    • paddings 的第二维必须等于 2
  2. 数据类型约束

    • x、constant_values、y 必须使用相同的数据类型
    • paddings 必须使用 INT32 或 INT64
  3. 填充约束

    • 负填充(slice)时,输出 shape = x.shape[d] + left + right >= 0
  4. paddings 参数约束

    • paddings 的形状必须为 [rank, 2],其中 rank 为输入 x 的维度数(1~8)
    • 每一行 [left, right] 表示对应维度的填充数量
      • left: 在该维度的开头填充的元素数
      • right: 在该维度的末尾填充的元素数
    • paddings的值可以为:
      • 正数:表示填充
      • 负数:表示 slice(裁剪)
      • 零:表示不填充

调用说明

调用方式 调用样例 说明
aclnn 调用 test_geir_pad_v2.cpp 通过 算子IR 接口方式调用 PadV2 算子