PyTorch 是一个基于 Python 的科学计算库,它主要由两个部分组成:其中一个是支持张量运算的torch
,另一个是支持自动梯度计算的torch.autograd
模块。PyTorch 在 GPU 上的加速对于模型训练和推理都有着重要的作用。而在安装 PyTorch 时,由于各种原因,可能会出现 CUDA 相关的报错,本文将会针对这些问题进行介绍。
错误1:找不到 CUDA 环境
在运行 PyTorch 代码时,会提示找不到 CUDA 环境,类似如下的报错信息:
RuntimeError: Caught RuntimeError: Expected one of cpu, cuda, mkldnn, opengl, opencl, ideep, hip, msnpu device type at start of device pointer but got cuda:0 instead.
解决方法一:检查 CUDA 版本是否适配
检查本地 CUDA 版本是否适配当前的 PyTorch 版本。此外,需要注意 PyTorch 版本中的 CUDA 版本和系统中的 CUDA 版本是否相同。如果本地 CUDA 版本和 PyTorch 版本不匹配,可以通过以下命令修改 PyTorch 版本:
pip install torch==1.4.0+cu100 -f https://download.pytorch.org/whl/cu100/torch_stable.html
解决方法二:检查 GPU 是否能被 PyTorch 正确解析
检查是否能够顺利地使用 GPUs。可以通过以下代码检查的 GPU 是否能够被 PyTorch 正确使用:
import torch
if torch.cuda.is_available():
device = torch.device("cuda")
print(f'The available device is {device}')
else:
print("No GPU available!")
错误2:下载过程中报 network error
在使用 pip 安装 PyTorch 时,由于网络原因,可能会出现下载失败的情况,如下:
ERROR: Could not install packages due to an EnvironmentError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Max retries exceeded with url: /packages/ce/9d/c996fd2cbf870240a2a1ca59c1200202ad8a4bba7c2d4fad5a441f1d07d/Pillow-7.1.1-cp38-cp38-win_amd64.whl (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x000001E1B7664C10>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed'))
解决方法:更改清华的镜像源
通过更改 PyTorch 的镜像源。在命令行中运行如下命令:
pip install --user -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple pytorch
更换镜像之后,重新执行安装 PyTorch 的命令即可。
以上是 PyTorch CUDA 安装报错的两种常见解决方法,我们可以根据不同的情况来进行相应的解决方案。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:pytorch cuda安装报错的解决方法 - Python技术站