Install Isaac Gym on Ubuntu 22.04
Isaac Gym is a high-performance robotics simulation platform by NVIDIA, designed for creating and training intelligent robots using advanced physics simulations and deep learning. Below is a simple guide how to get started with Isaac Gym.
Install Miniconda & download Isaac Gym
mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm -rf ~/miniconda3/miniconda.sh
~/miniconda3/bin/conda init bash
Download Isaac Gym
unzip IsaacGym_Preview_4_Package.tar.gz
tar -xf IsaacGym_Preview_4_Package.tar.gz
Install Isaac Gym
cd isaacgym
./create_conda_env_rlgpu.sh
Once it finishes, it will show SUCCESS as below:
To activate the virtual environment:
conda activate rlgpu
Test installation
cd isaacgym/python/examples
python joint_monkey.py
Next, we will install the IsaacGymEnvs
git clone https://github.com/NVIDIA-Omniverse/IsaacGymEnvs.git
cd IsaacGymEnvs
pip install -e .
Now, let’s do some training
cd IsaacGymEnvs/isaacgymenvs
python3 train.py task=Cartpole
The program will terminate when reach max epoch
We can also set number of environment with the num_envs argument
python train.py task=BallBalance num_envs=512 train.params.config.minibatch_size=512
Troubleshooting
We may face issue like:
ImportError: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory
Suggestion from the Isaac Gym documentation:
So for me, below is the solution:
export LD_LIBRARY_PATH=/home/will/miniconda3/envs/rlgpu/lib
One issue I encounter when importing torch
Downgrading MKL to 2024.0.0 resolved this issue
pip install mkl==2024.0.0
Reference:
We may also encounter
undefined symbol: cublasLtHSHMatmulAlgoInit, version libcublasLt.so.11
This happens because pytorch1.13 automatically installed nvidia_cublas_cu11, nvidia_cuda_nvrtc_cu11, nvidia_cuda_runtime_cu11 and nvidia_cudnn_cu11.
To workaround this, I did
pip uninstall nvidia_cublas_cu11
Reference: