文件最后提交记录最后更新时间
[CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Co-authored-by: lianjieyu<yulianjie@huawei.com> # message auto-generated for no-merge-commit merge: !2940 merge dev0525 into master [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Created-by: lianjieyu Commit-by: lianjieyu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1656 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!29404 天前
[CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Co-authored-by: lianjieyu<yulianjie@huawei.com> # message auto-generated for no-merge-commit merge: !2940 merge dev0525 into master [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Created-by: lianjieyu Commit-by: lianjieyu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1656 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!29404 天前
[CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Co-authored-by: lianjieyu<yulianjie@huawei.com> # message auto-generated for no-merge-commit merge: !2940 merge dev0525 into master [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Created-by: lianjieyu Commit-by: lianjieyu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1656 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!29404 天前
[CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Co-authored-by: lianjieyu<yulianjie@huawei.com> # message auto-generated for no-merge-commit merge: !2940 merge dev0525 into master [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Created-by: lianjieyu Commit-by: lianjieyu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1656 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!29404 天前
[CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Co-authored-by: lianjieyu<yulianjie@huawei.com> # message auto-generated for no-merge-commit merge: !2940 merge dev0525 into master [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Created-by: lianjieyu Commit-by: lianjieyu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1656 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!29404 天前
[CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Co-authored-by: lianjieyu<yulianjie@huawei.com> # message auto-generated for no-merge-commit merge: !2940 merge dev0525 into master [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Created-by: lianjieyu Commit-by: lianjieyu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1656 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!29404 天前
[CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Co-authored-by: lianjieyu<yulianjie@huawei.com> # message auto-generated for no-merge-commit merge: !2940 merge dev0525 into master [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 Created-by: lianjieyu Commit-by: lianjieyu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> [CANNBot] add_mat_mat_elements、asin_grad、asinh_grad、eltwise和atan_grad算子适配Ascend950 AscendC实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1656 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!29404 天前
README.md

AsinGrad

产品支持情况

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

功能说明

  • 算子功能:AsinGrad 是 Asin(反正弦)算子的梯度算子,用于深度学习框架自动微分的反向传播阶段。给定正向输入 y 和上游梯度 dy,计算输出梯度 z。

  • 计算公式:

    zi=dyi1−yi2z_i = \frac{dy_i}{\sqrt{1 - y_i^2}}

    其中:

    • y:正向 Asin 算子的输入 tensor,值域 [-1, 1]
    • dy:上游传播的梯度(grad_output)
    • z:计算得到的输入梯度(grad_input)

参数说明

参数名 输入/输出 描述 数据类型 数据格式
y 输入 正向 Asin 算子的输入 tensor,对应公式中的 y。支持 0-8 维 tensor,支持空 tensor。shape 需要与 dy 的 shape 完全相同。 BFLOAT16、FLOAT16、FLOAT32 ND
dy 输入 上游传播的梯度 tensor,对应公式中的 dy。支持 0-8 维 tensor,支持空 tensor。shape 需要与 y 的 shape 完全相同。 BFLOAT16、FLOAT16、FLOAT32 ND
z 输出 计算得到的输入梯度 tensor,对应公式中的 z。shape 与输入相同,数据类型与输入一致。 BFLOAT16、FLOAT16、FLOAT32 ND

约束说明

  • y 和 dy 的数据类型必须一致,z 的数据类型与 y/dy 一致,仅支持 FLOAT、FLOAT16、BFLOAT16。
  • y 和 dy 的 shape 必须完全相同,不支持广播。
  • 支持 0-8 维 tensor,支持空 tensor(0 元素)。
  • y 的值域应在 [-1, 1] 范围内。当 |y| = 1 时,计算结果为 inf;当 |y| > 1 时,计算结果为 NaN。
  • FLOAT16 走 native FP16 计算;BFLOAT16 走 BF16 → FP32 中间计算;FLOAT32 直接 FP32 计算。

调用说明

调用方式 样例代码 说明
图模式 test_geir_asin_grad.cpp 通过图模式方式调用AsinGrad算子。