Isaac Sim 6.0: Severe FPS drop when combining Actor SDG warehouse scene and forklift with ROS 2 Action Graphs

Hi everyone,

I am working on a robotics simulation in NVIDIA Isaac Sim 6.0 where I need to combine the following components:

  • A warehouse environment
  • 1–2 animated/moving actors using Actor SDG
  • A forklift that I can control through ROS 2
  • Action Graphs for ROS 2 topics and a LiDAR sensor

The problem is that the simulation runs normally at approximately 35–45 FPS before adding the forklift/ROS 2 control setup. However, once I combine the warehouse, Actor SDG actors, and the forklift with the ROS 2 Action Graph, the FPS drops dramatically to approximately 2 FPS, and sometimes as low as 0.6–0.8 FPS.

This happens even with only 1–2 actors in the scene. Even with RTX 6000 Blackwell, the FPS are lower.

Current setup

Isaac Sim: 6.0

GPU: RTX A5000
Simulation: Warehouse environment + moving actors + forklift
Actor simulation: Actor SDG / animated actors
Robot: Custom Forklift
Control: ROS 2 → Isaac Sim Action Graph → forklift
Problem: Severe real-time performance degradation

I am trying to determine whether this is primarily caused by:

  1. GPU rendering/RTX load
  2. CPU/PhysX simulation
  3. Actor SDG / animation processing
  4. ROS 2 bridge or OmniGraph execution
  5. Action Graph nodes being evaluated too frequently
  6. Warehouse scene complexity / colliders
  7. Sensors, cameras, or SDG annotators
  8. Some interaction between the above systems

What I have tried

I have already tested the scene incrementally, and the FPS degradation becomes significant when the forklift and actor simulation are used together.

I would appreciate advice on how to identify the actual bottleneck and what configuration/workaround would be recommended for this type of setup.

In particular:

  • Is there a recommended way to profile CPU vs GPU bottlenecks in Isaac Sim 6.0?
  • Are there specific Actor SDG settings that significantly affect performance?
  • Should ROS 2 Action Graph execution be triggered using On Physics Step, On Playback Tick, or another mechanism for a vehicle controller?
  • Can ROS 2 publishing/subscribing at every simulation frame cause this magnitude of performance degradation?
  • Are there recommended ways to reduce Actor SDG/animation update frequency while maintaining realistic actor motion?
  • Would reducing physics frequency, rendering resolution, camera/SDG frequency, or sensor update rates help?
  • Are there known performance considerations when combining Actor SDG + PhysX + ROS 2 + warehouse environments in Isaac Sim 6.0?

Ultimately, my goal is to run a warehouse scenario where people move around the forklift while the forklift is controlled through ROS 2, ideally at a stable real-time frame rate.

Any suggestions on profiling methodology, known bottlenecks, or recommended architecture/workarounds would be greatly appreciated.

Thank you!