The issue pertains to a memory leak that arises when employing the "delete_prim" and "create_prim" functions


When I employ the “delete_prim” function, GPU memory doesn’t reduce before deleting assets.
I think this problem caused by add ArticulationPrimView or RigidbodyPrimView…
How I can remove the memory leak after delete_prim?

Hi @gwangin - The delete_prim function in Isaac Sim deletes the primitive from the scene graph, but it does not immediately free up the GPU memory. The GPU memory is managed by the graphics driver and it is not directly controllable by the application. The driver decides when to free up the memory based on its own memory management strategy.

  1. Use the unload_asset function to unload the asset from the asset manager. This will free up the memory used by the asset.

  2. Use the destroy function to destroy the ArticulationPrimView or RigidbodyPrimView. This will free up the memory used by the view.

  3. Use the gc.collect() function in Python to force a garbage collection. This can help to free up the memory used by the Python objects.

  4. If you are using a lot of textures or materials, try to reduce their resolution or complexity. This can significantly reduce the GPU memory usage.