神经网络部署框架
文章平均质量分 85
主要研究介绍TVM, Tengine等神经网络模型部署框架的代码及原理等
Artyze
你知道dota的artyzee吗?
展开
-
Transformer量化部署初步探讨
transformer部署探讨原创 2022-07-23 15:51:48 · 2953 阅读 · 3 评论 -
TVM系列 - 图优化 - 算子融合
TVM系列 - 图优化 - 算子融合图优化综述声明一下,本文所有的理解都是基于个人理解。图优化算是一个推理框架前端比较成熟的操作了,一般来说,针对模型做图优化有两个目的(对于通用框架来说,就加速减少计算一个目的了):减少Node的数量, 不管是算子融合,还是无效节点去除,共同的目的就是减少整个graph中node的数量,因为对于框架来说,从一个node到另一个node之间就意味着数据的搬运。举个例子,我们知道算子合并最经典的就是将BN层融合到Conv层,我们姑且不论融合后计算量的减少,单单是减少了原创 2020-09-28 15:44:43 · 12777 阅读 · 11 评论 -
Tengine Convert Tools代码走读-图优化篇
为了与TVM进行对比,笔者决定同时看一下Tengine是如何做的。首先还是从图优化入手。Tengine的整体架构根据架构以及代码发现,Tengine将模型转换分离出来了,叫做Tengine-Convert-ToolsTengine-Convert-Tools Github有一说一,看的出来,Tengine的开发团队应该不是特别多,时间紧任务重,几乎所有的函数都没有注释(同时也没文档),虽然靠函数名也能猜出来,但是对于刚开始看的同学来说确实不太友好,对比来说,TVM或者任何其他的框架都做的要好很多。原创 2020-10-09 21:09:15 · 712 阅读 · 2 评论 -
TVM系列 - 量化
TVM系列 - 量化TVM量化原理TVM量化现状TVM量化原理介绍TVM量化代码解析TVM量化原理关于量化的方式其实已经有足够的文章去了解目前最主流的两种:离线量化及训练时量化(大家应该能理解,其实就是伪量化),而tvm的作者之一也对这些文章有一个初步的汇总:tvm作者关于量化方式的讨论,这部分不做过多讨论,直接进入tvm量化的部分TVM量化现状事实上,可能tvm团队将主要精力放到了autotvm,以框架整体的优化上(毕竟这部分才是tvm的特点呀),tvm的单纯量化效果并不理想,不仅精度有所下降,正原创 2020-09-25 14:27:03 · 4027 阅读 · 4 评论