在GT 820M显卡的笔记本上安装PyTorch的尝试

笔记本是联想G50-70m,显卡是gt 820M,在宿舍隔离,手边只有这个老旧笔记本,闲来无事,准备在它上面安装PyTorch玩玩儿

文章目录

  • 安装
  • 报错
  • 探索
    • 确定cuda版本
    • 确定驱动版本
    • 确定pytorch版本
    • 确定torchvision版本
    • 安装测试(失败)
    • 结论

安装

官网https://pytorch.org/get-started/locally/中有详细的安装方法,并且文档提供了一个工具,选择好你的环境后,提示安装方法,比如:
在GT 820M显卡的笔记本上安装PyTorch的尝试_第1张图片
安装命令为:

conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch

确认安装是否成功:

为了确保 PyTorch 安装正确,我们可以通过运行示例 PyTorch 代码来验证安装。在这里,我们将构造一个随机初始化的张量。

在命令行中,键入:

import torch
x = torch.rand(5, 3)
print(x)

输出应该类似于:

tensor([[0.3380, 0.3845, 0.3217],
        [0.8337, 0.9050, 0.2650],
        [0.2979, 0.7141, 0.9069],
        [0.1449, 0.1132, 0.1375],
        [0.4675, 0.3947, 0.1426]])

此外,要检查您的 GPU 驱动程序和 CUDA 是否已启用并可由 PyTorch 访问,请运行以下命令以返回 CUDA 驱动程序是否已启用:

import torch
torch.cuda.is_available()

报错

gt820MGPU版pytorch安装报错。

torch.cuda.is_available()报错:

UserWarning: CUDA initialization: The NVIDIA driver on your system is too old (found version 9010). Please update your GPU driver by downloading and installing a new version from the URL: http://www.nvidia.com/Download/index.aspx Alternatively, go to: https://pytorch.org to install a PyTorch version that has been compiled with your version of the CUDA driver. (Triggered internally at …\c10\cuda\CUDAFunctions.cpp:112.)
return torch._C._cuda_getDeviceCount() > 0

我笔记本是联想G50-70m,显卡是gt 820M,安装1.10.1的pytorch,提示 NVIDIA 驱动太老了。

将 PyTorch 与 CUDA 结合使用的系统要求如下:

  • 显卡必须支持所需版本的 CUDA
  • 显卡驱动程序必须支持所需版本的 CUDA
  • PyTorch 构建的二进制文件必须支持显卡的计算能力

注意:如果你的安装预构建的二进制文件(使用 pip 或 conda),那么在安装支持 CUDA 的 PyTorch 之前,你无需在系统上安装 CUDA 工具包或运行时。这是因为 PyTorch 除非从源代码编译,否则总是与 CUDA 库的副本一起交付。

参考:为什么 torch.cuda.is_available() 即使在使用 cuda 安装 pytorch 后仍返回 False?

探索

确定cuda版本

cuda版本确定:CUDA GPUs_supported

gt 820M 算力2.1,通过算力可以确定cuda支持的版本

在GT 820M显卡的笔记本上安装PyTorch的尝试_第2张图片
支持的cuda版本最新为8.0的

在GT 820M显卡的笔记本上安装PyTorch的尝试_第3张图片

确定驱动版本

一般情况下,如果安装了最新的驱动程序版本,那么我们的的显卡驱动程序可能支持与我们的显卡兼容的所有 CUDA 版本(参见上面)。要进行验证,我们可以查看CUDA 发行说明中的表 2
在GT 820M显卡的笔记本上安装PyTorch的尝试_第4张图片
查看我目前的驱动版本号,我的电脑 -> 管理 ->设备管理器->适配器管理,右击自己的显卡,查看属性。
在GT 820M显卡的笔记本上安装PyTorch的尝试_第5张图片

也可以使用驱动精灵查看驱动号:

在这里插入图片描述

驱动版本号为391.35,支持cuda8.0版本的。

如果你的的驱动不是最新的,可以前往NVIDIA驱动下载网站 进行下载,选择如下:

在GT 820M显卡的笔记本上安装PyTorch的尝试_第6张图片
点击search,下载。

这里下载只能选择Game Ready Driver(GRD),而且下载的是425.31版本的。但是我安装的时候提示硬件不兼容。。。 所以我这里就使用已经装的395.35(驱动精灵上这是最新版本。。)

确定pytorch版本

至此,确定了我的笔记本显卡gt 820M,驱动版本395.35,支持的cuda版本为8.0,查看支持的pytorch版本如下:

https://pytorch.org/get-started/previous-versions/

在GT 820M显卡的笔记本上安装PyTorch的尝试_第7张图片
支持的pytorch版本为0.4.1。

确定torchvision版本

另外还有torchvision的版本:

https://github.com/pytorch/vision#installation

torch torchvision python
main / nightly main / nightly >=3.7, <=3.9
<=1.0.1 0.2.2 ==2.7,>=3.5,<=3.7

1.0.1以下的torch支持0.2.2的torchvision版本。

安装测试(失败)

下载速度慢的话,可以更换清华源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

参考:https://mirror.tuna.tsinghua.edu.cn/help/anaconda/

重新安装pytorch0.4.1 ,以及torchvision(可选)

conda create -n pytorch0_4_1 python=3.7	# 创建新的虚拟环境
conda activate pytorch0_4_1 # 激活虚拟环境
conda install pytorch=0.4.1 cuda80 torchvision==0.2.2 -c pytorch		# 注意版本对应

-c :如果希望从默认通道以外的其他通道安装,则指定要使用哪个通道的一种方法是使用 conda install -c channel_name package_name语法。

测试:

import torch

x = torch.rand(5, 3)
print(x)

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

输出:

tensor([[0.0776, 0.9441, 0.5362],
[0.8872, 0.8909, 0.7444],
[0.2230, 0.7352, 0.2551],
[0.8170, 0.6469, 0.7557],
[0.2881, 0.2817, 0.0083]])
0.4.1
True

UserWarning:
Found GPU0 GeForce GT 820M which is of cuda capability 2.1.
PyTorch no longer supports this GPU because it is too old.
warnings.warn(old_gpu_warn % (d, name, major, capability[1]))
tensor([0.], device=‘cuda:0’)

发现Found GPU0 GeForce GT 820M which is of cuda capability 2.1. PyTorch no longer supports this GPU because it is too old.,很遗憾, PyTorch 在编译时没有对计算能力为2.1的GPU 提供支持。

结论

又看到了一个老哥的回答,作为这篇文章结尾:

参考此页面,PyTorch(甚至是最古老的版本)支持最早的 CUDA 版本是7.5。然而,看这个页面,CUDA7.5需要最低的计算能力是2.0。因此,理论上,你的机器至少应该支持 CUDA7.5

但是,PyTorch 也需要 cuDNN, cuDNN6.0适用于 CUDA 7.5。但是 cuDNN6.0需要3.0的计算能力。 因此,大多数情况下,PyTorch 无法在您的机器上运行。

自己的破笔记本gt840M算力只有2.1,太低了啊,等隔离结束了,用实验室的GTX 1660跑去,这个算力有7.5。

那目前只能用CPU版本先学着了。

CPU版本安装:

conda install pytorch torchvision torchaudio cpuonly -c pytorch

你可能感兴趣的:(#,机器学习,pytorch,深度学习,python)