当前位置: 首页 > 专利查询>中山大学专利>正文

一种面向华为昇腾加速卡的自动编译运行C/C++代码的方法技术

技术编号:33373313 阅读:25 留言:0更新日期:2022-05-11 22:40
本发明专利技术公开了一种面向华为昇腾加速卡的自动编译运行C/C++代码的方法,通过昇腾加速卡处理器向上层提供的Ascend平台及其自定义算子的特点,结合C/C++语言编译,以算子函数开发和调用的整体流程并整合主机和昇腾加速卡处理器的数据管理和运行调度能力,实现在昇腾加速卡上执行自定义的函数代码;其中,包括自定义算子函数的统一描述模型、针对主机和昇腾加速卡处理器内存管理的数据模型、针对Ascend平台自定义算子的自动化配置程序以及自定义算子的调用执行系统。算子的调用执行系统。算子的调用执行系统。

【技术实现步骤摘要】
一种面向华为昇腾加速卡的自动编译运行C/C++代码的方法


[0001]本专利技术涉及计算机
,具体涉及一种面向华为昇腾加速卡的自动编译运行C/C++代码的方法。

技术介绍

[0002]昇腾加速卡是华为公司研发的高性能低功耗的AI加速模块,提供了超强的计算能力,基于CANN(AI场景的异构计算架构)提供了多层次的编程接口,以供构建AI应用。目前昇腾加速卡主要使用于需要大算力的AI模型的构建、训练和推理。近来并行计算应用、高性能计算应用的需求日渐提高,这两类应用也都需要较大的计算能力支持,作为国产化的高算力机器代表,昇腾加速卡也是未来运行这两类应用的一个可选项。
[0003]昇腾加速卡通过CANN向上层提供了统一的编程语言AscendCL, AscendCL提供的C语言API库里的算子都是目前存在的具有普用性的算子,这对于构建模型网络是可用的,但对于并行高性能应用并不适用。可以通过向AscendCL注册自己的函数来实现自定义算子,从而使用Ascend搭建更具特殊性的高性能应用。
[0004]AscendCL支持自定义C/C++本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种面向华为昇腾加速卡的自动编译运行C/C++代码的方法,其特征在于,通过昇腾加速卡处理器向上层提供的Ascend平台及其自定义算子的特点,结合C/C++语言编译,以算子函数开发和调用的整体流程并整合主机和昇腾加速卡处理器的数据管理和运行调度能力,实现在昇腾加速卡上执行自定义的函数代码,该方法实现最终为一个软件框架的形式;;其中,包括自定义算子函数的统一描述模型、针对主机和昇腾加速卡处理器内存管理的数据模型、针对Ascend平台自定义算子的自动化配置程序以及自定义算子的调用执行系统。2.根据权利要求1所述的面向华为昇腾加速卡的自动编译运行C/C++代码的方法,其特征在于,所述自定义算子函数的统一描述模型是为了在满足Ascend平台规定的自定义算子约束的前提下,适应各种类型参数的自定义函数;通过模板编程和多余参数的方式,使得算子函数统一模型可以涵括各种类型数据和规范化入参和返回值。3.根据权利要求1所述的面向华为昇腾加速卡的自动编译运行C/C++代码的方法,其特征在于,所...

【专利技术属性】
技术研发人员:张泽荣黄聃陈志广卢宇彤
申请(专利权)人:中山大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1