linux 安装pytorch3d的坑

事实上,只要按照官方文档的说明就可以完美安装。其中坑的地方在于conda的管理可能会导致下载的版本不符合你的要求(例如下载成了cpu版本、下载的cuda版本)而同样尝试使用源码编译以及其他方式下载库都会导致同样的问题,这里主要的原因是由于python的版本不对以及conda 版本不对。这里先简单总结一下本人成功安装的步骤,再简单阐述一下其中的坑,请务必完整阅读后再进行安装。

安装步骤

由于pytorch3d对于conda的要求非常刁钻,!!!这里十分建议重新创建一个虚拟环境!!!
官方链接
此外,目前测试python3.11还不可用,python3.8有点老(不太推荐)

conda create -n pytorch3d python=3.10
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
conda install -c fvcore -c iopath -c conda-forge fvcore iopath
conda install pytorch3d -c pytorch3d
#for test
pip install scikit-image matplotlib imageio plotly opencv-python

问题列表

1、conda问题

下载速度过慢/solving environment 一直转圈

下载速度过慢可以尝试更换源
清华源

vim ~/.condarc

清除原有内容,将下面内容复制进去。保存并退出。

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  deepmodeling: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/

最后,使用如下命令

 conda clean -i

如果出现了solving environment转圈然后失败,可能是因为你之前就已经通过命令行的方式换过源了,这将会导致换源后需要搜索的目标过大,从而导致解析失败。解决方法与上述一致,更新过后的源将会是非常干净的清华源。
当然,一直转圈的原因也有可能是conda版本过旧,可以使用如下方法更新conda

更新conda

conda update -n base -c defaults conda

若失败,则尝试

conda update -n base -c defaults conda --repodata-fn=repodata.json

2、安装pytorch3d中重新又安装了一个pytorch的cpu版本

(1)我们强烈建议先检查一下conda版本是否过低,当确认无误后再查看本节。
(2)注意:请不要使用pip来安装pytorch环境
这是因为使用pip安装的pytorch环境将不会被conda安装的pytorch3d环境检测到,这样的话会导致其认为没有pytorch的合适版本而重新安装一次,这样将会导致你之前的pytorch环境完全崩溃
(3)请检查python版本是否过老或过新

3、cuda问题

有关cuda的一些简单概念参考
我们知道pytorch和pytorch都需要使用gpu版本。但是我们需要注意到pytorch系列使用到的cuda相关工具都会再conda安装时被自动嵌入到相关环境中(如果你仔细观察会发现conda下载时会下载一些带有cuda的包),老版本的pytorch中会下一个cudatoolkit,好像新版本中不需要了。因此,我们这里所参考的cuda版本实际上就是pytorch对应后面的版本,例如
linux 安装pytorch3d的坑_第1张图片
而像外部环境中nvida-smi 和nvcc- V的版本这里都不用管
为了增加论证,这里列出我的这两个相应的显示结果
linux 安装pytorch3d的坑_第2张图片
linux 安装pytorch3d的坑_第3张图片
可以看出,我的这两个版本与我下载的pytorch-cuda版本均不一致,但不影响使用
by the way:下载pytorch的时候还是要保证其gpu版本尽量和nvidia-smi显示的版本尽量一致,否则会出现虽然正常检测但是运算速度极慢的情况。

测试

请在安装pytorch后测试如下代码,检测你的版本和gpu是否可用

import torch

print(torch.__version__)
print(torch.cuda.is_available())

请在安装pytorch3d后测试如下代码,检测你的pytorch3d是否可用
CMU 3dvision 作业1

你可能感兴趣的:(linux,pytorch,pytorch3d)