【框架】:适用于端侧的深度学习推理框架:TensorRT

1.TensorRT是什么

TensorRT: GPU Inference Engine(简称GIE)

2.推断(Inference)可以做什么?

  1. 推断(Inference)的网络权值已经固定下来,无后向传播过程,因此可以:
    (1)模型固定,可以对计算图进行优化

    (2) 输入输出大小固定,可以做memory优化

  2. 推断(Inference)可以使用低精度的技术,另一方面是模型需要的空间减少,不管是权值的存储还是中间值的存储,应用更低的精度,模型大小会相应减小。

3.推断(Inference)可以在哪些方面优化?

第一,也是最重要的,它把一些网络层进行了合并。

第二,比如在concat这一层,可以取消掉。

第三,Kernel可以根据不同的batch size 大小和问题的复杂程度,去选择最合适的算法,TensorRT预先写了很多GPU实现,有一个自动选择的过程。

第四,不同的batch size会做tuning。

第五,不同的硬件如P4卡还是V100卡甚至是嵌入式设备的卡,TensorRT都会做优化,得到优化后的engine。
【框架】:适用于端侧的深度学习推理框架:TensorRT_第1张图片
【框架】:适用于端侧的深度学习推理框架:TensorRT_第2张图片
【框架】:适用于端侧的深度学习推理框架:TensorRT_第3张图片
【框架】:适用于端侧的深度学习推理框架:TensorRT_第4张图片
【框架】:适用于端侧的深度学习推理框架:TensorRT_第5张图片

你可能感兴趣的:(深度学习,深度学习)