Why does the NVIDIA L40S exhibit higher CPU utilization than the RTX 6000 Ada in identical workloads?

Important: Isaac Sim support

Note: For Isaac Sim support, the community is gradually transitioning from this forum to the Isaac Sim GitHub repository so that questions and issues can be tracked, searched, and resolved more efficiently in one place. Whenever possible, please create a GitHub Discussion or Issue there instead of starting a new forum topic.

Note: For any Isaac Lab topics, please submit your topic to its GitHub repo ( GitHub - isaac-sim/IsaacLab: Unified framework for robot learning built on NVIDIA Isaac Sim ) following the instructions provided on Isaac Lab’s Contributing Guidelines ( Contribution Guidelines — Isaac Lab Documentation ).

Please provide all relevant details below before submitting your post. This will help the community provide more accurate and timely assistance. After submitting, you can check the appropriate boxes. Remember, you can always edit your post later to include additional information if needed.

5.1.0

Operating System

Ubuntu 22.04

Hi all,

I’m running Isaac Sim inside a Kubernetes pod with WebRTC streaming, and ROS nodes deployed in separate pods for robotics control and sensor data exchange. The setup is identical across two GPUs: L40S and RTX 6000 Ada, but I consistently observe higher CPU utilization on the host when using L40S.


Setup Details

  • Environment:

    • Isaac Sim container in Kubernetes

    • ROS nodes in separate pods communicating via DDS/ROS bridge

    • WebRTC for remote visualization

  • Workload: Robotics simulation with GPU physics, sensors (camera + Lidar), and rendering

  • Profiling tools: nvidia-smi dmon, Nsight Systems, Kubernetes metrics


Observations

  • RTX 6000 Ada: CPU usage stays moderate (20–40%)

  • L40S: CPU threads spike to near 100%, causing simulation timing issues and frame drops during WebRTC streaming and ROS message handling


Questions

  • Could this be due to driver optimizations, PCIe latency, or Isaac Sim pipeline tuning for RTX cards vs L-series?

  • Does WebRTC NVENC encoding or ROS DDS communication overhead behave differently on L40S?

  • Any recommended Isaac Sim settings, ROS bridge optimizations, or Kubernetes resource tweaks to reduce CPU load?

  • Has anyone profiled Isaac Sim + ROS + WebRTC in Kubernetes on L40S and found a solution?


Any insights or best practices would be greatly appreciated!
—Harshith R.

Hi Harshith,

It seems like there are a lot of variables here, and difficult to pin down where the difference in CPU usage comes from. I’m not aware of any architectural or driver differences that would cause such a big delta in CPU usage. Here’s a few things to check:
-Make sure the driver version is consistent between the two, and maybe update to the newest compatible driver

  • Looks like you’re already using NSight, that tool can help you pinpoint where in your code the CPU usage spikes come from.
  • Can you run outside Kubernetes to ensure there isn’t anything different in your Kubernetes configuration?
  • Does the same thing happen in other cases? Without DDS? With other inference loads?

Also, how are you switching GPUs? Are they both on the same computer?

1 Like

Hello!

We noticed that this topic hasn’t received any recent updates from anyone reporting this issue, so we are closing it for now to help keep the forum organized.

If you are still experiencing this issue or have related questions, please create a GitHub Discussion or Issue in the Isaac Sim repository and include a link to this topic along with updated details. Mentioning or linking to this original topic provides helpful context and makes it easier for others to assist you.

Thank you for being part of the NVIDIA Isaac Sim community.

Best regards,
The NVIDIA Isaac Sim Forum Team