Unverified Commit 66cc743e authored by Kelly Guo's avatar Kelly Guo Committed by GitHub

Updates play script for SB3 and RL library benchmarks (#2789)

# Description

Minor fixes for SB3 play script to accommodate for inference task names
and updates profiling numbers for the RL library comparison.

## 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)
- 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
- [ ] 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 05c22beb
......@@ -214,6 +214,12 @@ We provide environments for both disassembly and assembly.
wget https://developer.download.nvidia.com/compute/cuda/12.8.0/local_installers/cuda_12.8.0_570.86.10_linux.run
sudo sh cuda_12.8.0_570.86.10_linux.run
When using conda, cuda toolkit can be installed with:
.. code-block:: bash
conda install cudatoolkit
For addition instructions and Windows installation, please refer to the `CUDA installation page <https://developer.nvidia.com/cuda-12-8-0-download-archive>`_.
* |disassembly-link|: The plug starts inserted in the socket. A low-level controller lifts the plug out and moves it to a random position. This process is purely scripted and does not involve any learned policy. Therefore, it does not require policy training or evaluation. The resulting trajectories serve as demonstrations for the reverse process, i.e., learning to assemble. To run disassembly for a specific task: ``python source/isaaclab_tasks/isaaclab_tasks/direct/automate/run_disassembly_w_id.py --assembly_id=ASSEMBLY_ID --disassembly_dir=DISASSEMBLY_DIR``. All generated trajectories are saved to a local directory ``DISASSEMBLY_DIR``.
......
......@@ -71,20 +71,18 @@ Training Performance
--------------------
We performed training with each RL library on the same ``Isaac-Humanoid-v0`` environment
with ``--headless`` on a single RTX 4090 GPU using 4096 environments
with ``--headless`` on a single RTX PRO 6000 GPU using 4096 environments
and logged the total training time for 65.5M steps for each RL library.
..
Note: SB3 need to be re-run (current number comes from a GeForce RTX 3070)
+--------------------+-----------------+
| RL Library | Time in seconds |
+====================+=================+
| RL-Games | 203 |
| RL-Games | 207 |
+--------------------+-----------------+
| SKRL | 204 |
| SKRL | 208 |
+--------------------+-----------------+
| RSL RL | 207 |
| RSL RL | 199 |
+--------------------+-----------------+
| Stable-Baselines3 | 550 |
| Stable-Baselines3 | 322 |
+--------------------+-----------------+
......@@ -82,13 +82,14 @@ def main():
)
task_name = args_cli.task.split(":")[-1]
train_task_name = task_name.replace("-Play", "")
# directory for logging into
log_root_path = os.path.join("logs", "sb3", task_name)
log_root_path = os.path.join("logs", "sb3", train_task_name)
log_root_path = os.path.abspath(log_root_path)
# checkpoint and log_dir stuff
if args_cli.use_pretrained_checkpoint:
checkpoint_path = get_published_pretrained_checkpoint("sb3", task_name)
checkpoint_path = get_published_pretrained_checkpoint("sb3", train_task_name)
if not checkpoint_path:
print("[INFO] Unfortunately a pre-trained checkpoint is currently unavailable for this task.")
return
......@@ -98,7 +99,7 @@ def main():
checkpoint = "model_.*.zip"
else:
checkpoint = "model.zip"
checkpoint_path = get_checkpoint_path(log_root_path, ".*", checkpoint)
checkpoint_path = get_checkpoint_path(log_root_path, ".*", checkpoint, sort_alpha=False)
else:
checkpoint_path = args_cli.checkpoint
log_dir = os.path.dirname(checkpoint_path)
......
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