CANN/ATVC ReluWithReduceSum样例

📅 2026/7/9 7:59:27 👁️ 阅读次数 📝 编程学习
CANN/ATVC ReluWithReduceSum样例

【免费下载链接】atvcATVC(Ascend C Templates for Vector Compute),是为基于Ascend C开发的典型Vector算子封装的一系列模板头文件的集合,可帮助用户快速开发典型Vector算子。项目地址: https://gitcode.com/cann/atvc

ReluWithReduceSum算子样例

概述

样例概述:本样例介绍了利用ATVC实现ReduceSum+Elementwise算子并完成功能验证,此算子精度适用遵循reduce的精度范围。

  • 算子功能:ReduceSum算子前置添加Add和后置添加Relu自定义算子
  • 使用的ATVC模板:带前后Elementwise计算的Reduce模板
  • 调用方式:Kernel直调

样例支持AI处理器型号

  • Ascend 910C
  • Ascend 910B

算子描述

该自定义算子数学计算公式为: $$

y = \begin{cases} 0& \text{if reduceSum(x + 1) < 0}\ reduceSum(x + 1)& \text{if reduceSum(x + 1) ≥ 0} \end{cases} $$

算子规格:

算子类型(OpType)ReluWithReduceSum
算子输入
nameshapedata typeformat
x8 * 1024floatND
算子输出
y1 * 1024floatND
核函数名ReluWithReduceSum

目录结构

文件名描述
relu_with_reduce_sum.cpp算子代码实现以及调用样例
relu_with_reduce_sum.h算子代码实现头文件
pre_compute_add_with_reduce_sum.h前置Elementwise计算
post_compute_relu_with_reduce_sum.h后置Elementwise计算

算子运行

在ascendc-api-adv代码仓目录下执行:

cd ./ops_templates/atvc/examples bash run_examples.sh relu_with_reduce_sum

【免费下载链接】atvcATVC(Ascend C Templates for Vector Compute),是为基于Ascend C开发的典型Vector算子封装的一系列模板头文件的集合,可帮助用户快速开发典型Vector算子。项目地址: https://gitcode.com/cann/atvc

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考