Ascend C 算子开发基础:定义、场景与硬件架构
Ascend C 是 CANN 针对算子开发场景推出的编程语言,原生支持 C/C++ 标准规范,兼具开发效率与运行性能。基于 Ascend C 编写的算子程序,经编译器编译和运行时调度后,可在昇腾 AI 处理器上高效执行,帮助开发者基于昇腾硬件实现自定义创新算法,这类算子统称为Ascend C 算子。推理模型转换场景:将 TensorFlow、Caffe、ONNX 等第三方框架模型通过 ATC 工
一、Ascend C 算子核心定义
Ascend C 是 CANN 针对算子开发场景推出的编程语言,原生支持 C/C++ 标准规范,兼具开发效率与运行性能。基于 Ascend C 编写的算子程序,经编译器编译和运行时调度后,可在昇腾 AI 处理器上高效执行,帮助开发者基于昇腾硬件实现自定义创新算法,这类算子统称为Ascend C 算子。
Ascend C 算子开发优势

二、自定义算子开发场景
通常情况下开发者无需自行开发算子,但以下场景需考虑自定义算子开发:
- 推理模型转换场景:将 TensorFlow、Caffe、ONNX 等第三方框架模型通过 ATC 工具转换为昇腾离线模型时,遇到平台不支持的算子。
- 推理后处理场景:应用程序中需通过特定数学运算(如从分类结果中查找 Top-5 最大值、数据类型转换)实现后处理逻辑,可通过自定义算子利用昇腾硬件加速。
- 训练脚本迁移场景:将 TensorFlow、PyTorch 等框架的网络训练脚本迁移至昇腾平台时,存在不支持的算子。
- 性能优化场景:网络调优过程中发现某内置算子性能较低,需重新开发高性能算子替换。
三、昇腾硬件核心架构
(一)昇腾硬件整体逻辑架构
昇腾硬件包含系统控制处理器(Control CPU)、AI 计算核心(AI Core)、AI 处理器(AI CPU)、层次化片上缓存 / 缓冲区、数字视觉预处理模块(DVPP)及 I/O 接口(PCIe、USB、网卡接口等),各组件通过内部总线协同工作,其中AI Core 是计算核心,承担主要的并行计算任务。
(二)AI Core 内部核心结构

训练营简介
2025 年昇腾 CANN 训练营第二季,基于 CANN 开源开放全场景,推出 0 基础入门系列、码力全开特辑、开发者案例等专题课程,助力不同阶段开发者快速提升算子开发技能。获得 Ascend C 算子中级认证,即可领取精美证书,完成社区任务更有机会赢取华为手机,平板、开发板等大奖。
报名链接
https://www.hiascend.com/developer/activities/cann20252?tab=overview
更多推荐



所有评论(0)