1. 硬件准备:别让显卡成为你的绊脚石
第一次接触Isaac Gym的朋友们,千万别急着敲命令。我见过太多人兴冲冲开始安装,结果卡在显卡兼容性上浪费一整天。先说说我的血泪教训:去年用RTX 3090配CUDA 11.6死活跑不起来,最后发现是驱动版本太新。
关键检查清单:
- 显卡型号:必须是NVIDIA显卡(AMD用户可能要哭晕在厕所),RTX 20/30/40系列实测最稳。我的旧笔记本GTX 1650也能跑,但显存低于8GB的话,复杂场景可能会爆内存
- 驱动版本:推荐525.60.11(别问为什么,这是踩了7个版本坑得出的结论)。检查命令:
nvidia-smi | grep "Driver Version" - 系统选择:Ubuntu 20.04 LTS是甜点版本,18.04也行但要注意glibc版本。去年帮学弟在Ubuntu 22.04上折腾了三天,最后重装系统了事
特别提醒:如果你用笔记本,一定要关闭Optimus混合显卡模式!我在这个坑里掉过两次,表现为CUDA能识别显卡但Isaac Gym报错。解决方法:
sudo prime-select nvidia2. 环境配置:conda虚拟环境是你的安全绳
见过有人直接往系统Python里怼安装包,结果把整个开发环境搞崩的惨剧吗?用conda创建独立环境就像给你的实验加个防护罩。
手把手操作流程:
- 创建名为isaacgym的虚拟环境(别用rl-go2这种意义不明的名字):
conda create -n isaacgym python=3.8 -y - 激活环境后先锁定关键版本:
conda activate isaacgym pip install numpy==1.23.5 # 高于这个版本会跟torch打架
注意:千万别用conda安装pytorch!conda源的cudatoolkit会和系统CUDA冲突,这是我最常被私信问的问题
- 用pip安装特定版本的PyTorch组合(记好这个魔法配方):
pip install torch==1.10.0+cu113 torchvision==0.11.1+cu113 torchaudio==0.10.0+cu113 --extra-index-url https://download.pytorch.org/whl/cu113
验证安装是否成功的小技巧:
python -c "import torch; print(torch.cuda.is_available())"如果输出False,八成是CUDA路径问题,试试这个:
export LD_LIBRARY_PATH=/usr/local/cuda-11.3/lib64:$LD_LIBRARY_PATH3. Isaac Gym本体安装:注意这个隐藏雷区
官方文档不会告诉你的是:千万别用pip直接装!一定要下载Preview 4的离线包。去年有个更新导致API大变,很多老项目直接报废。
正确姿势:
- 从官网下载tar.gz包(约2.3GB)
- 解压后进入python目录,用开发模式安装:
cd isaacgym/python pip install -e . # 这个点号不能少!
常见报错解决方案:
- 报错libcudart.so.11.0找不到:
sudo apt install libcudnn8=8.2.1.32-1+cuda11.3 - 报错GLIBCXX_3.4.29缺失:
conda install -c conda-forge gcc=9.3.0
验证安装是否成功的骚操作:别急着跑官方示例,先试试这个迷你测试脚本:
import isaacgym print(isaacgym.__version__) # 应该输出preview44. 实战测试:从小球 demo 到机器狗训练
很多人装完就跑demo,其实隐藏问题多着呢。建议按这个进阶路线验证:
第一阶段:基础验证
cd isaacgym/python/examples python 1080_balls_of_solitude.py正常应该看到红色小球弹跳。如果窗口卡住不动,试试加上--headless参数
第二阶段:强化学习环境搭建
- 安装rsl_rl时要注意:
git clone https://github.com/leggedrobotics/rsl_rl cd rsl_rl && pip install -e . --no-deps # 防止覆盖已有包 - 下载Unitree Go2示例时要改三个地方:
- 修改train.py中的sys.path.append路径
- 调整args.num_envs值(建议从16开始,太大显存扛不住)
- 把args.headless设为True先跑通流程
性能调优技巧:
- 在legged_robot_config.py里调整physics_engine参数:
sim_params.physics_engine = gymapi.SIM_PHYSX # 比FLEX快30% - 训练时加上这个环境变量提升性能:
export PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128
最后说个真实案例:有次训练Go2机器狗时发现动作延迟,原来是忘了关Ubuntu的图形界面。建议训练时用Ctrl+Alt+F3切换到控制台模式,能提升至少15%的帧率。