Ubuntu22.04下Issac Gym/宇树机器人RL&gcc/g++,CUDA,CUDA ToolKit,Pytorch配置环境配置gaussian-splatting

前置条件

本随笔写作Condition:在本人3050Ti笔记本上配好环境后,再在室友4060笔记本上边配边记录整理所得。

室友的系统已经配好了相应驱动,因此,本随笔内容基于已经安装了NVIDIA显卡驱动的系统。下次搞到没装驱动的系统我再补一个随笔。

在已经安装驱动的电脑上执行

nvidia-smi

可以在右上角看到 CUDA:

这个数字表示驱动所支持的最大CUDA版本,小于它的都能兼容。所以在pytorch官网选择CUDA 12.1不是指这个num=12.1,而是说pytorch相当于在12.1版本的CUDA上运行,所以只有num>=12.1才能正常运行

并且,这个CUDA 12.1并不意味着你需要安装CUDA 12.1,也不意味着你安装了CUDA 12.1,具体的后面再谈。

宇树机器人

宇树科技的文档中心有一个简单的安装文档,基本上照着写就行,会遇到一个小问题。

问题与解决

  1. 在第三步“安装CUDA,PYTORCH”那个指令并不一定能正确安装,并且在安装的时候可以指定numpy=1.23.5(否则numpy版本过高会导致后续运行失败)。建议在pytorch官网根据自己驱动去安装。

比如我的CUDA num 支持到12.2,则我可以使用如下指令之一

第一个

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

第二个

conda install numpy=1.23.5 pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

第二个比第一个多指定了numpy的版本,一般使用第二个就可以了,否则待会还是需要降低numpy版本

  1. 在完成Issac Gym库的安装后,会提示 "Libpython3.8.so.1.0" 不存在

问题解答参考于stackoverflow的第一个回答

简单的来说就是因为Issac Gym需要调用的python库是在conda环境里面,但是Issac Gym默认调用系统的python库所以报错

解决方式就是把conda环境下的这个文件放到系统的路径下,示例如下

sudo cp ~/anaconda3/envs/rl-go2/lib/libpython3.8.so.1.0 /usr/lib/

这里我室友的电脑不知为啥寄了(有窗口但无响应),我去给他重启但无效。

根据另一篇博客的说明,应该是他开了华硕的独显模式,导致不使用集显,从而设备选择错误。但是实际上他的电脑并没有那个博客所指出的文件。而是在这个路径下

export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json

加入这个配置后成功运行。

  1. 修改路径时不需要最后的legged_gym

  2. no tensorboard

pip install tensorborad
  1. 遇到了问题too many values to unpack (expected 2)

这是由于官方文档get到的rsl库的版本不正确,最新的版本不兼容,需要重新安装

卸载旧版本

pip uninstall rsl_rl

在rsl_rl目录下

git checkout v1.0.2
pip install -e .

至此,所有问题都得到解决

gaussian-splatting

git clone需要递归,否则没有子模块

在创建conda环境前,需要检查c++是否可以调用glm库,如果无法

#include<glm/glm.hpp>

随便在网上下一个glm的文件夹放到 /usr/include/ 下。否则无法 pip install

然后

根据我的个人环境,选择了

gcc 11 + CUDA 11.8 + 相应pytorch

CUDA

pytorch之类的内容都写在了environment.yml里面,原本的环境文件需要修改,用以下这个就行

name: mygs
channels:
  - pytorch
  - conda-forge
  - defaults
  - nvidia
dependencies:
  - cudatoolkit=11.8
  - plyfile
  - python=3.10
  - pip=22.3.1
  - pytorch=2.2.0
  - torchaudio=2.2.0
  - torchvision=0.17.0
  - pytorch-cuda=11.8
  - tqdm
  - pip:
    - submodules/diff-gaussian-rasterization
    - submodules/simple-knn
posted @ 2024-03-28 21:25  千陌  阅读(44)  评论(0编辑  收藏  举报