原创作品,转载时请务必以超链接形式标明文章原始出处: http://www.dapalm.com/?p=193,作者:大数据,怕了么?
本手册为TensorRT 4.0.1.6 GA版英文手册翻译而来,博主英文水平一般般,主要作为备忘所用,分享出来以供更多开发者使用。TensorRT Developer Guide手册一共分为四个章节,主要内容在第二、三章,看懂这两章,写代码够用了。第一章为TensorRT综述,就是自吹有多牛逼。第四章为示例,介绍demo的代码结构及功能。开篇是目录,前三章每章为两到三篇,最后第四章示例,会拆分几个关键示例进行详细说明。
目录
第一章 什么是TensorRT?
1.1 TensorRT优势
TensorRT是一个优化推理引擎,它将训练好的神经网络模型,通过压缩、优化,最后部署一个没有框架开销的运行环境到产品中去。TensorRT合并层、优化卷积核选择,并根据指定精度(FP32、FP16和INT8)执行归一化和转换去优化的矩阵数学,以降低延迟,提高吞吐量和效率。
对于深度学习推理,有5个用于衡量软件的关键指标:
1.吞吐量
给定时间内的输出量。通常以推理/秒或样本/秒来衡量,每服务器吞吐量对于数据中心的成本效益的可扩展性至关重要。
2.效率
每单位功率提供的吞吐量,通常表示为性能/瓦特。效率是实现经济高效的数据中心扩展的另一个关键因素,因为服务器,服务器机架和整个数据中心必须在固定的功率预算内运行。
3.延迟
执行推理的时间,通常以毫秒为单位。低延迟对于提供快速增长的基于实时推理的服务至关重要。
4.准确性
训练有素的神经网络能够提供正确的答案。对于基于图像分类的用法,关键指标表示为Top-5或Top-1百分比。
5.内存使用情况
主机和设备内存取决于所使用的神经网络算法需要申请多少内存空间进行推理。这限制了单个神经网络和组合神经网络是否可以在给定的推理平台上运行。这对于需要多个网络且存储器资源有限的系统尤为重要 - 例如用于智能视频分析和多摄像机,多网络自动驾驶系统的级联多级检测网络。
使用TensorRT的可选方案包含:
‣使用训练框架本身进行推理。
‣编写专门用于执行网络的自定义应用程序
使用低级库和数学运算。
使用训练框架来执行推理很容易,但是在给定的GPU上&