Performance Issue with Stereoscopic Camera on Jetson Orin Nano: Delays in Alternate Frame Display at Higher Resolutions

I have interfaced a stereoscopic camera module to the Jetson Orin Nano and both the camera visuals are interlaced and is allowed to display the frames alternately on monitor to make up an active 3D shutter demo.

I am able to generate a good smooth displaying demo on 540*320 resolution but while on increasing the camera resolutions to 720p, FullHD, and 2K, the performance of alternate displaying of frames decreases by some delay in between the frame renders. I have used pinned array memory for GPU faster data transfer to and from the CPU.

what would be the reason for this?
Can anyone suggest what plays in between the frames to slow render?

How can I overcome from this and make a solution?

hello kannan1,

let’s narrow down the issue, is this due to display rendering? please try encode the stream locally for checking.

besides,
you may test with below commands to boost all the VI/CSI/ISP clocks.

sudo su
echo 1 > /sys/kernel/debug/bpmp/debug/clk/vi/mrq_rate_locked
echo 1 > /sys/kernel/debug/bpmp/debug/clk/isp/mrq_rate_locked
echo 1 > /sys/kernel/debug/bpmp/debug/clk/nvcsi/mrq_rate_locked
echo 1 > /sys/kernel/debug/bpmp/debug/clk/emc/mrq_rate_locked
cat /sys/kernel/debug/bpmp/debug/clk/vi/max_rate |tee /sys/kernel/debug/bpmp/debug/clk/vi/rate
cat /sys/kernel/debug/bpmp/debug/clk/isp/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/isp/rate
cat /sys/kernel/debug/bpmp/debug/clk/nvcsi/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/nvcsi/rate
cat /sys/kernel/debug/bpmp/debug/clk/emc/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/emc/rate

Hi,

Here are the results:
root@ubuntu:/home/jetson# echo 1 > /sys/kernel/debug/bpmp/debug/clk/vi/mrq_rate_locked
root@ubuntu:/home/jetson# echo 1 > /sys/kernel/debug/bpmp/debug/clk/isp/mrq_rate_locked
root@ubuntu:/home/jetson# echo 1 > /sys/kernel/debug/bpmp/debug/clk/nvcsi/mrq_rate_locked
root@ubuntu:/home/jetson# echo 1 > /sys/kernel/debug/bpmp/debug/clk/emc/mrq_rate_locked
root@ubuntu:/home/jetson# cat /sys/kernel/debug/bpmp/debug/clk/vi/max_rate |tee /sys/kernel/debug/bpmp/debug/clk/vi/rate
550400000
root@ubuntu:/home/jetson# cat /sys/kernel/debug/bpmp/debug/clk/isp/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/isp/rate
729600000
root@ubuntu:/home/jetson# cat /sys/kernel/debug/bpmp/debug/clk/nvcsi/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/nvcsi/rate
214300000
root@ubuntu:/home/jetson# cat /sys/kernel/debug/bpmp/debug/clk/emc/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/emc/rate
2133000000

please take a look at it.

Thanks.

hello kannan1,

did you meant issue persist after boosting clocks?
did you try encode the stream locally for checking?

Yes, no further change.

Is that issue may due to memory bandwidth?

Higher resolutions consume more memory bandwidth. If the memory bandwidth is insufficient to handle the increased data rates, this can cause delays in frame rendering.

Please comment your thoughts on it, does the orin nano has the capability or not?

hello kannan1,

why don’t you encode the stream, disable preview rendering for issue narrow down?

please try encode the stream locally for checking.

How do i do this?
Can i play me demo and do the set of commands to boost the clock rate?
Is that what you need me to check?

you may see-also developer guide, Software Encode in Orin Nano.
since you’re using Orin Nano, which does not have the NVENC engine.