联想z470安装cuda toolkit 7.5过程

点点圈 提交于 2019-11-26 22:09:18

        我安装的系统是ubuntu kylin 14.04,ubuntu 14.04也差不多一样.我的目的是让GPU能跑一些机器学习以及深度学习的框架,如theano

    1,卸载掉与nvidia相关的驱动以及旧版的cuda相关程序

sudo apt-get remove --purge nvidia* cuda*

    2,到cuda官网下载新的cuda toolkit版本,我下的deb版的,也可以下run版的,我装的是时候是7.5版(2015.12.14.),你可以试着进入字符界面(ctrl+alt+F1),安装,也可以直接在终端安装主,我是选择前者,

sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb

安装好仓库之后,就可以更新你的本地仓库。

sudo apt-get update

最后开始安装cuda以及显卡驱动

sudo apt-get install cuda

安装完后加入环境变量,这个有好几种方法,我选择在本用户目录下安装,vim ~/.bashrc,在后面加入

$ export PATH=/usr/local/cuda-7.5/bin:$PATH  
$ export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH

设置完毕之后,你还可以选择是否安装cuda附带的示例代码(<dir>表示你要安装的位置,你可以将<dir>替换成~):

cuda-install-samples-7.5.sh <dir>

三,安装bumblebee

        如果你的电脑是两显卡,不知你会怎样管理呢,我用的是bumblebee,如果你也是一样的电脑,可以一试,ubuntu安装比较简单

sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
sudo apt-get install bumblebee bumblebee-nvidia

可看看如下文章:使用 Bumblebee 控制 NVIDIA 双显卡(Ubuntu)

这时你最好重启或注销一下电脑

四,测试验证

        待你重新开机后,就以后一些验证工作

        1,查看nvcc编译器的版本,nvcc是GPU的编译器

nvcc -V i

        2,查看显卡的驱动版本,这个得先让你的独立显卡的gpu跑起来才可以看到

optirun python
#另一个终端
cat /proc/driver/nvidia/version

你如果用  lspci |grep -i VGA看独立显卡的状态,前面可能不一样,没开独立显卡是ff,开了后是a1

        3,测试集显与独显是否正常,先测试集显,再测试独显

glxgears

你会看到如下结果:

optirun glxgears

很明显,独立显卡的速度要比集显要快的多

        4,编译cuda程序,在sample目录下,make编译程序,网上人说编译并运行通过就没问题了,我一开始没了没有通过,虽然可执行文件是可以执行的,后面我加了个环境变量

export LD_LIBRARY_PATH=/usr/lib/nvidia-352:$LD_LIBRARY_PATH

运行编译出来的./deviceQuery,出下面结果

        你也可以跑一下,simple下面的其他程序,如果大多没问题的话,就证明还是基本安装成功的.

如果你是做cuda编程的,你可以如这个网址中入门开始学习CUDA在线学习

四,theano测试

        因为我的主要目的是跑python代码,我之前已装了theano,所以只测试theano能在GPU上跑吗.

有两种方法运行GPU,一是在那个~/.theanorc配置文件,加入

[global]
floatX=float32
device=gpu
#二,是运行程序时,前面加入说明
THEANO_FLAGS=floatX=float32,device=gpu python /usr/local/lib/python2.7/dist-packages/theano/misc/check_blas.py

会出测试结果.

也可以把下面的代码存为test.py,用cpu与gpu跑一下,出来的显示结果与时间都不一样.

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')

注意,我也要试着在台式机上装过,显卡是GeForce GTX 750Ti,我是用的网络安装的,安装后配置一开PATH,CUDA_ROOT,就可以重启,这样就可以了。如果你想装cudnn的话,建议还是用在显卡比较好的电脑上,我的z470电脑装了用不了,这个750Ti的显卡可以用,不过也不能用当下最新的5.0版本,只能用4.0的,安装的步骤如下:

tar -xzvf cudnn-7.0-linux-x64-v4-prod.tgz
chmod -R 777 cuda #其实不用这样,我只是不想引起其他麻烦
sudo cp lib64/* /usr/local/cuda/lib64/
sudo cp include/* /usr/local/cuda/include/
sudo ldconfig #这样就可以了

五,可借鉴文档

折腾记要——Ubuntu 14.04系统安装Nvidia CUDA7.5并搭建Python Theano深度学习开发环境

Ubuntu12.04配置NVIDIA cuda5.5经验帖

Caffe+Ubuntu 15.04+CUDA 7.0新手安装配置指南

ubuntu14.04安装cuda

Ubuntu安装Theano+CUDA

Installing Theano

Using the GPU

六,可能的问题

FATAL: Module nvidia_uvm not found.

Ubuntu 12.04. Error: cudaGetDeviceCount returned 30

nbody errors in verification step of CUDA 7.5 installation

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!