【CANN训练营】基于昇腾CANN平台的AI CPU算子开发

前言

介绍如何开发CANN AICPU自定义算子,以一个AICPU算子为示例进行讲解,分析+实现+测试验证一个端到端的完整开发流程。

概述

AI CPU算子,是运行在昇腾AI处理器中AI CPU计算单元上的表达一个完整计算逻辑的运算,如下情况下,开发者需要自定义AI CPU算子。

在NN模型训练或者推理过程中,将第三方开源框架转化为适配昇腾AI处理器的模型时遇到了昇腾AI处理器不支持的算子。此时,为了快速打通模型执行流程,用户可以通过自定义AI CPU算子进行功能调测,提升调测效率。功能调通之后,后续性能调测过程中再将AI CPU自定义算子转换成TBE算子实现。

某些场景下,无法实现在AI Core上运行的自定义算子(比如部分算子需要Complex32、Complex64类型,但AI Core指令不支持;再比如包含了大量标量计算的算子,而AI Core不擅长对标量进行处理),此时可以通过开发AI CPU自定义算子实现昇腾AI处理器对此算子的支持。

目标

能够基于AI CPU进行简单的算子开发的人员,可以达成:

  1. 学习AI CPU算子基本实现原理和实现方法。

  2. 能够基于课程中的样例,扩展进行其他自定义AI CPU算子的开发。

如果您具有如下技能,可以更好地完成学习:

  1. 具备C++程序开发能力

  2. 理解数学表达式

  3. 对机器学习、深度学习有一定的了解

  4. 了解Ascend平台运行流程和原理

  5. 了解Ascend平台的TBE自定义算子开发流程

算子的基本概念

image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

Ascend 310处理器架构逻辑

image.png
image.png
image.png
image.png

AI CPU算子开发流程

image.png

算子分析

image.png

目录结构介绍

image.png

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值