如何评估onnxruntime库并行推理多个模型的效率?
- 内容介绍
- 相关推荐
本文共计1879个文字,预计阅读时间需要8分钟。
1. 背景+需求: 针对视频形式的数据输入,需要对每帧图像进行多模型神经网络的推理,以获得预测结果。如何提升整个推理过程的效率,尝试了多种方案。
2. 硬件: 单显主机
1. 背景需求:针对视频形式的数据输入,对每一帧图像,有多个神经网络模型需要进行推理并获得预测结果。如何让整个推理过程更加高效,尝试了几种不同的方案。
硬件:单显卡主机。
2. 方案由于存在多个模型需要推理,但模型之间没有相互依赖关系,因此很容易想到通过并行的方式来提高运行效率。
对比了如下几种方案的结果,包括:
- 串行
- 线程
- 进程
- 协程
配置了 4 个体量相近的模型。
为了屏蔽读取和解码的时间消耗对最终结果的影响,提前读取视频并准备输入。
统计每个单独模型执行推理的累积时间,以及整体的运行时间。
本文共计1879个文字,预计阅读时间需要8分钟。
1. 背景+需求: 针对视频形式的数据输入,需要对每帧图像进行多模型神经网络的推理,以获得预测结果。如何提升整个推理过程的效率,尝试了多种方案。
2. 硬件: 单显主机
1. 背景需求:针对视频形式的数据输入,对每一帧图像,有多个神经网络模型需要进行推理并获得预测结果。如何让整个推理过程更加高效,尝试了几种不同的方案。
硬件:单显卡主机。
2. 方案由于存在多个模型需要推理,但模型之间没有相互依赖关系,因此很容易想到通过并行的方式来提高运行效率。
对比了如下几种方案的结果,包括:
- 串行
- 线程
- 进程
- 协程
配置了 4 个体量相近的模型。
为了屏蔽读取和解码的时间消耗对最终结果的影响,提前读取视频并准备输入。
统计每个单独模型执行推理的累积时间,以及整体的运行时间。

