Tenserrt trt使用engine infer时候报错
问题
构建YOLOV5s模型,并试图使用trt推理服务上,出现错误
[TensorRT] ERROR: ../rtSafe/coreReadArchive.cpp (38) - Serialization Error in verifyHeader: 0 (Version tag does not match)
[TensorRT] ERROR: INVALID_STATE: std::exception
[TensorRT] ERROR: INVALID_CONFIG: Deserialize the cuda engine failed.
报错原因:
编译engine时候的使用的tensorrt版本与使用trt推理时候的tensorrt版本不一致,需要一致才行

解决办法
- 确认每个环节的tensorrt版本,确保一致性;
- 进入项目下的build文件夹,看看yolov5编译文件的动态链接库
ldd yolov5

可以看到build的时候用的是tensorrt 6.0版本,而python安装的tensorrt是7.0版本,版本不匹配导致这个问题
基于此,去/usr/local/cuda/lib64文件夹下,将与tensorrt6.0相关的文件删除,解决上述问题
修改完后正常运行,速度变得很快


1387





