Torch-TensorRT是pytorch官方對tensorrt的支持,將tensorrt推理加速功能直接集成進(jìn)了pytorch。但是官方只提供linux預(yù)編譯二進(jìn)制速勇,而缺乏對Windows編譯支持,如果按照官方指引,不出意外將會得到一堆編譯錯誤区匣,本文記錄一下幾點技巧
1. 安裝TensorRT,CUDA,CUDNN
本步驟略過,在Nvidia官網(wǎng)安裝好之后添加到PATH即可
2. 指定TORCH_DIR
下載大于2.0版本的libtorch
image.png
在cmake-gui中指向下載的libtorch目錄蒋院,注意必須為libtorch/share/cmake/Torch
image
修改mkl鏈接庫
如果你沒有安裝mkl亏钩,可以直接使用conda install mkl
安裝,無需去intel官網(wǎng)注冊下載欺旧,但要注意隨后在Visual Studio中更改mkl鏈接庫的名字姑丑。需要更改的有torch_trt
、torchtrt_plugin
辞友、torchtrt_runtime
栅哀、torchtrtc
這幾個解決方案,給mkl_*.lib
加上_dll
后綴即可称龙。
image.png
官方的Bug
官方的cmake其實留了一個bug留拾,那就是core/lowering/passes
忘了編譯unpack_scaled_dot_product_attention.cpp
,會導(dǎo)致后面找不到函數(shù)的reference鲫尊。我已經(jīng)修復(fù)了這個問題并給官方提交了PR痴柔,相信不久會合入master.