GStreamer NVIDIA elements are slower in Jetpack 5.0.2 than in Jetpack 4.6. Is it normal?

Dear all,

I am porting an image processing pipeline in GStreamer that uses CUDA, OpenCV with CUDA compiled and the GstCUDA framework. However, I have noticed that my performance went down from 36 fps to 24 fps. Debugging a bit on it, I noticed that the nvvidconv processing time went up. The CUDA-based elements, instead, are faster (which makes me happy).

For a simple pipeline like this one:

gst-launch-1.0 filesrc location=/tmp/sample-7k.jpg ! nvjpegdec ! imagefreeze ! \
               "video/x-raw,width=7008,height=2160" ! nvvidconv !              \
               "video/x-raw(memory:NVMM),width=7008,height=2160,format=RGBA" ! \
               perf ! queue ! fakesink sync=false

The framerate achieved by JP 5.0.2 is 38.4 fps, whereas, for JP 4.6, the framerate is 42.1 fps. The processing time of nvvidconv is 26.7 ms and 23.5 ms, respectively.

I am using the highest power profile (20W 6 Core) and Jetson Clocks to boost the clocks. Also, I have the gnome desktop turned off, and the environment is quite similar except for the Jetpack and its components (like CUDA).

Is this behaviour expected? Is it possible to boost these NVIDIA elements?

Best regards,

1 Like

Please set VIC to max clock and try again:
Nvvideoconvert issue, nvvideoconvert in DS4 is better than Ds5? - #3 by DaneLLL

Thanks @DaneLLL

I thought it was already at maximum clock because of jetson_clocks. Through the following commands

echo on > /sys/devices/platform/13e10000.host1x/15340000.vic/power/control
echo userspace > /sys/devices/platform/13e10000.host1x/15340000.vic/devfreq/15340000.vic/governor
echo 601600000 > /sys/devices/platform/13e10000.host1x/15340000.vic/devfreq/15340000.vic/max_freq
echo 601600000 > /sys/devices/platform/13e10000.host1x/15340000.vic/devfreq/15340000.vic/userspace/set_freq

I have boosted the clocks and it is outperforming now (running at 75 fps). I have modified the commands because the paths were not the right ones. So, just for other users, these are the commands.

This is for: Jetson Xavier NX + Jetpack 5.0.2

Best regards,

1 Like

If VIC is heavily used in your use-case, please refer to this post to enable it at maximum clock after booting:
Camera's frame rate unstable - #24 by DaneLLL

Thanks for the reference :)