同时安装CUDA8.0和CUDA9.0
http://geyao1995.com/CUDA8_CUDA9/
tensorflow1.5版本竟然不支持CUDA8.0了
卸载是不可能卸载的
1.原料准备
CUDA9.0下载:https://developer.nvidia.com/cuda-90-download-archive
建议选择使用
.run文件安装,因为使用.deb可能会将已经安装的较新的显卡驱动替换。cuDNN7.0下载(需要注册账号,注意选择对应CUDA9.0的版本):https://developer.nvidia.com/cudnn
对于cuDNN7.0的安装方式选项,我选择的是cuDNN v7.0.5 Library for Linux,对应于
cudnn-9.0-linux-x64-v7.tgz文件,解压之后放到cuda-9.0文件夹中就可以。本机已经安装的版本是CUDA8.0和cuDNN5.1
2.打开菜谱
不去网上瞎找教程,参考官方文档
CUDA(看左上角是不是CUDA9.0版本的文档,如果显示最新版本,需要去找旧的9.0版本):https://docs.nvidia.com/cuda/archive/9.0/cuda-installation-guide-linux/index.html
cuDNN:https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#install-linux
3.下锅
1.安装新版本的CUDA和cuDNN
除了安装显卡选择no,还有一步要选择no(因为之前第一次安装cuda8.0,已经创建了/usr/local/cuda这个symbolic link,所以这里就没必要再创建一次了):
1 |
Do you want to install a symbolic link at /usr/local/cuda? (y)es/(n)o/(q)uit: n |
最后一步,安装CUDA 9.0 Samples也可以选no。
提醒:在第一次安装CUDA中,官方文档中重要的一步,在
~/.bashrc文件中添加(对于64位系统):
1
2
3> export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
> export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
>
如果是9.0版本CUDA,将8.0换为9.0。
安装好后,/usr/local/下面有三个文件夹:cuda-8.0、cuda-9.0、cuda(这个是软链接)
接下来加入cuDNN,注意这里cuDNN官方教程中给的是:
1 |
$ sudo cp cuda/include/cudnn.h /usr/local/cuda/include |
多版本情况下需要将cuda文件夹替换成cuda-9.0文件夹:
1 |
$ sudo cp cuda/include/cudnn.h /usr/local/cuda-9.0/include |
2.版本切换
把
~/.bashrc下与cuda相关的路径都改为/usr/local/cuda/而不使用/usr/local/cuda-8.0/或/usr/local/cuda-9.0/
所以,此时~/.bashrc中应该是:
1 |
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
|
记住,cuda是symbolic link,所以想切换CUDA版本的时候只需要将cuda-8.0或cuda-9.0指向cuda就可以了。
刷新:
1 |
source ~/.bashrc |
1.切换到CUDA9.0
1 |
rm -rf /usr/local/cuda #删除之前创建的软链接 |
2.切换到CUDA8.0
1 |
rm -rf /usr/local/cuda #删除之前创建的软链接 |
4.总结
- 本机安装好CUDA8.0+cuDNN5.1和CUDA9.0+cuDNN7.0。在/usr/local目录下两个文件夹cuda-8.0和cuda-9.0。
- 添加软链接cuda到PATH。
- 想用哪个版本的CUDA,就将哪个版本的CUDA链接到cuda。
5.其他方法
可以使用conda安装(未验证):
1 |
conda install -c anaconda cudatoolkit |
或者用别的channel:
1 |
conda install -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64/ cudatoolkit=8.0 |
致谢
感谢维天大神提供的思路,要不然就买一台新电脑了!
参考
《安装多版本 cuda ,多版本之间切换》:https://blog.csdn.net/maple2014/article/details/78574275
同时安装CUDA8.0和CUDA9.0的更多相关文章
- Ubuntu14.0 + CUDA9.0 + cudnn7.0 + TensorFlow-gpu1.7.0
在安装好nvidia驱动的基础上安装 CUDA9.0 + cudnn7.0 + TensorFlow-gpu1.7.0 这三个是匹配的版本 别的匹配(CUDA8.0 + cudnn6.0 + Tens ...
- cuda9.0 中不存在libnppi.so
编译一个caffe版本,报错找不到 -lnppi 发现使用打是cuda9.0, 但是cuda9.0 中不存在libnppi.so. 只好换成cuda8.0.
- 深度学习环境搭建(ubuntu16.04+Titan Xp安装显卡驱动+Cuda9.0+cudnn+其他软件)
一.硬件环境 ubuntu 16.04LTS + windows10 双系统 NVIDIA TiTan XP 显卡(12G) 二.软件环境 搜狗输入法 下载地址 显卡驱动:LINUX X64 (AMD ...
- 安装Cuda9.0+cudnn7.3.1+tensorflow-gpu1.13.1
我的安装版本: win10 x64 VS2015 conda python 3.7 显卡 GTX 940mx Cuda 9.0 cudnn v7.3.1 Tensorflow-gpu 1.13.1 1 ...
- Ubuntu环境下安装CUDA9.0
前言: 本篇文章是基于安装CUDA 9.0的经验写,CUDA9.0目前支持Ubuntu16.04和Ubuntu17.04两个版本,如下图所示(最下面的安装方式我们选择第一个,即runfile方式): ...
- Ubuntu安装CUDA9.0 + cuDNN
本篇文章是基于安装CUDA 9.0的经验写,CUDA9.0目前支持Ubuntu16.04和Ubuntu17.04两个版本,如下图所示(最下面的安装方式我们选择第一个,即runfile方式): 下载链接 ...
- TensorFlow-GPU安装配置(win10+tensorflow1.6+CUDA9.0+cudnn7.0+python3.6+Visual Studio2013)
安装步骤: TensorFlow官网 tensorflow一般只能装在python3上,CUDA9.0搭配cudnn7.0,CUDA8.0搭配cudnn6.0 查看对应要安装的环境版本(因为会不断更新 ...
- Win7 +Cuda9.0+cudnn7.0.5 tensorflow-gpu1.5.0 安装实战
https://blog.csdn.net/gangeqian2/article/details/79358543 https://blog.csdn.net/tomato_sir/article/d ...
- Ubuntu16.04 + cuda9.0 + cudnn7.1.4 + tensorflow安装
安装前的准备 UEFI 启动GPT分区 Win10和Ubuntu16.04双系统安装 ubuntu16.04 NVIDIA 驱动安装 ubuntu16.04 NVIDIA CUDA8.0 以及cuDN ...
随机推荐
- JS中数据结构之链表
1.链表的基本介绍 数组不总是组织数据的最佳数据结构,在很多编程语言中,数组的长度是固定的,所以当数组已被数据填满时,再要加入新的元素就会非常困难.在数组中,添加和删除元素也很麻烦,因为需要将数组中的 ...
- LOJ 6435 「PKUSC2018」星际穿越——DP+倍增 / 思路+主席树
题目:https://loj.ac/problem/6435 题解:https://www.cnblogs.com/HocRiser/p/9166459.html 自己要怎样才能想到怎么做呢…… dp ...
- 'Error Domain=NSURLErrorDomain Code=-999' AFNetworking请求报错
早上请求app请求登录接口发现了下面的错误信息: Error Domain=NSURLErrorDomain Code=-999 "已取消" UserInfo={NSErrorFa ...
- mysql8.0 新特性,对json类型的常用操作
mysql8 新特性-json数据类型操作 -- 根据key(可多个)获取value SELECT JSON_EXTRACT('{"id": 14, "name" ...
- WebBrowser元素定位的常用方法
在delphi中想要使用WebBrowser控件,需要一了解一些浏览器和网站制作的知识.操作元素(增删改查).需要提前了解HTML DOM.
- Python做简单的字符串匹配详解
Python做简单的字符串匹配详解 由于需要在半结构化的文本数据中提取一些特定格式的字段.数据辅助挖掘分析工作,以往都是使用Matlab工具进行结构化数据处理的建模,matlab擅长矩阵处理.结构化数 ...
- .net 运行原理
刚学习那会,感觉.net运行原理是很复杂的,也去了解过相关的东西,但是很晦涩,难于理解.感觉有些难了,也就放弃了解了.今天回头想想,也是当时有些毛躁了,不管怎么说,时至今日是有些明白运行原理. 从头开 ...
- 斯坦福【概率与统计】课程笔记(四):EDA | 茎叶图
茎叶图的只做方法如下: 将每个数字分成茎和叶 对所有茎排序,并纵向从小到大放置好 对相同茎下的叶归到一起并排序,垂直于茎的排列方向放置好 举个例子:我们有一份奥斯卡影后的年龄集合: 34 34 27 ...
- 嵌入式C语言3.2 关键字---自定义数据类型
1. struct 结构体 基本语法 struct myabc{ unsigned int a; unsigned int b; unsigned int c; unsigned int d; } 调 ...
- shell ssh和mount 挂载问题
任务: 将服务器端数据挂载在板子上 1. 首先ssh问题 spawn ssh $remote_user@$remote_host (1) ssh:connect to host 10.110.6.50 ...