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

AcosGrad

产品支持情况

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

功能说明

  • 算子功能:计算 Acos(反余弦)算子的反向梯度。

  • 算子公式:

    zi=−1⋅dyi⋅11−yi2z_i = -1 \cdot dy_i \cdot \dfrac{1}{\sqrt{1 - y_i^2}}

    其中:

    • yiy_i 为前向 Acos 算子的输入张量(按 canndev REG_OP 命名);
    • dyidy_i 为上游传入的梯度;
    • ziz_i 为对原始输入张量的梯度,等于上游梯度乘以 −1/1−yi2-1/\sqrt{1 - y_i^2}
  • 超出定义域(∣yi∣>1|y_i| > 1)时:1−yi2<01 - y_i^2 < 0,平方根结果为 NaN,结果同样为 NaN。

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
y 输入 前向 Acos 算子的输入张量(按 canndev REG_OP 命名)。值域期望落在 [-1, 1]。 FLOAT16, FLOAT32, BFLOAT16 ND
dy 输入 上游传入的梯度张量,shape 与 dtype 与 y 一致。 FLOAT16, FLOAT32, BFLOAT16 ND
z 输出 对原始输入张量的梯度,shape 与 dtype 与 y 一致。 FLOAT16, FLOAT32, BFLOAT16 ND

约束说明

  • y 与 dy 的 shape 必须完全一致。
  • y 与 dy 的 dtype 必须完全一致。
  • 仅支持 ND 格式。
  • 支持 非连续的 Tensor,非连续的 Tensor 维度不大于 8。

调用说明

调用方式 调用样例 说明
图模式调用 test_geir_acos_grad 通过 算子IR 构图方式调用 AcosGrad 算子。