使用pip从源代码安装PyTorch

6
我正在尝试在远程服务器上安装pytorch。它使用的是CentOS 6.5系统,根据此链接,CentOS 6已经停止支持。因此,我决定通过源代码来安装它。
推荐的安装方法是使用anaconda,但是我在安装anaconda时遇到了很多问题,因为它对远程服务器路径进行了大量更改,所以我决定使用pip。
但是,我在将一些conda命令转换为pip时遇到了以下问题-

conda install -c pytorch magma-cuda90
以上命令在pytorch克隆步骤之前提到,并给出了一个错误:
Could not open requirements file: [Errno 2] No such file or directory: 'pytorch'
我面临的另一个问题如下-
export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-"$(dirname $(which conda))/../"} 在pip中,CMAKE_PREFIX_PATH的替代方法是什么?


我面临的另一个问题如下 - export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-"$(dirname $(which conda))/../"} 你是什么意思?哪个问题? - RMPR
我不知道如何将上述命令转换为pip。 - Bing
1
只有在需要CUDA支持时,才需要执行conda install -c pytorch magma-cuda90命令,否则可以跳过它。 - RMPR
我想要CUDA支持。 - Bing
哪个Python版本? - RMPR
显示剩余2条评论
1个回答

7
根据您的Python版本,可以尝试从wheel文件中安装。
pip install https://download.pytorch.org/whl/cu101/torch-1.3.0-cp36-cp36m-manylinux1_x86_64.whl   --user # For torch 
pip install https://download.pytorch.org/whl/cu101/torchvision-0.4.1-cp36-cp36m-linux_x86_64.whl  --user # For torchvision

如果失败了,您可能需要检查您的glibc版本:
ldd --version

由于PyTorch支持使用glibc>= v2.17的Linux发行版。

对于您的问题:

在pip中,应该使用什么替代`CMAKE_PREFIX_PATH`?

CMAKE_PREFIX_PATH 作为构建指令,用于指示构建所需的模块的位置。在您的情况下(使用--user标志进行非root安装),可能是:

~/.local/lib/python3.6/site-packages

您可以使用以下命令验证确切位置:

python -c "import site; print(site.getsitepackages()[0])"

作为一个附加说明,如果您仍未具备最低要求的glibc版本,则您的编译更有可能失败。

我尝试过这种方法,但是出现了以下错误信息:from torch._C import * ImportError: /lib64/libc.so.6: version GLIBC_2.14' not found (required by /nethome/rxs1576/.local/lib/python3.6/site-packages/torch/_C.cpython-36m-x86_64-linux-gnu.so)`。 - Bing
我运行了这个命令 ldd --version,希望能得到libc的版本信息,结果得到了 ldd (GNU libc) 2.12。所以我想知道我做错了什么。 - Bing
但是我需要大于或等于1.0版本的PyTorch,但我无法从上述方法中获得它。 - Bing
1
请查看此文章,了解如何手动升级CentOS 6.x上的glibc到较新版本。文章链接:https://serverkurma.com/linux/how-to-update-glibc-newer-version-on-centos-6-x/ - RMPR
1
另外,由于从源代码构建glibc需要很长时间且繁琐,您可以查看如何在没有root权限的情况下安装rpmrpm without root - RMPR
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接