1、下载安装包
打开官网Isaac Gym - Preview Release | NVIDIA Developer,点击“Join now”,注册并填写个人信息后点击确认下一步。
然后界面跳转到Issac Gym - Download,勾选同意并下载安装包(目前版本是preview4)
2、解压下载的安装包
解压安装因为这个只能在linux系统上安装,所以找到下载的安装包
放到Linux系统下的文件夹里使用下述命令解压
tar -xzvf /换成你自己存放的路径/IsaacGym_Preview_4_Package.tar.gz -C /换成你自己存放的路径/
3、安装miniconda(因为我系统没装)
我是按照下述命令在线安装的(命令一行一行执行哦)
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
然后重启shell,初始化 Miniconda 安装后的环境设置,以确保在 Bash shell 中能够正确使用 conda
命令。
~/miniconda3/bin/conda init bash
然后重启shell,初始化 Miniconda 安装后的环境设置,以确保在 Zsh shell 中能够正确使用 conda
命令。
~/miniconda3/bin/conda init zsh
4、安装python(这个不需要,请直接跳到5因为后面会创建虚拟环境,版本是3.7,我自己是为了记录而已)
conda install python=3.8
注意安装版本要低于3.9!!!!,不然到时候安装依赖的时候就会报下图错
我是先装了3.9.18,后面又重新装了3.8
上述进度条100%就是安装好了,然后出现下图所示的三个done:
5、安装isaacgym(命令一行一行执行哦)
cd /更改为你放置的目录/isaacgym/python/
bash ../create_conda_env_rlgpu.sh
等上图右边都达到了100%,就创建了一个名为rlgpu的conda环境,然后会出现success
6、激活虚拟环境
按照下述代码激活虚拟环境rlgpu,当前环境会切换为rlgpu,如下图红框所示(之前环境是base)
conda activate rlgpu
7、安装依赖
(全部复制哦,“.”
代表当前目录,不要少复制了)
pip install -e .
成功后如下图
8、运行示例(命令一行一行执行哦)
cd examples
python joint_monkey.py
运行报错:“ImportError: libpython3.8.so.1.0: cannot open shared object file: No such file or directory”
如果不像我一样升级了python的话会报错下面这个:
“ImportError: libpython3.7m.so.1.0: cannot open shared ogject file: No such file or directory”
按照如下代码查找 libpython3.8.so.1.0并添加动态链接库
find / -name "*ibpython3.7m.so.1.0*" 2>/dev/null
举个例子:
find指令回复:
/usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
此时可以设置:
sudo cp /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0 /usr/lib/x86_64-linux-gnu
或者:
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH
优先级从上到下,后面 这样设置 LD_LIBRARY_PATH
将会将 /usr/lib/x86_64-linux-gnu
这个目录添加到动态链接库的搜索路径中,让系统知道需要在这个路径下寻找动态链接库,包括libpython3.7m.so.1.0,但是这个我在服务器设置后,每次新打开都要设置一下,后面在双系统用第一个就只需要设置一次就行。
接着继续运行 python joint_monkey.py就可以了
再试一个:python kuka_bin.py
很丝滑~~
9、踩坑记录(大家跳過就行,我是用來記錄的)
我一开始使用了WSL2虚拟环境试了集群服务器里面的交互式桌面,但是都失败了,WSL2因为没办法调用系统的GPU,应该有办法配置但我放弃了,感兴趣的可以自己探索(图片贴出来了)。
服务器上出现的问题是Segmentation fault (core dumped),目前还没解决,有可能是驱动和cuda版本的问题(后面有时间再解决)
錯誤代碼:
Importing module 'gym_37' (/opt/data/private/AISCCA/isaacgym/python/isaacgym/_bindings/linux-x86_64/gym_37.so)
Setting GYM_USD_PLUG_INFO_PATH to /opt/data/private/AISCCA/isaacgym/python/isaacgym/_bindings/linux-x86_64/usd/plugInfo.json
WARNING: Forcing CPU pipeline.
Not connected to PVD
+++ Using GPU PhysX
Physics Engine: PhysX
Physics Device: cuda:0
GPU Pipeline: disabled
Segmentation fault (core dumped)
此时的cuda驱动和信息是:
参考链接:非常详细,大家直接看这个博主的安装就行。