深度解读昇腾CANN计算图优化技术,提升算法计算效率

随着大模型时代的到来,AI算法的能力上限不断被刷新,算力门槛也在持续飙升,如何在有限的计算资源的条件下优化和训练模型显得尤其重要。面向计算图编译和运行优化场景,昇腾AI异构计算架构CANN(Compute Architecture for Neural Networks)开放GE(Graph Engine)图引擎,通过计算图优化、计算图下沉、内存复用和多流水并行等技术可将计算图执行性能提升20%,同时开放图引擎接口支持开发者自定义图结构,获得最优执行性能。

基于GE图引擎能力,昇腾已支持TensorFlow计算图模式,并原生支持PyTorch框架。开发者只需要使用PyTorch原生的torch.compile接口,昇腾AI处理器后端就会对PyTorch生成的计算图进行接管、转化为AIR,再进行端到端的图编译深度优化,降低内存需求、提升计算性能,同时最大程度减少开发者的修改工作。接下来,我们将分几期内容深度解读CANN的GE图引擎的诸多开放能力和关键技术,从而帮助开发者优化算法编译和运行效率。

1 Eager模式与图模式

当前业界主流的深度学习框架(例如PyTorch、TensorFlow等)都提供了Eager(Eager Execution,即时执行)模式与图模式。Eager模式的特点是每个计算操作下发后立即执行,图模式的特点是所有计算操作构造成一张图,以图的粒度下发执行。Eager模式的痛点在于没有图的全局视角,一些融合、优化手段无法高效开展。成图以后,编译器的视角更广,计算操作可以更好地化简、优化,从而获得更好的执行性能。

GE针对图进行了系列优化,包括通用的图优化技术“公共子表达式消除”、“剪枝”、“死边消除”,以及特有的Shape优化技术、内存优化技术等。下面对GE的图优化技术详细展开介绍。

2 GE支持通用图优化技术

2.1 常量折叠

常量折叠核心为在编译阶段直接计算并替换常量表达式的值,从而减少运行时的计算负担。例如,表达式2+3会在编译时被直接替换为

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值