深度学习编译器及TVM 介绍

本文介绍了深度学习框架,如TensorFlow、PyTorch等,并探讨了如何解决编译器对多种语言的适配问题。重点讲解了TVM,包括其作为深度学习编译器的角色、NNVM编译器的工作原理,以及如何导入PyTorch模型并编译到LLVM后端进行硬件上的推理。文章还展示了如何在目标硬件上运行模型并输出分类结果。
摘要由CSDN通过智能技术生成

一、现有的框架有哪些

(1)Google的TensorFlow
(2)FaceBook的Pytorch
(3)亚马逊的MxNet
(4)百度的Paddle
(5)旷视的MegEngine
(6)华为的Mindspore
(7)一流科技的OneFlow

二、怎么解决编译器对多种语言的适配问题

(1)解决方法:把编译器抽象的分为编译器前端,编译器中端,编译器后端,并引入

•编译器前端:接收C/C++/Java等不同语言,进行代码生成,吐出IR
•编译器中端:接收IR,进行不同编译器后端可以共享的优化,如常量替换,死代码消除,循环优化等,吐出优化后的IR
•编译器后端:接收优化后的IR,进行不同硬件的平台相关优化与硬件指令生成,吐出目标文件
(2)编译器抽象图(借用蓝色(知乎ID)大佬的图:)
在这里插入图片描述
(3)深度学习编译器抽象图

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值