Isaac Gym环境配置实战:从驱动检查到虚拟环境搭建的完整排雷指南
1. 显卡驱动与CUDA环境检查刚拿到新工作站时我习惯性先检查显卡驱动状态。在终端输入nvidia-smi后如果看到类似这样的输出说明驱动安装正常----------------------------------------------------------------------------- | NVIDIA-SMI 525.85.12 Driver Version: 525.85.12 CUDA Version: 12.0 | |--------------------------------------------------------------------------- | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | || | 0 NVIDIA RTX 4090 Off | 00000000:01:00.0 Off | Off | | 0% 38C P8 15W / 450W | 0MiB / 24576MiB | 0% Default | ---------------------------------------------------------------------------这里有个关键细节右上角显示的CUDA Version只是驱动支持的最高CUDA版本不代表系统已安装的CUDA。我遇到过不少开发者误以为这里显示12.0就代表CUDA已安装其实这是两个独立组件。真正的CUDA版本需要用nvcc -V验证。如果报错command not found说明CUDA Toolkit未安装或环境变量未配置。此时需要到NVIDIA官网下载对应版本的CUDA Toolkit注意选择与驱动兼容的版本。比如525驱动最高支持CUDA 12.0但实际安装11.7也是可行的。2. PyTorch与CUDA版本匹配装好CUDA后最头疼的就是PyTorch版本匹配问题。我推荐直接到PyTorch官网用他们的版本选择器生成安装命令。但如果你需要离线验证可以像我这样操作import torch print(torch.__version__) # 输出如1.13.1cu117 print(torch.version.cuda) # 输出如11.7 print(torch.cuda.is_available()) # 期待看到True当torch.cuda.is_available()返回False时90%的情况是CUDA与PyTorch版本不匹配。我整理过常见组合对照表PyTorch版本推荐CUDA版本备注2.011.7/11.8新卡建议组合1.12.x11.6旧代码兼容性选择1.8.x11.1部分老项目需要遇到CUDA初始化错误时先试试这个万能解法sudo apt-get install nvidia-modprobe这能解决大部分因驱动模块加载失败导致的问题特别是多GPU环境下。3. 多版本CUDA管理实战我的工作站上常年保持着三个CUDA版本11.3/11.7/12.0通过修改~/.bashrc实现快速切换# 切换CUDA 11.3 export PATH/usr/local/cuda-11.3/bin:$PATH export LD_LIBRARY_PATH/usr/local/cuda-11.3/lib64:$LD_LIBRARY_PATH # 切换后执行 source ~/.bashrc nvcc -V # 验证版本有个容易踩的坑修改环境变量后一定要关闭所有终端重新打开或者用exec bash重新加载shell。我曾在三个终端窗口里看到三个不同的CUDA版本就是因为没彻底刷新环境。4. 虚拟环境构建技巧用conda创建虚拟环境时我强烈建议指定Python版本conda create -n isaacgym_env python3.8 conda activate isaacgym_envPython 3.8是个比较稳定的选择大多数库都有预编译轮子。安装完基础环境后别急着装Isaac Gym先处理这些依赖# 固定setuptools版本 pip install setuptools59.5.0 # 安装兼容性numpy pip install numpy1.23.5这里有个血泪教训最新版setuptools可能会引发distutils.version缺失错误。有次我折腾了两小时才发现是setuptools 60.0移除了这个模块。5. Isaac Gym专属问题解决安装Isaac Gym时如果遇到--gpu-architecture错误# 彻底重装torch pip uninstall torch torchaudio torchvision pip install torch --extra-index-url https://download.pytorch.org/whl/cu117这个错误通常发生在PyTorch与本地CUDA版本不匹配时。我习惯直接从PyTorch官方源安装避免conda源可能存在的版本滞后问题。训练时如果遇到nvrtc相关错误试试这个组合拳确认torch.version.cuda与nvcc -V输出一致检查LD_LIBRARY_PATH是否包含CUDA lib路径在训练命令前加CUDA_LAUNCH_BLOCKING1获取详细报错6. 实战调试技巧当你的Go2机器人模型训练报错时可以这样缩小问题范围# 最小化环境测试 python3 train.py --taskgo2 --num_envs1 --headless # 逐步增加复杂度 python3 train.py --taskgo2 --num_envs10 --sim_devicecuda:0我习惯先用--headless模式快速验证基础功能再开启可视化调试。如果遇到图形界面卡死尝试在代码中设置headlessTrue使用export DISPLAY:0指定显示设备检查OpenGL版本glxinfo | grep OpenGL version7. 开发环境优化建议在VSCode中高效开发的小技巧用CtrlP搜索文件时输入可以切换至命令模式安装Python插件后CtrlShiftP输入Python: Select Interpreter快速切换conda环境调试时在launch.json中添加env: { LD_LIBRARY_PATH: /usr/local/cuda/lib64:${env:LD_LIBRARY_PATH} }对于大规模训练任务建议用tmux管理会话tmux new -s training python3 train.py --taskgo2 --num_envs64 # 按CtrlB然后D退出会话 tmux attach -t training # 重新连接8. 依赖冲突终极解决方案当各种依赖冲突无法解决时我的终极大法是备份当前环境conda list --export requirements.txt创建全新环境按以下顺序安装# 1. 基础框架 pip install torch1.13.1cu117 --extra-index-url https://download.pytorch.org/whl/cu117 # 2. Isaac Gym官方推荐版本 pip install isaacgym1.0.0 # 3. 其他依赖 pip install numpy1.23.5 matplotlib3.6.2记住这个黄金法则先装底层框架再装上层应用。有次我先装了OpenCV再装PyTorch结果OpenCV自动安装了不兼容的numpy版本导致整个环境崩溃。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2429556.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!