Spherical Video PTZ: Performance - Jetson AGX Xavier
Benchmark environment
The measurements are taken considering the following criteria:
- Average behaviour: measurements considering typical image processing pipelines.
Instruments:
- GPU: Jtop
- CPU: RidgeRun Profiler
- RAM: RidgeRun Profiler
- Framerate: GstShark
Engine wrapper
As mentioned previously, the Spherical Video PTZ features an engine wrapper, designed for application development. This section aims to conduct performance measurements using the average value obtained after processing the input image through the Process method of the Spherical Video PTZ engine wrapper. Below is the table displaying the results:
n | Used PTZ properties | Input size (px) | Output size (px) | RAM (MiB) | GPU | CPU | Avg processing time (us) |
---|---|---|---|---|---|---|---|
1 | No | 2000x1000 | 250x250 | (phys) 121.00 | (Usage) 1.18 % (VRAM) 7.00 MiB | (all) 2.37 % (core) 18.94 % | 101338 |
2 | No | 2000x1000 | 500x500 | (phys) 124.00 | (Usage) 1.31 % (VRAM) 7.00 MiB | (all) 2.67 % (core) 21.40 % | 100963 |
3 | No | 4000x2000 | 250x250 | (phys) 168.00 | (Usage) 1.73 % (VRAM) 7.00 MiB | (all) 4.23 % (core) 33.81 % | 100781 |
4 | No | 4000x2000 | 500x500 | (phys) 173.00 | (Usage) 2.24 % (VRAM) 8.00 MiB | (all) 4.78 % (core) 38.26 % | 100765 |
5 | Yes | 2000x1000 | 250x250 | (phys) 122.00 | (Usage) 2.60 % (VRAM) 6.00 MiB | (all) 2.02 % (core) 16.20 % | 100755 |
6 | Yes | 2000x1000 | 500x500 | (phys) 121.00 | (Usage) 2.10 % (VRAM) 6.00 MiB | (all) 1.81 % (core) 14.46 % | 100515 |
7 | Yes | 4000x2000 | 250x250 | (phys) 172.00 | (Usage) 1.98 % (VRAM) 7.00 MiB | (all) 3.77 % (core) 30.15 % | 100297 |
8 | Yes | 4000x2000 | 500x500 | (phys) 173.00 | (Usage) 2.87 % (VRAM) 7.00 MiB | (all) 3.42 % (core) 27.37 % | 100184 |
Gstreamer element: rrpanoramaptz
Processing time:
Processing time without ptz transformations(2000x1000):
GST_DEBUG="GST_TRACER:7" GST_TRACERS="proctime" gst-launch-1.0 videotestsrc is-live=true num-buffers=200 ! queue max-size-buffers=0 max-size-time=0 max-size-bytes=0 ! rrpanoramaptz ! "video/x-raw,width=2000,height=1000" ! fakesink
The graph depicts individual processing times for each element. For a more accurate representation, the average processing times in milliseconds (ms) are as follows:
- queue0: 0.598 ms
- rrpanoramaptz0: 3.146 ms
- capsfilter0: 0.116 ms
Framerate:
Framerate: 30 fps (2000x1000):
GST_DEBUG="GST_TRACER:7" GST_TRACERS="framerate" gst-launch-1.0 videotestsrc is-live=true num-buffers=200 ! queue max-size-buffers=0 max-size-time=0 max-size-bytes=0 ! rrpanoramaptz ! "video/x-raw,width=2000,height=1000" ! fakesink
Framerate: 30 fps (1000x500 - 2000x1000):
GST_DEBUG="GST_TRACER:7" GST_TRACERS="framerate" gst-launch-1.0 videotestsrc is-live=true num-buffers=300 ! queue max-size-buffers=0 max-size-time=0 max-size-bytes=0 ! "video/x-raw,width=1000,height=500,framerate=30/1" ! rrpanoramaptz ! "video/x-raw,width=2000,height=1000,framerate=30/1" ! fakesink
Framerate: 60 fps (2000x1000):
GST_DEBUG="GST_TRACER:7" GST_TRACERS="framerate" gst-launch-1.0 videotestsrc is-live=true num-buffers=300 ! queue max-size-buffers=0 max-size-time=0 max-size-bytes=0 ! rrpanoramaptz ! "video/x-raw,width=2000,height=1000,framerate=60/1" ! fakesink