diff --git a/.github/workflows/license-exceptions.json b/.github/workflows/license-exceptions.json index 5d1b6873177..62ee48dbe35 100644 --- a/.github/workflows/license-exceptions.json +++ b/.github/workflows/license-exceptions.json @@ -195,13 +195,13 @@ }, { "package": "cmeel-boost", - "license": "UNKNOWN", + "license": "BSL-1.0", "comment": "BSL" }, { "package": "cmeel-console-bridge", - "license": "UNKNOWN", - "comment": "BSD" + "license": "Zlib", + "comment": "ZLIBL" }, { "package": "cmeel-octomap", @@ -215,7 +215,7 @@ }, { "package": "cmeel-tinyxml", - "license": "UNKNOWN", + "license": "Zlib", "comment": "ZLIBL" }, { @@ -225,7 +225,7 @@ }, { "package": "cmeel-zlib", - "license": "UNKNOWN", + "license": "Zlib", "comment": "ZLIBL" }, { @@ -293,7 +293,7 @@ }, { "package": "filelock", - "license": "The Unlicense (Unlicense)", + "license": "Unlicense", "comment": "no condition" }, { diff --git a/docs/source/how-to/simulation_performance.rst b/docs/source/how-to/simulation_performance.rst index ec575685b00..fad7c955317 100644 --- a/docs/source/how-to/simulation_performance.rst +++ b/docs/source/how-to/simulation_performance.rst @@ -43,6 +43,21 @@ collision detection will fall back to CPU. Collisions with particles and deforma Suitable workarounds include switching to a bounding cube approximation, or using a static triangle mesh collider if the geometry is not part of a dynamic rigid body. +CPU Governor Settings on Linux +------------------------------ + +CPU governors dictate the operating clock frequency range and scaling of the CPU. This can be a limiting factor for Isaac Sim performance. For maximum performance, the CPU governor should be set to ``performance``. To modify the CPU governor, run the following commands: + +.. code-block:: bash + + sudo apt-get install linux-tools-common + cpupower frequency-info # Check available governors + sudo cpupower frequency-set -g performance # Set governor with root permissions + +.. note:: + + Not all governors are available on all systems. Governors enabling higher clock speed are typically more performance-centric and will yield better performance for Isaac Sim. + Additional Performance Guides ----------------------------- diff --git a/docs/source/refs/troubleshooting.rst b/docs/source/refs/troubleshooting.rst index ea6ac86882c..18a88da7c69 100644 --- a/docs/source/refs/troubleshooting.rst +++ b/docs/source/refs/troubleshooting.rst @@ -78,32 +78,6 @@ For instance, to run a standalone script with verbose logging, you can use the f For more fine-grained control, you can modify the logging channels through the ``omni.log`` module. For more information, please refer to its `documentation `__. -Using CPU Scaling Governor for performance ------------------------------------------- - -By default on many systems, the CPU frequency governor is set to -“powersave” mode, which sets the CPU to lowest static frequency. To -increase the maximum performance, we recommend setting the CPU frequency -governor to “performance” mode. For more details, please check the the -link -`here `__. - -.. warning:: - We advice not to set the governor to “performance” mode on a system with poor - cooling (such as laptops), since it may cause the system to overheat. - -- To view existing ``scaling_governor`` value per CPU: - - .. code:: bash - - cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor - -- To change the governor to “performance” mode for each CPU: - - .. code:: bash - - echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor - Observing long load times at the start of the simulation -------------------------------------------------------- diff --git a/source/isaaclab/test/assets/test_rigid_object.py b/source/isaaclab/test/assets/test_rigid_object.py index 3ed69b88e32..6a0dc77b861 100644 --- a/source/isaaclab/test/assets/test_rigid_object.py +++ b/source/isaaclab/test/assets/test_rigid_object.py @@ -22,6 +22,7 @@ import isaacsim.core.utils.prims as prim_utils import pytest +from flaky import flaky import isaaclab.sim as sim_utils from isaaclab.assets import RigidObject, RigidObjectCfg @@ -857,6 +858,7 @@ def test_gravity_vec_w(num_cubes, device, gravity_enabled): @pytest.mark.parametrize("device", ["cuda:0", "cpu"]) @pytest.mark.parametrize("with_offset", [True, False]) @pytest.mark.isaacsim_ci +@flaky(max_runs=3, min_passes=1) def test_body_root_state_properties(num_cubes, device, with_offset): """Test the root_com_state_w, root_link_state_w, body_com_state_w, and body_link_state_w properties.""" with build_simulation_context(device=device, gravity_enabled=False, auto_add_lighting=True) as sim: diff --git a/source/isaaclab/test/sensors/test_contact_sensor.py b/source/isaaclab/test/sensors/test_contact_sensor.py index c30a7d2eaf1..4512b29f3b2 100644 --- a/source/isaaclab/test/sensors/test_contact_sensor.py +++ b/source/isaaclab/test/sensors/test_contact_sensor.py @@ -223,6 +223,7 @@ def setup_simulation(): @pytest.mark.parametrize("disable_contact_processing", [True, False]) +@flaky(max_runs=3, min_passes=1) def test_cube_contact_time(setup_simulation, disable_contact_processing): """Checks contact sensor values for contact time and air time for a cube collision primitive.""" # check for both contact processing enabled and disabled