这是一个从摄像机向显示器进行流式传输并且进行 RGB 数据可视化的简单示例。本示例演示了对 节 3 所列性能指标进行基准测试的具体方法。本示例的 GStreamer 流水线元件如下所示。
相应的 GST 命令可通过 GitHub 存储库 [6]获取。为了对性能指标进行基准测试,可以在一个终端控制台运行该命令,同时在另一个终端控制台运行 perf_stats 工具 [5]。
- 在第一个控制台打印出流水线吞吐量 (fps),如 图 5-2 所示。与此同时,在显示屏显示吞吐量。
- 对于 CPU 负载、HWA 负载以及 DDR 利用率,可以在第二个控制台打印,同时在显示屏显示。GST 命令运行期间,该等性能指标会不断更新。图 5-3 显示了单个更新的屏幕截图。
- 停止 GST 流水线后,运行“/opt/edgeai-gst-apps/scripts/gst_tracers/parse_gst_tracers.py /run/trace.log”,以便生成流水线中每个元素的延迟测量值,如 图 5-4 所示。图中所示 tiovxisp0 (VISS)、tiovxldc0 (LDC) 和 tiovxmultiscaler0 (MSC) 的延迟符合预期:
- 对于 VISS 与 LDC,延迟时间约为 5MPixel/375MHz,开销约为 14-15msec,其中,375MHz 是 ISP(VPAC) 的工作时钟频率。
- 对于 MSC,可以同时或单独处理 YUV 数据。单独处理时(默认配置),亮度 (Y) 平面延迟约为 14-15msec,与 VISS 和 LDC 相同,而色度 (UV) 平面延迟约为亮度平面延迟的一半,即:7msec。因此,MSC 的总延迟约为 21msec。通过配置 MSC 同时处理两个平面,可以将延迟缩短至 14msec。