The Orin has JetPack 5.1.2 (R35.4.1, Ubuntu 20.04, OpenCV4.5.4, Cuda 11.4.19, TensorRT 8.5.2 cuDNN v8.6.0) Kernel 5.10-tegra. The process is running inside a docker container with the same base image as the host (Ubuntu 20.04)
I have also noticed this during similar projects on previous boards (Xavier) natively on the host so I can’t say that running this from within a docker container is the issue.
Any pointers is appreciated.
How does docker negotiate with the host regarding thread prioritization?
Should modifying rtpriority be done inside or outside the container?
/proc/sys/kernel/sched_rt_runtime_us is indeed -1, both inside and outside the container.
What do you mean by ‘WAR’ being applied? Is this a system level Nvidia configuration?
Unfortunately I cannot share any source just yet. I will see if I can get a simpler test running that I can share with you.
thread_test_main.txt (852 Bytes)
I had a minute to make this quick test. .cpp files are not allowed to be uploaded so I renamed it to a text file. We are using ROS2 for a project so I built this using colcon.
With this script, I am able to set realtime thread priority outside the container. Within the container, I can also set realtime thread priority only if I prefix running the command with sudo.
What permissions are required to set realtime thread priority?
Just want to double-check some details before reproducing.
Can this issue be reproduced with a container other than ROS, such as the l4t container below?
When launching the container, did you run docker with sudo?
If yes, sudo won’t be recognized inside the container. So how do you run it with the sudo prefix?