| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
资料与头文件接口不一致问题修复 Co-authored-by: weike<weike13@huawei.com> # message auto-generated for no-merge-commit merge: !3666 merge cherry-pick-mr-3652-1782873560298-auto into 9.1.0 资料与头文件接口不一致问题修复 Created-by: m0_55003149 Commit-by: weike Merged-by: cann-robot Description: ## 描述 资料与头文件接口不一致问题修复 ## 关联的Issue #3736 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:资料与头文件接口不一致问题修复 See merge request: cann/ops-math!3666 | 1 个月前 | |
[feat]add aicpu op: sqrt Co-authored-by: FengHaozhan<fenghaozhan@huawei.com> # message auto-generated for no-merge-commit merge: !2539 merge sqrt_aicpu into master [feat]add aicpu op: sqrt Created-by: FengHaozhan Commit-by: FengHaozhan Merged-by: cann-robot Description: ## 描述 新增 AICPU 算子 sqrt,实现对张量各元素求平方根(√x)的功能,支持多种数据类型(float16、float32、float64、int32)及图模式(Graph Mode)调用。 主要变更: - sqrt_aicpu.cpp / sqrt_aicpu.h:AICPU kernel 实现,基于模板化实现多数据类型支持 - sqrt.json:算子信息描述文件,定义输入输出的 dtype/format 列表 - tests/ut/op_kernel_aicpu/test_sqrt.cpp:覆盖各数据类型的单元测试用例 - examples/test_geir_sqrt.cpp:图模式端到端示例,验证算子在 GE 图中的运行 - math/sqrt/README.md:补充算子说明 ## 关联的Issue #1446 ## 测试 根据代码变更,测试场景如下: 1. **AICPU 单元测试** - 执行 tests/ut/op_kernel_aicpu/test_sqrt.cpp 中的 UT 用例 - 覆盖 float16、float32、float64、int32 数据类型,验证各类型计算结果正确 2. **图模式示例验证** - 编译并运行 examples/test_geir_sqrt.cpp - 验证 sqrt 算子在 GE 图模式下能正确加载、执行并输出预期结果 3. **算子信息验证** - 检查 sqrt.json 中的 dtype/format 配置是否与 kernel 实现一致 ## 文档更新 - 更新 math/sqrt/README.md,补充 AICPU 算子说明 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2539 | 3 个月前 | |
添加不支持格式的warning Co-authored-by: Boyang_Zhang<zhangboyang15@h-partners.com> # message auto-generated for no-merge-commit merge: !1586 merge NZ_warning into master 添加不支持格式的warning Created-by: BoyangZhang Commit-by: Boyang_Zhang Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!1586 | 4 个月前 | |
abs等算子A5实现 Co-authored-by: ly_cann_coder<liyao152@huawei.com> # message auto-generated for no-merge-commit merge: !495 merge develop into master abs等算子A5实现 Created-by: ly_cann_coder Commit-by: ly_cann_coder Merged-by: cann-robot Description: ## 描述 新增以下算子的A5实现 |序号| 算子 | 功能 | |--|--|--| |1| abs | 为输入张量的每一个元素取绝对值 | |2| add | 对输入完成相加操作 | |3| addcdiv | 张量运算函数,用于执行乘除加组合操作,将张量除法(带缩放)+ 张量加法合并为单个操作 | |4| addcmul | 张量运算函数,用于执行乘除加组合操作,将张量乘法(带缩放)+ 张量加法合并为单个操作 | |5| axpy | 源操作数中每个元素与标量求积后和目的操作数中的对应元素相加 | |6| bincount | 计算非负整数数组中每个数的频率 | |7| ceil | 返回输入tensor中每个元素向上取整的结果 | |8| clip_by_value_v2 | 将输入的所有元素限制在一定范围内 | |9| concat | 用于沿指定维度将多个输入 Tensor 进行拼接,输出包含所有输入数据按顺序拼接后的 Tensor | |10| concat_v2 | 用于沿指定维度将多个输入 Tensor 进行拼接,输出包含所有输入数据按顺序拼接后的 Tensor | |11| equal | 计算两个Tensor是否有相同的大小和元素,返回一个Bool类型 | |12|exp|返回一个新的张量,该张量的每个元素都是输入张量对应元素的指数| |13| fill | 对张量进行填充操作,支持非连续的Tensor操作 | |14| floor | 返回输入Tensor中每个元素向下取整,并将结果回填到输入Tensor中 | |15| floor_div | 完成除法计算,对余数向下取整 | |16| floor_mod | 用于计算两个数的模 | |17| is_neg_inf | 判断输入张量的元素是否为负无穷 | |18| is_pos_inf | 判断输入张量的元素是否为正无穷 | |19| less | 判断输入self中的每个元素是否小于输入other的值,返回一个Bool类型的Tensor | |20| less_equal | 判断输入self中的元素值是否小于等于other的值,并将self的每个元素的值与other值的比较结果写入out中 | |21| logical_and | 对两个输入张量的对应元素执行「与逻辑」判断,输出布尔型张量(True/False) | |22| log | 对输入张量x的元素,逐元素进行对数计算,并将结果保存到输出张量y中 | |23| not_equal | 逐元素比较两个输入张量是否不相等 | |24| ones_like | 返回形状和类型相同的张量,所有元素都设置为1 | |25|sign|对输入的tensor逐元素进行Sign符号函数的运算并输出结果tensor| |26| sqrt | 完成非负数平方根计算,负数情况返回nan | |27| sqrt_grad | 完成梯度平方根计算 | |28| square | 为输入张量的每一个元素计算平方值 | |29| squared_difference | 为第一个输入张量减去第二个输入张量,并计算其平方值 | |30| tanh | 激活函数,返回与输入tensor shape相同的tensor,对输入tensor进行elementwise的计算 | |31| tril | 将输入的self张量的最后二维(按shape从左向右数)沿对角线的右上部分置零 | |32| triu | 将输入的self张量的最后二维(按shape从左向右数)沿对角线的左下部分置零 | |33| zeros_like | 将张量填充为全零 | ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!495 | 7 个月前 | |
Error Message整改 Co-authored-by: 李根<ligen75@h-partners.com> # message auto-generated for no-merge-commit merge: !3157 merge master into master Error Message整改 Created-by: ligen75 Commit-by: 李根 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> OP_LOGE 替换为规范化 EZ0008-EZ0034 系列错误码上报 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1825 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 自验通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3157 | 2 个月前 | |
abs等算子A5实现 Co-authored-by: ly_cann_coder<liyao152@huawei.com> # message auto-generated for no-merge-commit merge: !495 merge develop into master abs等算子A5实现 Created-by: ly_cann_coder Commit-by: ly_cann_coder Merged-by: cann-robot Description: ## 描述 新增以下算子的A5实现 |序号| 算子 | 功能 | |--|--|--| |1| abs | 为输入张量的每一个元素取绝对值 | |2| add | 对输入完成相加操作 | |3| addcdiv | 张量运算函数,用于执行乘除加组合操作,将张量除法(带缩放)+ 张量加法合并为单个操作 | |4| addcmul | 张量运算函数,用于执行乘除加组合操作,将张量乘法(带缩放)+ 张量加法合并为单个操作 | |5| axpy | 源操作数中每个元素与标量求积后和目的操作数中的对应元素相加 | |6| bincount | 计算非负整数数组中每个数的频率 | |7| ceil | 返回输入tensor中每个元素向上取整的结果 | |8| clip_by_value_v2 | 将输入的所有元素限制在一定范围内 | |9| concat | 用于沿指定维度将多个输入 Tensor 进行拼接,输出包含所有输入数据按顺序拼接后的 Tensor | |10| concat_v2 | 用于沿指定维度将多个输入 Tensor 进行拼接,输出包含所有输入数据按顺序拼接后的 Tensor | |11| equal | 计算两个Tensor是否有相同的大小和元素,返回一个Bool类型 | |12|exp|返回一个新的张量,该张量的每个元素都是输入张量对应元素的指数| |13| fill | 对张量进行填充操作,支持非连续的Tensor操作 | |14| floor | 返回输入Tensor中每个元素向下取整,并将结果回填到输入Tensor中 | |15| floor_div | 完成除法计算,对余数向下取整 | |16| floor_mod | 用于计算两个数的模 | |17| is_neg_inf | 判断输入张量的元素是否为负无穷 | |18| is_pos_inf | 判断输入张量的元素是否为正无穷 | |19| less | 判断输入self中的每个元素是否小于输入other的值,返回一个Bool类型的Tensor | |20| less_equal | 判断输入self中的元素值是否小于等于other的值,并将self的每个元素的值与other值的比较结果写入out中 | |21| logical_and | 对两个输入张量的对应元素执行「与逻辑」判断,输出布尔型张量(True/False) | |22| log | 对输入张量x的元素,逐元素进行对数计算,并将结果保存到输出张量y中 | |23| not_equal | 逐元素比较两个输入张量是否不相等 | |24| ones_like | 返回形状和类型相同的张量,所有元素都设置为1 | |25|sign|对输入的tensor逐元素进行Sign符号函数的运算并输出结果tensor| |26| sqrt | 完成非负数平方根计算,负数情况返回nan | |27| sqrt_grad | 完成梯度平方根计算 | |28| square | 为输入张量的每一个元素计算平方值 | |29| squared_difference | 为第一个输入张量减去第二个输入张量,并计算其平方值 | |30| tanh | 激活函数,返回与输入tensor shape相同的tensor,对输入tensor进行elementwise的计算 | |31| tril | 将输入的self张量的最后二维(按shape从左向右数)沿对角线的右上部分置零 | |32| triu | 将输入的self张量的最后二维(按shape从左向右数)沿对角线的左下部分置零 | |33| zeros_like | 将张量填充为全零 | ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!495 | 7 个月前 | |
[feat]add aicpu op: sqrt Co-authored-by: FengHaozhan<fenghaozhan@huawei.com> # message auto-generated for no-merge-commit merge: !2539 merge sqrt_aicpu into master [feat]add aicpu op: sqrt Created-by: FengHaozhan Commit-by: FengHaozhan Merged-by: cann-robot Description: ## 描述 新增 AICPU 算子 sqrt,实现对张量各元素求平方根(√x)的功能,支持多种数据类型(float16、float32、float64、int32)及图模式(Graph Mode)调用。 主要变更: - sqrt_aicpu.cpp / sqrt_aicpu.h:AICPU kernel 实现,基于模板化实现多数据类型支持 - sqrt.json:算子信息描述文件,定义输入输出的 dtype/format 列表 - tests/ut/op_kernel_aicpu/test_sqrt.cpp:覆盖各数据类型的单元测试用例 - examples/test_geir_sqrt.cpp:图模式端到端示例,验证算子在 GE 图中的运行 - math/sqrt/README.md:补充算子说明 ## 关联的Issue #1446 ## 测试 根据代码变更,测试场景如下: 1. **AICPU 单元测试** - 执行 tests/ut/op_kernel_aicpu/test_sqrt.cpp 中的 UT 用例 - 覆盖 float16、float32、float64、int32 数据类型,验证各类型计算结果正确 2. **图模式示例验证** - 编译并运行 examples/test_geir_sqrt.cpp - 验证 sqrt 算子在 GE 图模式下能正确加载、执行并输出预期结果 3. **算子信息验证** - 检查 sqrt.json 中的 dtype/format 配置是否与 kernel 实现一致 ## 文档更新 - 更新 math/sqrt/README.md,补充 AICPU 算子说明 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2539 | 3 个月前 | |
整改st目录下的atk用例统一目录格式 Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !2579 merge master into master 整改st目录下的atk用例统一目录格式 Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 整改st目录下的atk用例统一目录格式 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1538 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:st用例目录整改 See merge request: cann/ops-math!2579 | 2 个月前 | |
适配PG short_soc_version Co-authored-by: xufeng12121<1074805447@qq.com> # message auto-generated for no-merge-commit merge: !2804 merge mc62 into master 适配PG short_soc_version Created-by: xufeng12121 Commit-by: xufeng12121 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 算子适配PG特性,将math仓 mc62cm12a/MC62CM12A 改成 mc62/MC62 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1732 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2804 | 2 个月前 | |
[feat]add aicpu op: sqrt Co-authored-by: FengHaozhan<fenghaozhan@huawei.com> # message auto-generated for no-merge-commit merge: !2539 merge sqrt_aicpu into master [feat]add aicpu op: sqrt Created-by: FengHaozhan Commit-by: FengHaozhan Merged-by: cann-robot Description: ## 描述 新增 AICPU 算子 sqrt,实现对张量各元素求平方根(√x)的功能,支持多种数据类型(float16、float32、float64、int32)及图模式(Graph Mode)调用。 主要变更: - sqrt_aicpu.cpp / sqrt_aicpu.h:AICPU kernel 实现,基于模板化实现多数据类型支持 - sqrt.json:算子信息描述文件,定义输入输出的 dtype/format 列表 - tests/ut/op_kernel_aicpu/test_sqrt.cpp:覆盖各数据类型的单元测试用例 - examples/test_geir_sqrt.cpp:图模式端到端示例,验证算子在 GE 图中的运行 - math/sqrt/README.md:补充算子说明 ## 关联的Issue #1446 ## 测试 根据代码变更,测试场景如下: 1. **AICPU 单元测试** - 执行 tests/ut/op_kernel_aicpu/test_sqrt.cpp 中的 UT 用例 - 覆盖 float16、float32、float64、int32 数据类型,验证各类型计算结果正确 2. **图模式示例验证** - 编译并运行 examples/test_geir_sqrt.cpp - 验证 sqrt 算子在 GE 图模式下能正确加载、执行并输出预期结果 3. **算子信息验证** - 检查 sqrt.json 中的 dtype/format 配置是否与 kernel 实现一致 ## 文档更新 - 更新 math/sqrt/README.md,补充 AICPU 算子说明 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2539 | 3 个月前 |
Sqrt
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR/Ascend 950DT | √ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品/Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | × |
| Atlas 推理系列产品 | × |
| Atlas 训练系列产品 | √ |
功能说明
-
算子功能:完成非负数平方根计算,负数情况返回nan。
-
计算公式:
out=sqrt(self)={self,self≥0,nan,self<0out=sqrt(self)=\begin{cases} \sqrt {self}, & self\ge 0 , \\ nan, & self\lt 0 \end{cases} out=sqrt(self)={self,nan,self≥0,self<0
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| self | 输入 | 待进行sqrt计算的入参,公式中的self。 | COMPLEX64、COMPLEX128、FLOAT、FLOAT16、BFLOAT16、DOUBLE、INT32、INT64、INT16、INT8、UINT8、BOOL | ND |
| out | 输出 | 待进行sqrt计算的出参,公式中的out。 | FLOAT、FLOAT16、DOUBLE、COMPLEX64、COMPLEX128、BFLOAT16 | ND |
- Atlas 训练系列产品、Atlas 推理系列产品: 不支持BFLOAT16。
约束说明
无
调用说明
| 调用方式 | 调用样例 | 说明 |
|---|---|---|
| aclnn调用 | test_aclnn_sqrt | 通过aclnnSqrt接口方式调用Sqrt算子。 |
| 图模式调用 | test_geir_sqrt | 通过算子IR构图方式调用Sqrt算子。 |