[Xavier] Does USB camera collection need GPU involved? Can we limit the GPU usage in this process?

Here is my code, I just collect images through a USB camera (Intel Realsense D435if) on Jetson Xavier NX.

while True:
                # Wait for a new frame
                frames = pipeline.wait_for_frames(100000000)

To my knowledge, D435if will finish the ISP process in the camera board, so I think there should not be so many GPU usage during the collection procedure. However, my results shows that the higher FPS I set, the higher average GPU usage it has.

FPS GPU Usage
5 1.95
10 2.15
15 1.6
20 3.82
25 5.64
30 6.56
35 8.84
40 10.99
45 11.71
50 13.56
55 13.26
60 14.62

And I also check the CPU activity by nsys report, as shown in the following screenshot.

Do anyone konws how to NOT use GPU in this process? And why the image collection will use GPU and CUDA? I try to run export CUDA_VISIBLE_DEVICES="", then the collection program will keep blocking.

Help please!

Suppose it could be the software use GPU for post process.
You need to check by software developer and confirm the GPU usage by simple capture utility like v4l2-ctl.

Do you mean that the realsense sdk may use GPU to post process? I will check with v4l2-ctl.

Help!!! plz!!!

Do you confirm by v4l2-ctl?

Let’s continue discussion in
C++ collects video much faster than Python, is it reasonable?