我想在我的计算机上使用PyTorch及其GPU计算。
我有一台运行Ubuntu 17.10的计算机。电脑(Alienware m17x)有两张显卡:
为了安装PyTorch,我按照PyTorch网站上的说明pytorch.org
1)我使用deb文件安装了CUDA 9:https://developer.nvidia.com/cuda-downloads
=> Linux/x86_64/Ubuntu/17.04/deb (local)
2)我使用conda命令行安装了Pytorch:conda install pytorch torchvision cuda90 -c pytorch
这两个步骤都没有给我带来任何类型的错误。
我重新启动了电脑。显然,检测到两张卡片:
$ lspci | grep -i vga
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GF114M [GeForce GTX 675M] (rev a1)
但显然驱动程序或CUDA本身存在问题。 nvidia-detector不会给我任何回报:
$ nvidia-detector
none
并且pytorch不能使用cuda:
[1]: import torch
In [2]: torch.cuda.is_available()
Out[2]: False
你可以帮帮我吗?如有必要,我可以提供额外的信息,但我不确定什么是相关的。
答案 0 :(得分:1)
如果您像这样安装pytorch,则无需安装cuda即可将GPU与pytorch一起使用:pytorch二进制文件包含所有必需的cuda库。
因此,安装pytorch时选择哪种cuda版本也没有关系。通常,人们可能会想要最新版本,但是在需要使用旧GPU的情况下,旧cuda版本随附的pytorch二进制文件可能是唯一仍支持该GPU的版本。
如果未检测到GPU,则可能与CUDA库无关,而与您的内核驱动程序有关。确保您的系统已安装了经过测试的最新NVIDIA专有内核驱动程序。
可能令人困惑的是,可以在任何系统上安装具有cuda支持的pytorch二进制文件,包括没有GPU或没有GPU但安装了系统驱动程序的pytorch二进制文件。在您尝试实际使用GPU并调用.cuda()
答案 1 :(得分:0)
1。如果有两个GPU,请不要使用CUDA deb文件。请改为使用运行文件,因为在询问是否安装openGL和x-server选项时需要选择N。
2。更重要的是,Cuda9.0不支持17.10。 Cuda 9.0仅支持Unbuntu 17.04和16.04
3。仅cuda9.2支持ubuntu17.10 https://developer.nvidia.com/cuda-92-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1710
4。确保已仔细阅读Linux的安装指南。我在这里写了一个相关的答案。 ubuntu 18.04 driver setup for nvidia tesla k40m gpu for use with matlab