Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sync main branch #4

Merged
merged 20 commits into from
Oct 14, 2024
Merged

sync main branch #4

merged 20 commits into from
Oct 14, 2024

Conversation

nexus-labrom
Copy link
Collaborator

No description provided.

nv-apoddubny and others added 20 commits October 7, 2024 08:11
# Description

- Improving CI code formatting and readability
- Updated AMI: nvidia-container-toolkit vulnerability fix
- Making Isaac SIM base image an argument in Dockerfile

---------

Co-authored-by: Alexander Poddubny <apoddubny@apoddubny-mlt.client.nvidia.com>
Co-authored-by: David Hoeller <dhoeller@nvidia.com>
# Description

Adding a buildspec for repo mirroring job:
- Mirrors a branch
- Uses personal github token
- Target repo and branch names are coming from env variables
- Pushing code with force
…#1176)

# Description

Name of Cartpole Manager-based Vision-Based was incorrect in docs,
changed to match the exact argument that should be passed as task to
workflows

## Type of change
- Bug fix (non-breaking change which fixes an issue)
- This change requires a documentation update

## Checklist

- [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
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
# Description

This PR fix #831 by taking
into account the Isaac Sim installation using PIP

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

## Checklist

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./isaaclab.sh --format`
- [ ] 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
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
# Description

The current friction randomization event only selects a single random
number in the given range and does not vary them. With the given PR,
this is getting fixed, and there is a sampling of the entire given
range.

## Type of change

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

## Screenshots

| Before | After |
| ------ | ----- |
| ![Screenshot from 2024-10-03
22-26-49](https://github.com/user-attachments/assets/d13f86ee-c776-4046-af2e-46be8f271a00)
| ![Screenshot from 2024-10-03
22-27-15](https://github.com/user-attachments/assets/cf0a536d-20d0-47f1-b580-25241049cdd4)
|


## Checklist

- [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
- [x] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there

---------

Co-authored-by: Mayank Mittal <mittalma@leggedrobotics.com>
#1164)

# Description

This MR adds configuration classes that allow spawning different assets
at the resolved prim paths. For instance, for the prim path expression
"/World/envs/env_.*/Object", these configuration instances allow
spawning a different type of prim at individual path locations.

Fixes #186

## Type of change

- New feature (non-breaking change which adds functionality)

## Checklist

- [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
- [x] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there

---------

Signed-off-by: Mayank Mittal <12863862+Mayankm96@users.noreply.github.com>
Co-authored-by: David Hoeller <dhoeller@nvidia.com>
# Description

Moving codebuild pipelines out of github folder to avoid github actions
being triggered on them.
There was a minor error in the `run_ray_caster_camera.py` tutorial
script that prevented it from saving images.

- [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
- [X] I have added tests that prove my fix is effective or that my
feature works
- [X] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file
- [X] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
…ot defined (#1163)

# Description

This PR attempts to fix #1162 by adding the possibility to do not pass
the `DISPLAY` env to the docker exec command if the variable is not
defined

Fixes #1162

## Type of change

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

## Checklist

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./isaaclab.sh --format`
- [ ] 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
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
# Description

When setting joint limits, the existing default joint positions can fall
outside of the bounds of the new joint limits. This change clips the
default joint positions to ensure they are within the bounds of the new
limits.

## Type of change

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


## Checklist

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./isaaclab.sh --format`
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] 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
# Description

This MR makes a minimal script to measure how long it takes to load
different robots.

## Type of change

- New feature (non-breaking change which adds functionality)

## Screenshots

For loading 2048 robots headless:

| **Metric** | **H1** | **G1** | **Anymal_D** |

|-------------------|-------------------|-------------------|-------------------|
| App start time | 3791.73 ms | 3660.98 ms | 3597.30 ms |
| Imports time | 1116.61 ms | 1132.87 ms | 1142.27 ms |
| Scene creation time | 1584.14 ms | 1674.18 ms | 2000.40 ms |
| Sim start time | 1451.94 ms | 2647.43 ms | 1778.49 ms |
| Per step time | 2.31 ms | 4.71 ms | 3.67 ms |

Computer specs:

* OS: Ubuntu 20.04.6 LTS x86_64 
* CPU: 12th Gen Intel i9-12900K (24) @ 5.100GHz 
* GPU: NVIDIA 4090 RTX

## Checklist

- [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
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
# Description

This PR adds in logic to fix errors when noise config parameters are
tensor based and do not have the correct device setting. This adds a
check at the beginning of each noise function to correct the config
parameters device if they are torch.tensors. In addition this PR adds
tests for noise models.

## Type of change

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

## Checklist

- [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
- [x] 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
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
# Description

This MR disables terminal spamming when launching the app. With the flag
`/app/enableStdoutOutput` disabled, we no longer have the app output
when the kit extensions are startup.

Fixes #1097, #196

## Type of change

- Breaking change (fix or feature that would cause existing
functionality to not work as expected)

## Screenshots

```
./isaaclab.sh -p source/standalone/environments/zero_agent.py --task Isaac-Velocity-Rough-Anymal-C-v0 --num_envs 32
```

Output:

```
[INFO] Using python from: /home/mayank/mambaforge/envs/isaaclab-rsl/bin/python                                                   
[INFO][AppLauncher]: Loading experience file: /home/mayank/git_nv/IsaacLab/source/extensions/omni.isaac.lab/omni/isaac/lab/app/../../../../../../apps/isaaclab.python.kit
Loading user config located at: '/media/vulcan/packman-repo/chk/kit-kernel/106.1.0+release.140981.10a4b5c0.gl.linux-x86_64.release/data/Kit/Isaac-Sim/4.2/user.config.json'
[Info] [carb] Logging to file: /media/vulcan/packman-repo/chk/kit-kernel/106.1.0+release.140981.10a4b5c0.gl.linux-x86_64.release/logs/Kit/Isaac-Sim/4.2/kit_20241011_180901.log
2024-10-11 16:09:01 [0ms] [Warning] [omni.kit.app.plugin] No crash reporter present, dumps uploading isn't available.

|---------------------------------------------------------------------------------------------|
| Driver Version: 535.183.01    | Graphics API: Vulkan
|=============================================================================================|
| GPU | Name                             | Active | LDA | GPU Memory | Vendor-ID | LUID       |
|     |                                  |        |     |            | Device-ID | UUID       |
|     |                                  |        |     |            | Bus-ID    |            |
|---------------------------------------------------------------------------------------------|
| 0   | NVIDIA RTX A6000                 | Yes: 0 |     | 49386   MB | 10de      | 0          |
|     |                                  |        |     |            | 2230      | bffafd0e.. |
|     |                                  |        |     |            | 68        |            |
|=============================================================================================|
| OS: 20.04.6 LTS (Focal Fossa) ubuntu, Version: 20.04.6, Kernel: 5.15.0-122-generic
| XServer Vendor: The X.Org Foundation, XServer Version: 12013000 (1.20.13.0)
| Processor: Intel(R) Core(TM) i9-9820X CPU @ 3.30GHz | Cores: 10 | Logical: 20
|---------------------------------------------------------------------------------------------|
| Total Memory (MB): 63970 | Free Memory: 41524
| Total Page/Swap (MB): 2047 | Free Page/Swap: 2047
|---------------------------------------------------------------------------------------------|
2024-10-11 16:09:07 [6,565ms] [Warning] [omni.replicator.core.scripts.annotators] Annotator PostProcessDispatch is already registered, overwriting annotator template
2024-10-11 16:09:08 [7,613ms] [Warning] [omni.kit.widget.cache_indicator.cache_state_menu] Unable to detect Omniverse Cache Server. Consider installing it for better IO performance.
[INFO]: Parsing configuration from: <class 'omni.isaac.lab_tasks.manager_based.locomotion.velocity.config.anymal_c.rough_env_cfg.AnymalCRoughEnvCfg'>
2024-10-11 16:09:17 [16,685ms] [Warning] [omni.isaac.lab.envs.manager_based_env] Seed not set for the environment. The environment creation may not be deterministic.
[INFO]: Base environment:
    Environment device    : cuda:0
    Environment seed      : None
    Physics step-size     : 0.005
    Rendering step-size   : 0.02
    Environment step-size : 0.02
[INFO] Generating terrains based on curriculum took : 1.881988 seconds
[INFO]: Time taken for scene creation : 4.564743 seconds
[INFO]: Scene manager:  <class InteractiveScene>
    Number of environments: 32
    Environment spacing   : 2.5
    Source prim name      : /World/envs/env_0
    Global prim paths     : ['/World/ground']
    Replicate physics     : True
[INFO]: Starting the simulation. This may take a few seconds. Please wait...
2024-10-11 16:09:29 [27,861ms] [Warning] [omni.hydra.scene_delegate.plugin] Calling getBypassRenderSkelMeshProcessing for prim /World/envs/env_0/Robot/LF_THIGH/visuals.proto_mesh_1_id1 that has not been populated
2024-10-11 16:09:29 [27,880ms] [Warning] [omni.hydra] Mesh '/World/envs/env_0/Robot/base/visuals.proto_mesh_0_id0' has corrupted data in primvar 'st': buffer size 702 doesn't match expected size 12828 in faceVarying primvars
[INFO]: Time taken for simulation start : 7.193578 seconds
[INFO] Command Manager:  <CommandManager> contains 1 active terms.
+------------------------------------------------+
|              Active Command Terms              |
+-------+---------------+------------------------+
| Index | Name          |          Type          |
+-------+---------------+------------------------+
|   0   | base_velocity | UniformVelocityCommand |
+-------+---------------+------------------------+

[INFO] Action Manager:  <ActionManager> contains 1 active terms.
+------------------------------------+
|  Active Action Terms (shape: 12)   |
+--------+-------------+-------------+
| Index  | Name        |   Dimension |
+--------+-------------+-------------+
|   0    | joint_pos   |          12 |
+--------+-------------+-------------+

Module omni.isaac.lab.utils.warp.kernels 6cb40f6 load on device 'cuda:0' took 0.44 ms
[INFO] Observation Manager: <ObservationManager> contains 1 groups.
+----------------------------------------------------------+
| Active Observation Terms in Group: 'policy' (shape: (235,)) |
+-----------+--------------------------------+-------------+
|   Index   | Name                           |    Shape    |
+-----------+--------------------------------+-------------+
|     0     | base_lin_vel                   |     (3,)    |
|     1     | base_ang_vel                   |     (3,)    |
|     2     | projected_gravity              |     (3,)    |
|     3     | velocity_commands              |     (3,)    |
|     4     | joint_pos                      |    (12,)    |
|     5     | joint_vel                      |    (12,)    |
|     6     | actions                        |    (12,)    |
|     7     | height_scan                    |    (187,)   |
+-----------+--------------------------------+-------------+

[INFO] Event Manager:  <EventManager> contains 3 active terms.
+--------------------------------------+
| Active Event Terms in Mode: 'startup' |
+----------+---------------------------+
|  Index   | Name                      |
+----------+---------------------------+
|    0     | physics_material          |
|    1     | add_base_mass             |
+----------+---------------------------+
+---------------------------------------+
|  Active Event Terms in Mode: 'reset'  |
+--------+------------------------------+
| Index  | Name                         |
+--------+------------------------------+
|   0    | base_external_force_torque   |
|   1    | reset_base                   |
|   2    | reset_robot_joints           |
+--------+------------------------------+
+----------------------------------------------+
|    Active Event Terms in Mode: 'interval'    |
+-------+------------+-------------------------+
| Index | Name       | Interval time range (s) |
+-------+------------+-------------------------+
|   0   | push_robot |       (10.0, 15.0)      |
+-------+------------+-------------------------+

[INFO] Termination Manager:  <TerminationManager> contains 2 active terms.
+---------------------------------+
|     Active Termination Terms    |
+-------+--------------+----------+
| Index | Name         | Time Out |
+-------+--------------+----------+
|   0   | time_out     |   True   |
|   1   | base_contact |  False   |
+-------+--------------+----------+

[INFO] Reward Manager:  <RewardManager> contains 11 active terms.
+-----------------------------------------+
|           Active Reward Terms           |
+-------+----------------------+----------+
| Index | Name                 |   Weight |
+-------+----------------------+----------+
|   0   | track_lin_vel_xy_exp |      1.0 |
|   1   | track_ang_vel_z_exp  |      0.5 |
|   2   | lin_vel_z_l2         |     -2.0 |
|   3   | ang_vel_xy_l2        |    -0.05 |
|   4   | dof_torques_l2       |   -1e-05 |
|   5   | dof_acc_l2           | -2.5e-07 |
|   6   | action_rate_l2       |    -0.01 |
|   7   | feet_air_time        |    0.125 |
|   8   | undesired_contacts   |     -1.0 |
|   9   | flat_orientation_l2  |      0.0 |
|   10  | dof_pos_limits       |      0.0 |
+-------+----------------------+----------+

[INFO] Curriculum Manager:  <CurriculumManager> contains 1 active terms.
+---------------------------+
|  Active Curriculum Terms  |
+--------+------------------+
| Index  | Name             |
+--------+------------------+
|   0    | terrain_levels   |
+--------+------------------+

Creating window for environment.
[INFO]: Completed setting up the environment...
[INFO]: Gym observation space: Dict('policy': Box(-inf, inf, (32, 235), float32))
[INFO]: Gym action space: Box(-inf, inf, (32, 12), float32)
```

## Checklist

- [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
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
…ment (#1229)

# Description

In the slum workflow, currently, there was an unnecessary `sbatch`
command; this PR removes it. In addition, the profile argument was
marked as optional, but when a job was submitted, and job arguments were
passed, it became necessary. This PR fixes this behavior.

## Type of change

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

## Checklist

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./isaaclab.sh --format`
- [ ] 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
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
# Description

An error of `No checkpoints in the directory` will throw when resume
from a previous training with `--video` set. This is because a new log
folder will be created before the check.

This MR fixes this issue by loading the checkpoint before.

Fixes #1209 

## Type of change

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

## Checklist

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./isaaclab.sh --format`
- [ ] 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
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
…e image version (#1211)

# Description

Making the base image version a parameter so the pipelines can use
different versions without the need to hardcode that.
# Description

Many of the warp kernels don't need backward pass compilation. This MR
disables the computation of the backward passes within the kernels. This
should reduce the kernel compile times.

Reference:
https://nvidia.github.io/warp/configuration.html#kernel-settings

## Type of change

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

## Checklist

- [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
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
# Description

Earlier, we used [`Carbonite
SDK`](https://docs.omniverse.nvidia.com/kit/docs/carbonite/latest/api/dir_carb_logging.html)
to log directly. However, this has limited functionalities compared to
[`omni.log`](https://docs.omniverse.nvidia.com/kit/docs/carbonite/latest/api/namespace_omni__log.html)
in Omniverse. Using `omni.log`, you can fine-grain the channels and
print levels better.

Link to omni.log documentation:
https://docs.omniverse.nvidia.com/kit/docs/carbonite/latest/docs/omni.log/Logging.html

This MR migrates all `carb` references to the new API.

## Type of change

- Bug fix (non-breaking change which fixes an issue)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)

## Screenshot

Checking the performance:
```
./isaaclab.sh -p source/standalone/benchmarks/benchmark_load_robot.py --num_envs 2048 --robot g1 --headless
```

**Before (carb logging)**
[INFO]: App start time: 4676.57 ms
[INFO]: Imports time: 2008.77 ms
[INFO]: Scene creation time: 2966.36 ms
[INFO]: Sim start time: 5782.76 ms
[INFO]: Per step time: 15.80 ms

**After (omni.log logging)**
[INFO]: App start time: 4833.56 ms
[INFO]: Imports time: 1983.67 ms
[INFO]: Scene creation time: 2792.97 ms
[INFO]: Sim start time: 5805.97 ms
[INFO]: Per step time: 15.86 ms


## Checklist

- [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
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
Small quality of life change that excludes cache files from VSCode File
Explorer when attached to sim container.
@gonzalesMK gonzalesMK self-assigned this Oct 14, 2024
@gonzalesMK gonzalesMK merged commit 47b06f7 into EESC-LabRoM:main Oct 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.