1. 程式人生 > >TensorRT 系列之入門篇-優化特點

TensorRT 系列之入門篇-優化特點

一 tensorTR對於kernel launch以及每層tensor data讀取的速度不對稱的問題的解決: (1)(縱向融合)通過融合相同順序的操作來減少Kernel launch的消耗以及避免層之間的讀寫操作.如卷積;bias和Relu層可以融合成一個kernel,這裡稱之為CBR (2)(橫向融合)TensorRT會去挖掘輸入資料且filter大小相同但weights不同的層,對於這些層不是使用三個不同的kernel而是使用一個kernel來提高效率 (3)通過預分配輸出快取以及跳躍式的寫入方式來避免這次轉換

二 在前向傳播中採用FP16或者INT8精度計算從而獲得更小的模型,低的視訊記憶體佔用率和延遲以及更高的吞吐率

優化結果

上圖為基於Resnet50網路,分別在CPU、V100+TensorFlow、V100+TensorRT上進行推理時的效能比較,縱軸為每秒處理的圖片數量。相較於CPU和TensorFlow,TensorRT可以帶來40倍和18倍的吞吐率的提升,而這部分的提升只需要在擁有GPU的前提下使用TensorRT即可免費獲得。