在一个 GPU 上加载 TRT 引擎以进行两次推理的最佳方法是啥?
Posted
技术标签:
【中文标题】在一个 GPU 上加载 TRT 引擎以进行两次推理的最佳方法是啥?【英文标题】:What is the best way to load TRT engine for two inference on one GPU?在一个 GPU 上加载 TRT 引擎以进行两次推理的最佳方法是什么? 【发布时间】:2020-06-28 06:49:09 【问题描述】:我用的是TRT6.0.1.5和2080Ti GPU,想加载一个引擎文件
由于我有两个摄像头进行实时检测,以下是我尝试过的
加载一次引擎并使用相同的反序列化引擎来检测 它最终会崩溃
将引擎分别加载到两个变量 第一个摄像头运行正常,也能正常检测物体 但是第二个摄像头什么也没检测到,但它没有崩溃。
如何正确加载一个引擎文件并在一台机器上单独运行推理? 或者可能创建不同的执行上下文?
【问题讨论】:
【参考方案1】:您需要在两个单独的视频流上运行检测,对吗? 如果我是你,我只会在你序列化为 TensorRT 时更改网络上的批量大小,在本例中为两个。 然后在运行两个流时,您只能使用一个具有不同批量大小的网络。比如:
tContext->execute(batch_size, inference_buff.data())
您的inference_buff
将包含两个图像流的数据。
【讨论】:
以上是关于在一个 GPU 上加载 TRT 引擎以进行两次推理的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章