linux 下 pytorch 安装

我的显卡是gtx 730M,已经安装linux版本的驱动,安装环境centos8,内核版本Linux localhost.localdomain 4.18.0-305.19.1.el8_4.x86_64 #1,python 使用的是anaconda安装的,版本3.8.5,使用conda 安装pytorch 后,conda install torch,conda install torchvision 出现pytorch no longer supports this gpu ,because it is too old,资料1显示使用源码安装。

1 先卸载已经安装的torch、torchvision

conda uninstall pytorch

2 安装官网(资料3)上给出的步骤,一步步安装

  2.1 安装cuda 和cudnn

下载官网CUDA Toolkit 11.5 Downloads | NVIDIA Developer

对应驱动版本的cuda 版本,版本对应关系见官网

wget https://developer.download.nvidia.com/compute/cuda/11.5.0/local_installers/cuda-repo-rhel8-11-5-local-11.5.0_495.29.05-1.x86_64.rpmsudo 
rpm -i cuda-repo-rhel8-11-5-local-11.5.0_495.29.05-1.x86_64.rpmsudo 
dnf clean allsudo 
dnf -y module install nvidia-driver:latest-dkmssudo 
dnf -y install cuda

上述命令中dnf -y module install nvidia-driver:latest-dkmssudo 会将显卡驱动更新至最新版本

按照官网NVIDIA cuDNN | NVIDIA Developer

下载对应的cudnn,可能需要注册登陆 ,下载完毕后安装

输入nvcc --version

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Sun_Aug_15_21:14:11_PDT_2021
Cuda compilation tools, release 11.4, V11.4.120
Build cuda_11.4.r11.4/compiler.30300941_0

如果没有结果,将/usr/local/cuda/bin 加入PATH 环境变量,并更新环境变量

  2.2安装依赖包

由于国内特殊环境,github网址打开很慢或者基本打不开,已按照资料2设置/etc/host文件,内容如下:

140.82.113.4 github.com
199.232.69.194 github.global.ssl.fastly.net
185.199.108.153 assets-cdn.github.com
185.199.110.153 assets-cdn.github.com
185.199.111.153 assets-cdn.github.com

设置后,ping github.com的无丢包,且平均延时260ms左右

安装依赖包:

conda install astunparse numpy ninja pyyaml mkl mkl-include setuptools cmake cffi typing_extensions future six requests dataclasses

如果依赖包没有安装,可能会出现出现如下错误

cmake3 --build . --target install --config Release -- -j 4
No such file or directory
CMake Error: Generator: execution of make failed. Make command was: /home/meng/anaconda3/bin/ninja -j 4 install &&

2.3 安装官网提示,进行如下操作:

git clone --recursive https://github.com/pytorch/pytorch
cd pytorch
# if you are updating an existing checkout
git submodule sync
git submodule update --init --recursive --jobs 0


出现的问题如下:

   2.3.1  Empty reply from server或者443:;连接超时

出错的明细如下:
正克隆到 '/home/meng/anaconda3/pytorch/android/libs/fbjni'...
fatal: 无法访问 'https://github.com/facebookincubator/fbjni.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/facebookincubator/fbjni.git' 到子模组路径 '/home/meng/anaconda3/pytorch/android/libs/fbjni'
克隆 'android/libs/fbjni' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/FXdiv'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/FP16'...
fatal: 无法访问 'https://github.com/Maratyszcza/FP16.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/Maratyszcza/FP16.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/FP16'
克隆 'third_party/FP16' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/XNNPACK'...
fatal: 无法访问 'https://github.com/google/XNNPACK.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/google/XNNPACK.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/XNNPACK'
克隆 'third_party/XNNPACK' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/QNNPACK'...
fatal: 无法访问 'https://github.com/pytorch/QNNPACK/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/pytorch/QNNPACK' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/QNNPACK'
克隆 'third_party/QNNPACK' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/breakpad'...
fatal: 无法访问 'https://github.com/driazati/breakpad.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/driazati/breakpad.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/breakpad'
克隆 'third_party/breakpad' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/NNPACK'...
fatal: 无法访问 'https://github.com/Maratyszcza/NNPACK.git/':Operation timed out after 300025 milliseconds with 0 out of 0 bytes received
fatal: 无法克隆 'https://github.com/Maratyszcza/NNPACK.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/NNPACK'
克隆 'third_party/NNPACK' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/cpuinfo'...
fatal: 无法访问 'https://github.com/pytorch/cpuinfo.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/pytorch/cpuinfo.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/cpuinfo'
克隆 'third_party/cpuinfo' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/cub'...
fatal: 无法访问 'https://github.com/NVlabs/cub.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/NVlabs/cub.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/cub'
克隆 'third_party/cub' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/eigen'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/benchmark'...
fatal: 无法访问 'https://github.com/google/benchmark.git/':OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104
fatal: 无法克隆 'https://github.com/google/benchmark.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/benchmark'
克隆 'third_party/benchmark' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/fbgemm'...
fatal: 无法访问 'https://github.com/pytorch/fbgemm/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/pytorch/fbgemm' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/fbgemm'
克隆 'third_party/fbgemm' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/cudnn_frontend'...
error: RPC 失败。curl 7 Failed to connect to github.com port 443: 连接超时
fatal: 远端意外挂断了
fatal: 无法克隆 'https://github.com/NVIDIA/cudnn-frontend.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/cudnn_frontend'
克隆 'third_party/cudnn_frontend' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/foxi'...
fatal: 无法访问 'https://github.com/houseroad/foxi.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/housero[root@localhost pytorch]# git submodule update --init --recursive --jobs 0
正克隆到 '/home/meng/anaconda3/pytorch/android/libs/fbjni'...
fatal: 无法访问 'https://github.com/facebookincubator/fbjni.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/facebookincubator/fbjni.git' 到子模组路径 '/home/meng/anaconda3/pytorch/android/libs/fbjni'
克隆 'android/libs/fbjni' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/FP16'...
fatal: 无法访问 'https://github.com/Maratyszcza/FP16.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/Maratyszcza/FP16.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/FP16'
克隆 'third_party/FP16' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/QNNPACK'...
fatal: 无法访问 'https://github.com/pytorch/QNNPACK/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/pytorch/QNNPACK' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/QNNPACK'
克隆 'third_party/QNNPACK' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/XNNPACK'...
fatal: 无法访问 'https://github.com/google/XNNPACK.git/':OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104
fatal: 无法克隆 'https://github.com/google/XNNPACK.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/XNNPACK'
克隆 'third_party/XNNPACK' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/NNPACK'...
fatal: 无法访问 'https://github.com/Maratyszcza/NNPACK.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/Maratyszcza/NNPACK.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/NNPACK'
克隆 'third_party/NNPACK' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/cpuinfo'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/cub'...
fatal: 无法访问 'https://github.com/NVlabs/cub.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/NVlabs/cub.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/cub'
克隆 'third_party/cub' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/benchmark'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/cudnn_frontend'...
fatal: 无法访问 'https://github.com/NVIDIA/cudnn-frontend.git/':Operation timed out after 300044 milliseconds with 0 out of 0 bytes received
fatal: 无法克隆 'https://github.com/NVIDIA/cudnn-frontend.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/cudnn_frontend'
克隆 'third_party/cudnn_frontend' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/breakpad'...
error: RPC 失败。curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104
fatal: 远端意外挂断了
fatal: 过早的文件结束符(EOF)
fatal: index-pack 失败
fatal: 无法克隆 'https://github.com/driazati/breakpad.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/breakpad'
克隆 'third_party/breakpad' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/foxi'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/fbgemm'...
fatal: 无法访问 'https://github.com/pytorch/fbgemm/':Empty reply from server
fatal: 无法克隆 'https://github.com/pytorch/fbgemm' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/fbgemm'
克隆 'third_party/fbgemm' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/gemmlowp/gemmlowp'...
fatal: 无法访问 'https://github.com/google/gemmlowp.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/google/gemmlowp.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/gemmlowp/gemmlowp'
克隆 'third_party/gemmlowp/gemmlowp' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/fmt'...
fatal: 无法访问 'https://github.com/fmtlib/fmt.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/fmtlib/fmt.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/fmt'
克隆 'third_party/fmt' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/gloo'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/onnx'...
fatal: 无法访问 'https://github.com/onnx/onnx.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/onnx/onnx.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/onnx'
克隆 'third_party/onnx' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/googletest'...
fatal: 无法访问 'https://github.com/google/googletest.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/google/googletest.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/googletest'
克隆 'third_party/googletest' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/nccl/nccl'...
fatal: 无法访问 'https://github.com/NVIDIA/nccl/':Empty reply from server
fatal: 无法克隆 'https://github.com/NVIDIA/nccl' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/nccl/nccl'
克隆 'third_party/nccl/nccl' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/onnx-tensorrt'...
fatal: 无法访问 'https://github.com/onnx/onnx-tensorrt/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/onnx/onnx-tensorrt' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/onnx-tensorrt'
克隆 'third_party/onnx-tensorrt' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/protobuf'...
fatal: 无法访问 'https://github.com/protocolbuffers/protobuf.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/protocolbuffers/protobuf.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/protobuf'
克隆 'third_party/protobuf' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/pthreadpool'...
fatal: 无法访问 'https://github.com/Maratyszcza/pthreadpool.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/Maratyszcza/pthreadpool.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/pthreadpool'
克隆 'third_party/pthreadpool' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/python-peachpy'...
fatal: 无法访问 'https://github.com/Maratyszcza/PeachPy.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/Maratyszcza/PeachPy.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/python-peachpy'
克隆 'third_party/python-peachpy' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/python-enum'...
fatal: 无法访问 'https://github.com/PeachPy/enum34.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/PeachPy/enum34.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/python-enum'
克隆 'third_party/python-enum' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/tensorpipe'...
fatal: 无法访问 'https://github.com/pytorch/tensorpipe.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/pytorch/tensorpipe.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/tensorpipe'
克隆 'third_party/tensorpipe' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/python-six'...
fatal: 无法访问 'https://github.com/benjaminp/six.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/benjaminp/six.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/python-six'
克隆 'third_party/python-six' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/FP16'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/zstd'...
正克隆到 '/home/meng/anaconda3/pytorch/android/libs/fbjni'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/tbb'...
fatal: 无法访问 'https://github.com/01org/tbb/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/01org/tbb' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/tbb'
克隆 'third_party/tbb' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/cub'...
fatal: 无法访问 'https://github.com/NVlabs/cub.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/NVlabs/cub.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/cub'
第二次尝试克隆 'third_party/cub' 失败,退出
正克隆到 '/home/meng/anaconda3/pytorch/third_party/QNNPACK'...
fatal: 无法访问 'https://github.com/pytorch/QNNPACK/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/pytorch/QNNPACK' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/QNNPACK'
第二次尝试克隆 'third_party/QNNPACK' 失败,退出
正克隆到 '/home/meng/anaconda3/pytorch/third_party/NNPACK'...
fatal: 无法访问 'https://github.com/Maratyszcza/NNPACK.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/Maratyszcza/NNPACK.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/NNPACK'
第二次尝试克隆 'third_party/NNPACK' 失败,退出
正克隆到 '/home/meng/anaconda3/pytorch/third_party/XNNPACK'...
fatal: 无法访问 'https://github.com/google/XNNPACK.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/google/XNNPACK.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/XNNPACK'
第二次尝试克隆 'third_party/XNNPACK' 失败,退出
ad/foxi.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/foxi'
克隆 'third_party/foxi' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/gemmlowp/gemmlowp'...
fatal: 无法访问 'https://github.com/google/gemmlowp.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/google/gemmlowp.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/gemmlowp/gemmlowp'
克隆 'third_party/gemmlowp/gemmlowp' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/gloo'...
fatal: 无法访问 'https://github.com/facebookincubator/gloo/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/facebookincubator/gloo' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/gloo'
克隆 'third_party/gloo' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/fmt'...
fatal: 无法访问 'https://github.com/fmtlib/fmt.git/':OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104
fatal: 无法克隆 'https://github.c443: 连接超时om/fmtlib/fmt.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/fmt'
克隆 'third_party/fmt' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/ios-cmake'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/ideep'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/kineto'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/neon2sse'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/googletest'...
fatal: 无法访问 'https://github.com/google/googletest.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/google/googletest.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/googletest'
克隆 'third_party/googletest' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/nccl/nccl'...
error: RPC 失败。curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104
fatal: 远端意外挂断了
fatal: 过早的文件结束符(EOF)
fatal: index-pack 失败
fatal: 无法克隆 'https://github.com/NVIDIA/nccl' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/nccl/nccl'
克隆 'third_party/nccl/nccl' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/pocketfft'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/protobuf'...
fatal: 无法访问 'https://github.com/protocolbuffers/protobuf.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/protocolbuffers/protobuf.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/protobuf'
克隆 'third_party/protobuf' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/psimd'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/pthreadpool'...
fatal: 无法访问 'https://github.com/Maratyszcza/pthreadpool.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/Maratyszcza/pthreadpool.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/pthreadpool'
克隆 'third_party/pthreadpool' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/onnx'...
error: RPC 失败。curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104
fatal: 远端意外挂断了
fatal: 过早的文件结束符(EOF)
fatal: index-pack 失败
fatal: 无法克隆 'https://github.com/onnx/onnx.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/onnx'
克隆 'third_party/onnx' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/pybind11'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/python-peachpy'...
fatal: 无法访问 'https://github.com/Maratyszcza/PeachPy.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/Maratyszcza/PeachPy.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/python-peachpy'
克隆 'third_party/python-peachpy' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/python-six'...
fatal: 无法访问 'https://github.com/benjaminp/six.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/benjaminp/six.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/python-six'
克隆 'third_party/python-six' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/python-enum'...
error: RPC 失败。curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104
fatal: 远端意外挂断了
fatal: early EOF
fatal: unpack-objects 失败
fatal: 无法克隆 'https://github.com/PeachPy/enum34.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/python-enum'
克隆 'third_party/python-enum' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/sleef'...
正克隆到 '/home/meng/anaconda3/pytorch/third_party/tensorpipe'...
fatal: 无法访问 'https://github.com/pytorch/tensorpipe.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/pytorch/tensorpipe.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/tensorpipe'
克隆 'third_party/tensorpipe' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/onnx-tensorrt'...
fatal: 无法访问 'https://github.com/onnx/onnx-tensorrt/':OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 110
fatal: 无法克隆 'https://github.com/onnx/onnx-tensorrt' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/onnx-tensorrt'
克隆 'third_party/onnx-tensorrt' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/zstd'...
fatal: 无法访问 'https://github.com/facebook/zstd.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/facebook/zstd.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/zstd'
克隆 'third_party/zstd' 失败。按计划重试
正克隆到 '/home/meng/anaconda3/pytorch/third_party/FP16'...
fatal: 无法访问 'https://github.com/Maratyszcza/FP16.git/':Empty reply from server
fatal: 无法克隆 'https://github.com/Maratyszcza/FP16.git' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/FP16'
第二次尝试克隆 'third_party/FP16' 失败,退出
正克隆到 '/home/meng/anaconda3/pytorch/android/libs/fbjni'...
fatal: 无法访问 'https://github.com/facebookincubator/fbjni.git/':Failed to connect to github.com port 443: 连接超时
fatal: 无法克隆 'https://github.com/facebookincubator/fbjni.git' 到子模组路径 '/home/meng/anaconda3/pytorch/android/libs/fbjni'
第二次尝试克隆 'android/libs/fbjni' 失败,退出
正克隆到 '/home/meng/anaconda3/pytorch/third_party/tbb'...
error: RPC 失败。curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104
fatal: 远端意外挂断了
fatal: 过早的文件结束符(EOF)
fatal: index-pack 失败
fatal: 无法克隆 'https://github.com/01org/tbb' 到子模组路径 '/home/meng/anaconda3/pytorch/third_party/tbb'
克隆 'third_party/tbb' 失败。按计划重试

以上错误,除了git clone --recursive https://github.com/pytorch/pytorch 会出现外,使用git submodule update --init --recursive --jobs 0 子模块更新时一样会出现。而且上述子模块在浏览器中均可以打开。查阅资料有以下3中方法

(1)设置代理

使用代理
git config --global http.proxy http://127.0.0.1:1080
git config --global https.proxy https://127.0.0.1:1080

查看当前代理
git config --global --get http.proxy
git config --global --get https.proxy

取消代理
git config --global --unset http.proxy
git config --global --unset https.proxy

设置代理的前提是已经安装了代理软件,并且在本机上端口是活的,端口根据代理指定,每个代理软件不一样,上述命令中1080只是一个示例,如果没有安装代理软件且端口不是活的,会报"拒绝连接"的错误

(2)改用SSH

按照资料7给出的步骤操作

  1. Add ssh-key to your github repository (instructions here).
  2. Switch your remote URL from HTTPS to SSH (instructions here).
  3. Push it like it's hot.

(3)换用其他可用网址

这是本篇博客的要推荐的方法(见资料4)。将github.com 改为https://github.com.cnpmjs.org,这个后缀是.org,ping 的时延时75ms左右,具体来说:

首先,将git clone --recursive https://github.com/pytorch/pytorch改为git clone https://github.com.cnpmjs.org/pytorch/pytorch,注意此时先不用 --recursive,然后cd pytorch,有个submodules 文件:.gitmodules,vim .gitmodules,将其中所有子模块网址github.com改为github.com.cnpmjs.org,然后更新子模块网址:git submodule sync,并同步子模块:git submodule update --init --recursive --jobs 0,同步后还是会报如下错误:

[root@localhost pytorch]# git submodule update --init --recursive --jobs 0
正克隆到 '/home/meng/project/pytorch/third_party/breakpad/src/third_party/lss'...
fatal: 无法访问 'https://chromium.googlesource.com/linux-syscall-support/':Failed to connect to chromium.googlesource.com port 443: 连接超时
fatal: 无法克隆 'https://chromium.googlesource.com/linux-syscall-support' 到子模组路径 '/home/meng/project/pytorch/third_party/breakpad/src/third_party/lss'
克隆 'src/third_party/lss' 失败。按计划重试
正克隆到 '/home/meng/project/pytorch/third_party/breakpad/src/third_party/lss'...
fatal: 无法访问 'https://chromium.googlesource.com/linux-syscall-support/':Failed to connect to chromium.googlesource.com port 443: 连接超时
fatal: 无法克隆 'https://chromium.googlesource.com/linux-syscall-support' 到子模组路径 '/home/meng/project/pytorch/third_party/breakpad/src/third_party/lss'
第二次尝试克隆 'src/third_party/lss' 失败,退出
无法递归进子模组路径 'third_party/breakpad'

这是由于缺少linux-syscall-support.h文件导致的,按照资料6里面的文件,复制一份,并拷贝至

pytorch/third_party/breakpad/src/third_party/lss/

后来由于空间不足,将pytorch 拷贝至根目录下,安装 python setup.py install,出现如下错误:

CMake Error: The current CMakeCache.txt directory /home/meng/project/pytorch2/build/CMakeCache.txt is different than the directory /home/meng/project/pytorch/build where CMakeCache.txt was created. This may result in binaries being created in the wrong place. If you are not sure, reedit the CMakeCache.txt

In file included from ../cmake/../third_party/pybind11/include/pybind11/pytypes.h:12,
                 from ../cmake/../third_party/pybind11/include/pybind11/cast.h:13,
                 from ../cmake/../third_party/pybind11/include/pybind11/attr.h:13,
                 from ../cmake/../third_party/pybind11/include/pybind11/pybind11.h:45,
                 from ../caffe2/python/pybind_state_dlpack.h:9,
                 from ../caffe2/python/pybind_state.h:16,
                 from ../caffe2/python/pybind_state.cc:1:
../cmake/../third_party/pybind11/include/pybind11/detail/common.h:124:10: 致命错误:Python.h:没有那个文件或目录
 #include <Python.h>
          ^~~~~~~~~~
编译中断。

刚开始,以为缺少python-devel,后来无法dnf 安装python37版本的devel,

meng@localhost ***]$ dnf list python3*-devel
上次元数据过期检查:0:04:41 前,执行于 2021年10月10日 星期日 21时33分53秒。
可安装的软件包
python36-devel.x86_64       3.6.8-2.module_el8.4.0+790+083e3d81        appstream
python38-devel.x86_64       3.8.6-3.module_el8.4.0+665+abc3a503        appstream
python39-devel.x86_64       3.9.2-1.module_el8.4.0+720+bfbc1bcb        appstream

再仔细观察是由于编译了一部分又复制过来的,而CMakeCache.txt已有记录,删除/pytorch/build/CMakeCache.txt,重新编译安装

   2.3.2安装后的测试

import torch

print(torch.__version__)

输出:

1.11.0a0+git60fe854

3 离线安装

上述源码安装耗时长,可以采用离线安装方式(资料10)。在确保显卡驱动已安装,且cuda,cudnn已安装(即nvcc )且版本对应时,从以下网址

https://download.pytorch.org/whl/cu113/torch_stable.html

下载 cuda113版本的torch,torchvision,torchaudio,即下面三个

torch-1.10.0+cu113-cp38-cp38-linux_x86_64.whl

torchvision-0.11.0+cu113-cp38-cp38-linux_x86_64.whl

torchaudio-0.10.0+cu113-cp38-cp38-linux_x86_64.whl

然后pip install torch-1.10.0+cu113-cp38-cp38-linux_x86_64.whl,同理安装后面2个

测试:

import torch

print(torch.__version__)

print(torch.cuda.is_available())

1.10.0+cu113

True

使用也会报警告如下:

/home/***/anaconda3/lib/python3.8/site-packages/torch/cuda/__init__.py:120: UserWarning: 
    Found GPU%d %s which is of cuda capability %d.%d.
    PyTorch no longer supports this GPU because it is too old.
    The minimum cuda capability supported by this library is %d.%d.
    
  warnings.warn(old_gpu_warn.format(d, name, major, minor, min_arch // 10, min_arch % 10))

提示GPU的算力低于此cuda版本要求的算力,可以安装较低版本的cuda、pytorch

参考资料:

1 PyTorch no longer supports this GPU because it is too old._耳东鹿其-CSDN博客

2解决Github打不开问题 - 知乎

3 https://github.com/pytorch/pytorch

4 彻底解决git clone和recursive慢的问题https://sirjamie.github.io/2020/10/18/git-clone/

5解决 fatal error: third_party/lss/linux_syscall_support.h: 没有那个文件或目录,https://blog.csdn.net/xiexiaotian11/article/details/85069644

6 https://github.com/linux-on-ibm-z/linux-syscall-support/blob/master/linux_syscall_support.h

7github - gits error on push Empty reply from server - Stack Overflowhttps://stackoverflow.com/questions/28364023/gits-error-on-push-empty-reply-from-server8  gcc - fatal error: Python.h: No such file or directory - Stack Overflow

9CMake Error: The current CMakeCache.txt directory is different..._万俟淋曦的进击手记-CSDN博客10 Pytorch1.10安装记录(CUDA11.3)_霹雳吧啦Wz-CSDN博客

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值