Ubuntu server上安装NVIDIA CUDA显卡,利用GPU运行Tensorflow,及缺少libcusparse.so.8.0问题

前端之家收集整理的这篇文章主要介绍了Ubuntu server上安装NVIDIA CUDA显卡,利用GPU运行Tensorflow,及缺少libcusparse.so.8.0问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

背景@H_502_5@

想用GPU跑Tensorflow-gpu,买了块Tesla显卡,默认支持CUDA8.0以后版本。所以刚开始准备安装CUDA8.0,上官网搜索一圈,按照提示,通过apt-get安装,可是装好之后,运行Tensorflow,发现缺少libcusparse.so.8.0 库。如下:@H_502_5@

不得不寻找这个库,通过提示知道这个是CUDNN提供的一个库,于是希望下载CUDNN,(这个资源现在网上很难找到了),费尽千辛万苦,下载了CUDNN V6.0以及CUDNN V7.0,安装,然鹅,可是居然还是没有没找到libcusparse.so.8.0。@H_502_5@

然后,就想到安装CUDA9.0版本,是不是会兼容。于是卸载 apt-get auto remove ***,再去安装9.0版本。这次学乖了,没有通过apt-get安装(说实话,不太习惯一个软件的东西被分散在各个地方,我喜欢一个软件的东西在一个文件夹),下载全部的资源包,本地安装。@H_502_5@

下载了“cuda_9.0.176_384.81_linux.run.81_linux-run”,然后直接安装,顺利完成(如果安装这个出错,说明之前apt-get的卸载不干净,安装log提示卸载即可)。@H_502_5@

然鹅,@H_502_5@

居然还是没有libcusparse.so.8.0,但是有libcusparse.so.9.0,不过,Tensorflow不支持libcusparse.so.9.0,切CUDA的这个不向前兼容,虽然没成功,但是看到了胜利的曙光,卸载cuda_9.0,重新下载cuda_8.0,问题终于解决@H_502_5@


@H_502_5@

避免其他同学走坑,下面分享下我这里的正确步骤,一起学习:@H_502_5@

1,首先要确认NVIDIA显卡正确的被安装上去了@H_502_5@

2,下载CUDA_8.0驱动包cuda_8.0.44_linux.run,因为这个链接,非常难找到,所以分享出来@H_502_5@

链接:http://pan.baidu.com/s/1o7EYEL0 密码:zPHP
@H_502_5@

3,直接 sudo ./cuda_8.0.44_linux.run 安装,安装提示选择yes和默认选项即可。安装成功,会看到如下信息@H_502_5@


@H_502_5@

4,设置环境变量@H_502_5@

export CUDA_HOME=/usr/local/cuda-8.0
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:${LD_LIBRARY_PATH}
export PATH=/usr/local/cuda-8.0/bin:${PATH}


@H_502_5@ 执行

#source /etc/profile@H_502_5@

5,配置lib地址@H_502_5@

sudo vim /etc/ld.so.conf.d/cuda.conf@H_502_5@

在打开的文件添加如下语句:@H_502_5@

/usr/local/cuda/lib64@H_502_5@

保存退出执行命令行:@H_502_5@

sudo ldconfig@H_502_5@

使链接立即生效。@H_502_5@

6,验证CUDA安装成功@H_502_5@

@H_502_5@

cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery@H_502_5@

sudo make@H_502_5@

sudo ./deviceQuery@H_502_5@

返回GPU的信息则表示配置成功@H_502_5@

7,运行Tensorflow-gpu,终于有libcusparse.so.8.0了,但是,缺少libcudnn.so.6,根据之前的安装过程,知道,这个是cudnn_8.0的库,所以直接下载cudnn-8.0-linux-x64-v6.0.0.tgz,这里也提供一个连接下载(感谢百度网盘)。

链接:http://pan.baidu.com/s/1pKEW7tp 密码:c5z5
@H_502_5@

8,再运行Tensorflow-gpu,终于可以正常跑了。@H_502_5@

查看GPU状态(-l表示循环)@H_502_5@

#nvidia-smi -l@H_502_5@


@H_502_5@

9,OK,大功告成,希望对大家有所帮助。@H_502_5@

猜你在找的Ubuntu相关文章