Ubuntu18.04: GPU Driver 390.116 + CUDA9.0 + cuDNN7 + tensorflow 和pytorch环境搭建
1.close nouveau
终端输入:sudo gedit /etc/modprobe.d/blacklist.conf
末尾加两行
blacklist nouveau
options nouveau modeset=0
然后保存
之后运行这行命令
sudo update-initramfs -u
重启,然后运行:
lsmod | grep nouveau
结果应该不会显示任何东西
2.Install NVIDIA Driver
查看显卡型号和推荐的显卡驱动(显卡驱动的版本直接就决定了cuda的版本,而cuda版本也就决定了cudnn和tensorflow的版本,所以显卡驱动务必安装正确)
ubuntu-drivers devices
安装驱动,方式一(取决于下载速度,通常会很慢):
# 将系统中存在的nvidia驱动全部卸载掉(如果有的话)
sudo apt-get purge nvidia*
# 添加ppa源并更新
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
# 安装nvidia-390版本
sudo apt-get install nvidia-390
方式二:打开 Software & Updates ,点击”Additional Drivers” ,选择第一个选项Using NVIDIA driver metapackage from nvidia-driver-390(这种方式 取决于下载速度,通常会很慢)
方式三:从官网下载驱动文件NVIDIA-Linux-x86_64-390.116.run,然后手动安装(主要安装驱动需要gcc-7,和make)
sudo apt install gcc
sudo apt install g++
sudo apt install make
sudo chmod +x NVIDIA-Linux-x86_64-390.116.run
sudo ./NVIDIA-Linux-x86_64-390.116.run -no-nouveau-check -no-opengl-files
-no-nouveau-check:安装驱动时禁用nouveau
-no-opengl-files:只安装驱动文件,不安装OpenGL文件
测试是否安装成功
nvidia-smi
3.Install CUDA9.0
降级gcc,由于cuda-9.0只支持gcc-6.0以下的版本,而Ubuntu18.04系统默认安装的gcc-7.3版本,所以需要降级为gcc-5,
sudo apt install gcc-5
sudo apt install g++-5
转至/usr/bin/ 目录下,创建软链接至gcc-5版本
sudo mv gcc gcc.bak #备份
sudo ln -s gcc-5 gcc
sudo mv g++ g++.bak
sudo ln -s g++-5 g++
下载run file (cuda_9.0.176_384.81_linux.run)
sudo chmod +x cuda_9.0.176_384.81_linux.run
sudo ./cuda_9.0.176_384.81_linux.run –override
注意:
--override is necessary.
When installing, it will ask you whether install driver either. Answer NO because you have install it earlier!
4.Install cudnn7
tar -xzvf cudnn-9.0-linux-x64-v7.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
修改环境变量
sudo vi ~/.bashrc
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda
更新系统环境变量
source /etc/profile
检查cuda的安装结果:nvcc -V
5. Install tensorflow
由于安装的是cuda9.0,选择tensorflow_gpu-1.5.0-cp36-cp36m-linux_x86_64.whl,最新版本的tensorflow-gpu与cuda9.0不兼容
先安装 Anaconda3:
下载地址:https://www.anaconda.com/download/
根据系统选择对应的安装包(
下载完成后,cd到存放目录并执行: bash Anaconda3-xxxx.sh #xxxx此处对应自己的包
按照提示安装即可,安装路径可以选择默认。
安装完之后执行:
source ~/.bashrc
检查是否安装成功
终端执行:conda list
若提示命令无法找到,则修改.profile文件:
sudo gedit ~/.profile
添加以下几行:
if [ -d "$HOME/anaconda3/bin" ] ; then
PATH="$HOME/anaconda3/bin:$PATH"fi
使生效:
source ~/.profile
创建tensorflow环境
conda create -n tensorflow pip python=3.6 #python版本根据要安装的tensorflow选择
激活环境:
source activate tensorflow
安装tensorflow:
pip install tensorflow_gpu-1.5.0-cp36-cp36m-linux_x86_64.whl
安装过程中会下载其他的依赖包,下载可能会很慢,可以先把相关依赖包安装完,再安装tensorflow。
例如,pip install numpy -i http://pypi.douban.com/simple/
镜像源:
清华:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
豆瓣:http://pypi.douban.com/simple/
若需要安装Keras,则tensorflow1.5.0版本对应的Keras版本为2.1.4
可直接 pip install keras==2.1.4进行安装,此时keras后端是tensorflow,如需要将后端改为Theano,则需要安装Theano,然后修改Keras的配置文件
pip install Theano
配置:

将“tensorflow”修改为“theano”
验证安装
终端输入:python
然后输入以下代码:
import tensorflow as tf
import keras
import theano 没有错误就可以了。
创建pytorch环境
conda create -n pytorch pip python=3.6
激活环境:
source activate pytorch
安装numpy
pip install numpy
安装pytorch:
由于直接在线下载安装很慢,所以需要先把torch-1.0.0-cp36-cp36m-linux_x86_64.whl文件下载下来,然后离线安装
pip install torch-1.0.0-cp36-cp36m-linux_x86_64.whl
Ubuntu18.04: GPU Driver 390.116 + CUDA9.0 + cuDNN7 + tensorflow 和pytorch环境搭建的更多相关文章
- ubuntu 16.04 +anaconda3.6 +Nvidia DRIVER 390.77 +CUDA9.0 +cudnn7.0.4+tensorflow1.5.0+neural-style
这是我第一个人工智能实验.虽然原理不是很懂,但是觉得深度学习真的很有趣.教程如下. Table of Contents 配置 时间轴 前期准备工作 anaconda3 安装 bug 1:conda:未 ...
- Ubuntu18.04+CUDA9.0+cuDNN7.1.3+TensorFlow1.8 安装总结
Ubuntu18.04发行已经有一段时间了,正好最近Tensorflow也发布了1.8版本,于是决定两个一起装上,以下是安装总结,大致可 以分为5个步骤 确认当前软件和硬件环境.版本 更新显卡驱动,软 ...
- ubuntu18.04下搭建深度学习环境anaconda2+ cuda9.0+cudnn7.0.5+tensorflow1.7【原创】【学习笔记】
PC:ubuntu18.04.i5.七彩虹GTX1060显卡.固态硬盘.机械硬盘 作者:庄泽彬(欢迎转载,请注明作者) 说明:记录在ubuntu18.04环境下搭建深度学习的环境,之前安装了cuda9 ...
- ubuntu16.04 安装cuda9.0+cudnn7.0.5+tensorflow+nvidia-docker配置GPU服务
[摘要] docker很好用,但是在GPU服务器上使用docker却比较复杂,需要一些技巧,下面将介绍一下在ubuntu16.04环境下的GPU-docker环境搭建过程. 第一步: 删除之前的nvi ...
- Ubuntu18.04+CUDA9.0+cuDNN7.1.3+openface安装总结
目录 前言 编译工具CMake C++标准库安装 下载OpenFace代码 OpenCV安装 luarocks-Lua 包管理器,提供一个命令行的方式来管理 Lua 包依赖.安装第三方 Lua 包等功 ...
- Ubuntu16.04安装cuda9.0+cudnn7.0
Ubuntu16.04安装cuda9.0+cudnn7.0 这篇记录拖了好久,估计是去年6月份就已经安装过几遍,然后一方面因为俺比较懒,一方面后面没有经常在自己电脑上跑算法,比较少装cuda和cudn ...
- Tensorflow1.5.0+cuda9.0+cudnn7.0+gtx1080+ubuntu16.04
目录 Tensorflow1.5.0+cuda9.0+cudnn7.0+gtx1080+ubuntu16.04 0. 前记 1. 环境说明 2. 安装GTX1080显卡驱动 3. CUDA 9.0安装 ...
- ubuntun16.04+cuda9.0+cudnn7+anaconda3+pytorch+anaconda3下py2安装pytorch
一.电脑配置 说明: 电脑配置: LEGION笔记本CPU Inter Core i7 8代GPU NVIDIA GeForce GTX1060Windows10 所需的环境: Anaconda3(6 ...
- Ubuntu16.04 + cuda9.0 +cudnn7.1(转载)
转载一个详细可用的ubuntu16.04+cuda9.0+cudnn7.1教程. 0 - 参考材料 https://blog.csdn.net/Umi_you/article/details/8026 ...
随机推荐
- python headers missing
系统环境 win7 64 bit,cygwin,Gvim8.1 问题 Gvim通过插件管理器Vundle下载好了YouCompleteMe插件的全部文件. 利用cygwin 进入在YouComplet ...
- Wireshark使用介绍(一):Wireshark基本用法
抓取报文: 下载和安装好Wireshark之后,启动Wireshark并且在接口列表中选择接口名,然后开始在此接口上抓包.例如,如果想要在无线网络上抓取流量,点击无线接口.点击Capture Opti ...
- mount挂载相关参数详解
mount [ -t 设备类型 ] [ -o 扩展参数 ] dev dir -t:指定mount挂载设备类型,常见的类型有nfs.ntfs.vfat.iso9660等: is09 ...
- 基于Java服务的前后端分离解决跨域问题
导语:解决跨域问题,前后端都增加相应的允许跨域的代码段即可. 一.后端增加允许跨域的代码,可以在具体controler层加,最好是在filter中添加,这样添加一次就够了,不用在每个controler ...
- iOS进阶之使用 NSURLProtocol 拦截 HTTP 请求(转载)
这篇文章会提供一种在 Cocoa 层拦截所有 HTTP 请求的方法,其实标题已经说明了拦截 HTTP 请求需要的了解的就是 NSURLProtocol. 由于文章的内容较长,会分成两部分,这篇文章介绍 ...
- C++ STL标准容器插入删除算法的复杂度
1 vector内部实现: 数组 // 就是没有固定大小的数组,vector直接翻译是向量的意思支持操作:begin(), //取首个元素,返回一个iteratorend(), //取末尾(最后一个元 ...
- HL-D793G七位蓝色+PT6311驱动
和之前那块一起买的.又画了这个屏幕驱动,还画了灯丝电源驱动,和以前画的stm8核心板在JLC拼板. 亚光黑颜色,不单独收钱! 切好水洗吹干! 忘记给排针加丝印,手写代之. 焊接的时候,脑子发热,以为把 ...
- CH 5102Mobile Service题解
题目: 用动态规划很容易将完成任务量作为dp的阶段,通过指派服务员,从当前i-1个任务转移到i个任务: 我们可以用一个四维数组f[i][x][y][z]来表示在完成当前任务i时,三个机器人分别在x,y ...
- jsp+postgresql学习笔记(1)用户登录与注册
前期准备: tomcat的安装与配置(略) jdk的安装与配置(略) eclipse软件安装与配置(略) webstrom软件或IDEA的安装与配置(大概用了IDEA就不需要eclipse了,但是怎么 ...
- line-height的高度机理
1.元素高度从何而来?是由里面的文字撑开的? <!DOCTYPE html> <html lang="en"> <head> <meta ...