艰辛五天:Ubuntu14.04+显卡驱动+cuda+Theano环境安装过程

题记:从一开始不知道显卡就是GPU(虽然是学计算机的,但是我真的不知道…脑残如我也是醉了),到搞好所有这些环境前后弄了5天时间,前面的买显卡、装显卡和装双系统见另一篇博客装显卡、双系统,这篇主要记录我怎么配置后面的环境,虽然中间重装Ubuntu三次,后面安装过程也没差别。

基础平台:64-bit,Ubuntu14.04

1.安装NVIDIA驱动(参考技术文章,基本是复制啊,蟹蟹作者~)

(1) 在官网下载NVIDIA驱动,根据自己买的型号选择下载,放到 /home/lvxia/ 目录下面,我下载的是NVIDIA-Linux-x86_64-367.27.run.

(2) 屏蔽开源驱动 nouveau(原文章说“可以不编辑blacklist.conf,NVIDIA.run驱动程序可以自己停止其他开源驱动,但是需要重启”)

sudo gedit /etc/modprobe.d/blacklist.conf

添加以下内容保存

blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
(这里有一行空格)

(3) 删除旧NVIDIA驱动

sudo apt-get --purge remove nvidia-*(需要清除干净)
sudo apt-get --purge remove xserver-xorg-video-nouveau

(4) 重启电脑。

(5) 按Ctrl + Alt +F1(F1~F6均可)到x-server, Ctrl+Alt+F7是返回

(6) 关闭图形环境,否则驱动无法正常安装

     输入用户名密码登录,然后键入命令后执行(数字不能用小键盘输入)

sudo service lightdm stop

    成功关闭服务后将出现:lightdm stop/waiting

(7) 进入驱动所在的文件夹,这里就是/home/lvxia,执行

sudo sh NVIDIA*.run

原文章链接里的 sudo sh NVIDIA.run 执行失败,键入用户密码。后面就一路Accept就可以~报错The distribution-provided pre-install script failed!不必理会,继续安装。最重要的一步,安装程序问你是否使用nv的xconfig文件,这里一点要选yes,否则在启动x-window时不会使用nv驱动。

至此,安装成功~

(8) 重启 X-window 服务

sudo service lightdm start

查看显卡是否装好,运行

glxinfo | grep rendering

假如显示"direct rendering: Yes",则已安装。

原技术文章写了另一PPA源方法,我没有测验过,就不贴了~~

 

2.安装Theano、cuda支持

     这里看了很多不错的技术博客,但是因为没有一个是完全适合我的情况的,也入了不少坑,所以我自己也记录一个吧~

(1) Ubuntu-安装-theano+caffe-超详细教程

(2) Ubuntu 14.04系统安装Nvidia CUDA7.5并搭建Python Theano深度学习开发环境

(3) Ubuntu14.04安装cuda

     蟹蟹作者们~~

2.1 安装Theano

(1) 预先安装工具

sudo apt-get install -y python-dev python-pip python-nose gcc g++ git gfortran

(2) 安装BLAS, LAPACK, ATLAS

sudo apt-get install -y libopenblas-dev liblapack-dev libatlas-base-dev

(3) 安装NumPy

后面安装的每一步测试为 0 errors,才能进行下一步~~时间都挺长的啊~

sudo pip install numpy
#进行测试。
python -c ‘import numpy; numpy.test()‘

也可以命令python进入—>import numpy—>numpy.test()。

(4) 安装scipy

sudo pip install scipy
python -c ‘import scipy; scipy.test()‘

(5) 安装Theano

sudo pip install Theano
sudo python -c ‘import theano; theano.test()‘

这个测试的时候遇到 ImportError:No module named nose-parameterized 错误,后来执行:

pip install nose_parameterized

再次测试就木有问题啦,等了好久~以上操作我都是参考博客2的,然后后面我按照他的操作装cuda时,install libgl1-mesa-glx的时候出现依赖包问题解决不了,报以下错误:

The following packages have unmet dependencies:

unity-control-center:      Depends:libcheese-gtk23(>=3.4.0) but it is not going to be installed

                                  Depends:libcheese7(>=3.0.1) but it is not going to be installed

令人抓狂的错误提示,后面搞这个搞了一两天,最后还是没有正面解决这个问题,不更新/更新系统补丁、不换/换软件源都不行,明明已经安装了依赖的包,但是却总提示包不被安装,最后通过另一篇博客里介绍的方法安装cuda了。。

2.2 安装Cuda(参考博客3)

(1) 验证电脑是否有显卡支持

lspci | grep -i nvidia

我买的是GTX 960,穷人版本…

(2) 查看Linux的版本

uname -m && cat /etc/*release

(3) 查看gcc版本

gcc --version

(4) 下载nvidia cuda的仓库安装包nvidia-cuda,找到自己电脑对应系统对应版本。

注意选择的是deb(network).

wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_7.5-18_amd64.deb

直接下载到主目录下了~~

(5) 安装cuda软件包

sudo dpkg -i cuda-repo-ubuntu1404_7.5-18_amd64.deb

(6) 更新本地仓库

sudo apt-get update

(7) 安装cuda啦

sudo apt-get install cuda

原来的技术博客里说Ubuntu系统安装好后不要更新系统补丁,原因见 博客3.

(8) 测试

echo ‘export PATH=/usr/local/cuda-7.5/bin:$PATH‘ >> ~/.bashrc

echo ‘export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH‘ >> ~/.bashrc

source ~/.bashrc

这里最好重启一下电脑,因为我按照操作后测试deviceQuery时一开始是不对的,重启电脑后就好了~

2.3 验证

(1) 查看NVCC编译器的版本

nvcc -V i

(2) 查看显卡的驱动版本

cat /proc/driver/nvidia/version

(3) 安装cuda的示例代码

cuda-install-samples-7.5.sh /home/lvxia/cuda

(4) 编译代码

cd cuda/NVIDIA_CUDA-7.5_Samples/
make

(5) 运行代码

cd bin/x86_64/linux/release/
sudo ./deviceQuery
sudo ./bandwidthTest

最后一行 result=pass表示通过~

 

3. 验证环境

(1) 新建test.py,复制如下内容保存,(主目录/home/lvxia下)

from theano import function, config, shared, sandbox
import theano.tensor as T
import numpy
import time

vlen = 10 * 30 * 768  # 10 x #cores x # threads per core
iters = 1000

rng = numpy.random.RandomState(22)
x = shared(numpy.asarray(rng.rand(vlen), config.floatX))
f = function([], T.exp(x))
print(f.maker.fgraph.toposort())
t0 = time.time()
for i in xrange(iters):
    r = f()
t1 = time.time()
print("Looping %d times took %f seconds" % (iters, t1 - t0))
print("Result is %s" % (r,))
if numpy.any([isinstance(x.op, T.Elemwise) for x in f.maker.fgraph.toposort()]):
    print(‘Used the cpu‘)
else:
    print(‘Used the gpu‘)

(2)新建 .theanorc 设置GPU代替CPU运算(主目录)

可以使用 gedit 打开,因为 vi 不太会操作。。复制如下内容到文件中保存。这个文件在home目录下看不到,可以通过命令 ls –all 看到的~

[global]
floatX=float32
device=gpu

(3) 运行test.py

python test.py

最后一行显示 used the gpu 就对啦~

然后有句提示CNMEM is disabled, cuDNN not available, 资料说CNMEM可以不用管,Theano支持cuDNN(可选),但是Tensorflow必须要cuDNN,所以就装cuDNN了。

(4) 安装cuDNN

cuDNN是专门针对deep learning框架设计的一套GPU计算加速方案,首先需要注册一下,然后才能下载cuDNN

进入Downloads目录

tar xvzf cudnn-7.5-linux-x64-v5.0-ga.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cd -a cuda/lib64/libcudnn*  /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

有个技术博客里说的问题我这里没遇到。

再运行test.py,提示 CNMEM is disabled, cuDNN 5005对啦~!

后面发现了一些不错的博客,没有测试,贴在这后面看看 使用GPU和Theano加速深度学习Theano、Lasagne、TensorFlow在Ubuntu支持GPU的安装

 

end,happy~

时间: 2024-10-25 04:15:17

艰辛五天:Ubuntu14.04+显卡驱动+cuda+Theano环境安装过程的相关文章

ubuntu14.04显卡驱动问题(amd5600k集显7650d)

安装ubuntu的时候,多次莫名其妙地黑屏,起初以为是最新得ubuntu14.04安装包不稳定,所以一直尝试了很多次. 重启-->安装-->黑屏(硬盘仍在转动,屏幕上什么都没有)-->断电-->重启-->安装-->黑屏....循环了好多次. 最后有一次竟然安装完了,刚看到ubuntu那渴望已久得芳容,就眼前一黑,继续黑屏....窘--有种摔手机得冲动! 这样折腾了好一阵子,或者说两三天,内心开始琢磨,ubuntu也不会这么弱吧??会不会是自己硬件的问题? 于是到公司给自

新装Ubuntu18.04,配置NVIDIA显卡驱动+CUDA+CUDNN

首先显卡驱动 CUDA 选择配合显卡驱动的版本,具体可以参考https://blog.csdn.net/qq_27825451/article/details/89082978 CUDA下载地址为 https://developer.nvidia.com/cuda-downloads 下载后,运行 sudo bash cuda_9.1.85_387.26_linux.run 依次输入continue\accept,最后不要勾选显卡驱动(因为显卡驱动已经安装好了) 之后据弹出的Summary配置环

Thinkpad Edge E440 Ubuntu14.04 无线网卡驱动 解决

http://ubuntuforums.org/showthread.php?t=2190347 正文: Thinkpad Edge E440 安装 Ubuntu12.04 后 无法使用无线网卡, 需要手动安装驱动. 下载驱动原码编译安装: sudo apt-get install build-essential linux-headers-generic 下载:http://netbook-remix.archive.canonical.com/updates/pool/public/o/oe

ubuntu14.04下nodejs + npm + bower的安装、调试和部署

  1. 简介 本文介绍ubuntu14.04下nodejs+npm+bower的安装.调试和部署 参考文档 https://docs.npmjs.com/getting-started https://github.com/npm/npm/issues/ 另外: Windows nodejs版本https://nodejs.org/download/release/latest/node-v5.5.0-x64.msi Windows下ide可选用WebStorm-10.0.2.exe 2.  

ubuntu14.04上搭建android开发环境

这几天心血来潮,想在ubuntu上写写android软件.所以就上网找些资料在ubuntu上搭建android环境,结果要么时不完整的,要么就是过时的.所以我把我搭建android环境的过程写下了,以便以后忘了可以参考参考,也给来看这篇博文的读者一些启迪吧. 搭建android环境有几个步骤: 1.必须得安装java吧 下载链接 java 选择最新的版本吧,将jdk解压到自己要放的文件夹,我的是/var/android/java. 然后配置环境变量: sudo gedit /etc/profil

Ubuntu14.04 Kylin下 GO语言环境搭建

sudo apt-get install golang gccgo安装 gcc -v 查看 --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin 如果有一个go,说明你的gcc支持golang,那么就执行以下命令安装gcc-go(大家试一下这命令,我不敢确定): sudo apt-get install gccgo 设置系统环境变量 sudo gedit /etc/profile export

Ubuntu14下Hadoop开发<1> 基础环境安装

准备了一台淘汰的笔记本,单核CPU,3G内存,160G硬盘:准备一个2G的U盘 在官网下载了64位的14.04版本(麒麟)的ISO,下载UNetbootin(Ubuntu专用U盘安装工具) 使用UNetbootin将ISO文件写入到U盘中,将笔记本设置为U盘启动,将U盘插入笔记本,打开笔记本电源即可,接下来就根据提示一步一步来就可以了 安装过程很快,期间如果有网络的话,可能会比较慢,会下载一些更新包 下载64位的JDK1.7,有个帖子写的很详细,我按照这个来的(根据实际情况进行修改即可),感谢作

Ubuntu14.04 + KinectV2驱动安装 以及 Ros接口(基于网上方法试错 改进版)

一 前言 本来是没打算写这篇博客的,但由于自己快临近毕业了,然后自己大论文方向是视觉SLAM与惯导融合方法研究,因为需要配置ORBSLAM2,因此需要在Ubuntu系统下用到Kinect.早在去年我就安装过KinectV1以及KinectV2驱动,但时隔一年,自己很久没怎么接触这快,发现自己回过头,换个电脑就忘了怎么配置了,因此想写下这篇博客记录下配置方法,为以后师弟师妹们节省配置时间. KinectV2 在Ros下的使用配置主要分为两块: (1).先要安装对应的驱动: (2).然后安装Ros接

ubuntu14.04下 Kinect V2+Ros接口安装

1. 首先git下载代码,放到主文件夹下面 git clone https://github.com/OpenKinect/libfreenect2.git 2. 然后安装依赖项如下,最好事先编译安装好OpenCV sudo apt-get install build-essential cmake pkg-config libturbojpeg libjpeg-turbo8-dev mesa-common-dev freeglut3-dev libxrandr-dev libxi-dev 3.