Unverified Commit c0eb55cd authored by Kelly Guo's avatar Kelly Guo Committed by GitHub

Updates package licenses, CPU Governor setting in docs, and flaky tests (#3778)

# Description

There were some recent updates to a couple of our dependency packages
that have updated their licenses. Updating our license checker
exceptions to match with the new updated licenses for these packages.

Additionally, adds a note in the simulation performance documentation
for CPU governor setting to improve performance.

Also, updates a few unit tests to mark as flaky as we've shown in recent
CI runs.


## Type of change

<!-- As you go through the list, delete the ones that are not
applicable. -->

- Bug fix (non-breaking change which fixes an issue)
- Documentation update

## Checklist

- [x] I have read and understood the [contribution
guidelines](https://isaac-sim.github.io/IsaacLab/main/source/refs/contributing.html)
- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./isaaclab.sh --format`
- [x] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file
- [ ] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there

<!--
As you go through the checklist above, you can mark something as done by
putting an x character in it

For example,
- [x] I have done this task
- [ ] I have not done this task
-->
parent 1103a0f3
......@@ -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"
},
{
......
......@@ -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
-----------------------------
......
......@@ -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 <https://docs.omniverse.nvidia.com/kit/docs/carbonite/latest/docs/omni.log/Logging.html>`__.
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 <https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/power_management_guide/cpufreq_governors>`__.
.. 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
--------------------------------------------------------
......
......@@ -22,6 +22,7 @@ from typing import Literal
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:
......
......@@ -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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment