前言:使用系统Ubuntu16.04,之前折腾了NVIDIA驱动和cuda,顺利完成安装。最近因为要用pytorch,由于可能需要使用不通版本的语言或框架,所以考虑为了日后环境管理方便,安装了anaconda3,并基于此来安装pytorch,安装过程遇到的一些问题,在此记录解决的过程和思路:
本人主要遇到的问题:
1.安装anaconda3时在可以访问anaconda的官网,但是下载时,没有速度或速度太慢,下不动
2.安装pytorch时,官网上最新版本需要的cuda版本太高,硬件不支持,安装过程中下载环节网络连接不通
3.pytorch安装成功了,安装时明明设置了对应的cuda版本,但是运行torch.cuda.is_available()时始终返回False,cuda不可用
PS:一个可能普遍存在的问题,大部分人都不可能保持自己的机器硬件设备或驱动都是最新的,各种软件包版本都是最新的,有些源码也是需要旧版本软件包的,而pytorch官网上给出的用命令安装的基本都是最新版本,要安装历史版本需要另外找方法下载,所以希望这篇笔记能够对其他人有参考意义。
NVIDIA驱动和cuda安装
这个步骤的资料比较多见了,也可以参考我之前的一篇文章
Ubuntu安装NVIDIA驱动和CUDA,这里就不赘述了。
cuda多版本切换
这个问题原本可以通过conda建立多个虚拟环境,在不通虚拟环境中安装不同版本来解决。不过本人的经历是这样的(不知道有没有类似的朋友,时间宝贵的可以略过此段):先是装好了显卡驱动和cuda10.0的版本,本人的显卡最高支持到NVIDIA驱动418.56版本(418还有更高的子版本),安装驱动后就直接顺便装了cuda10.0。装了anaconda3之后,发现pytorch官方首页上面提供推荐的支持版本只有cuda9.2和cuda10.1,当时觉得找历史版本自己装麻烦,想装最新的,就又装了cuda10.1,第一次是直接卸载后重装,结果后来还是遇到了前面所说的问题3,经过一番查找和思考,发现我的显卡只支持10.1.130,但是pytorch with cuda10.1的离线文件名中体现出需要的是10.1.243,即需要安装NVIDIA官网中的“cuda 10.1 update2"那个,但是我的显卡并不支持。于是又要回到cuda10.0的版本去。
安装了多版本的cuda,会在/usr/local/目录中有多个cuda版本的目录,如下所示:

可以看到,除了两个版本的cuda目录外,安装程序还创建了一个软链接cuda指向某一个版本的cuda目录(有时候安装程序不会创建这样的链接,我们可以自己手动创建),这样一来,在配置系统环境变量的时候,可以不按照之前的帖子,直接把cuda某一版本的安装目录配置进去,而是讲链接配置进去,使用如下命令:
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda/bin:$PATH
但凡有一些Linux系统使用基础的朋友应该都能明白了,需要更改版本的时候,修改/usr/local/目录重点软链接就可以了,可以使用如下命令:
sudo ln -snf /usr/local/cuda-x.x /usr/local/cuda
网上有些帖子说的是先删除旧的,再创建新的(命令我就不写了,效果一样的,只是因为只用ln -s会提示已存在该链接的错误,关于ln命令的用法,可以通过ln --help来查看,就知道各参数的含义了)。
cuDNN安装
根据官网的提示按照以下步骤安装即可。(基础好的直接查看cudnn官方文档)
- 下载cuDN
Pytorch安装与CUDA配置

最低0.47元/天 解锁文章
1万+





