三种方法详解深度学习GPU环境搭配(基于Windows,keras)

前言

此处省略 2 n 2^n 个脏话,快被他恶心死了,弄了两个晚上还多,下了CUDN和cudnn好多个版本,现在终于弄好了。为表示欣喜之情,必须得写篇博客庆祝下。

嘿嘿,主要是想让各位不再在GPU配置上走弯路了,免得到处找方法。这个坑我已经淌过了,别再进了,真又浪费时间又浪费心情。

自己电脑配置太低了,跑神经网络真不行,现在在家(可恶的疫情)学校服务器也还不能用,哎太难了。
GPU的作用啥的就不多说了,先弄上我的配置。
在这里插入图片描述
在这里插入图片描述
(咱也不知道专用GPU和共享GPU内存有啥区别,懂得还望赐教 嘿嘿)

方法一

最普通的安装
一定先看看自己的显卡,自己的TensorFlow版本,去官网上找对应的CUDA和cudnn版本(这两个版本也要对应)。
显卡怎么看不用说了,打开cmd 输入 pip list看自己TensorFlow-gpu版本,要是还没装TensorFlow-gpu的话直接看方法二。(注意还有只有tensorflow的,我们要用的是tensorflow-gpu的)
在这里插入图片描述

  • 这是TensorFlow与CUDA cuDNN对应,这是官网

https://tensorflow.google.cn/install/source_windows

在这里插入图片描述

  • 这是显卡驱动对应CUDA网址:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#title-new-cuda-tools
    在这里插入图片描述

  • CUDA下载官网:https://developer.nvidia.com/cuda-toolkit-archive

  • cuDNN载地址(需要注册账号和回答问卷 很简单):https://developer.nvidia.com/cudnn

下载安装CUDA时可能会安装失败,选自定义安装,然后vs那个别选,安装就好了。(这些功能咱也不知道啥用,装上也占不了多少内存)
在这里插入图片描述
装好后解压cudnn,把里面的三个文件

在这里插入图片描述
复制到这里 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2

在这里插入图片描述
然后查看自己的环境变量路径里面是否有cuda
此电脑—>属性——>高级系统设置——>系统变量——>加这个(一般他自动就加上了,没有在手动加吧)—>
在这里插入图片描述
——>path里加上:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\libnvvp
在这里插入图片描述
用这个代码看是否用了GPU

>>import tensorflow as tf
>>tf.test.gpu_device_name()

'/device:GPU:0'#输出这个就对了  输出 " "是不对的

我其实早就有这个了,但在跑cnn时,出现了这个:
Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
很无语,然后又是对tensorflow降级啊,又是装其他版本的cuda啊,最后那个问题解决了,又出现了这个,我也是醉了。哎……
InternalError: cudaGetDevice() failed. Status: cudaGetErrorString symbol not found
然后第二种方法

方法二

这个适用于装了Anaconda的,没装的话直接看方法三吧。推荐装上这个,因为他的jupyter笔记本太好用了,也方便。
这是清华的开源镜像,直接下
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D
配置path路径
在这里插入图片描述
安装之后打开Anaconda Navigator

先点environment 然后搜索框里输入tensorflow,看not installed
因为有些我已经装了,所以这里没显示,tensorflow-gpu和keras-gpu是必须装的,其他的matadata啥的也装上吧,反正有比没有好。这个它会自己给你配置cuda和cudnn环境,而且不用太担心版本问题,它会自己找对应版本(tensorflow和cuda),比如自动给你降级或者升级。
在这里插入图片描述
这是我的仅供参考,因为每个人的显卡版本啥的不相同,自己看情况下吧。
在这里插入图片描述
然后打开jupyter输入方法一那个代码验证下。
我的那个输出是对的,但跑那个程序还是出问题了。哎,无语了,就不想搞了,没想到哈哈哈,看方法三。哈哈哈哈

方法三(重头戏)

装了一天一夜没装上,就不想弄了,然后想去看看c4 AI那个比赛(据说不要钱,还是入门级的就想试试水嘿嘿)。因为要用飞桨平台,他们的框架是paddle的,而我用的是keras,所以必须安装paddle环境,在装paddle-gpu时,按照他们步骤,有个这个

conda install paddlepaddle-gpu cudatoolkit=10.0

嘿嘿,我就想到了keras也这样配置环境不也很ok吗?
于是改了下,为啥把版本去了呢?因为我们也不知道自己对应的cudatoolkit版本是多少,让他自己配置好了。

conda install tensorflow-gpu cudatoolkit

在这里插入图片描述
这里可以看到,我的keras和tensorflow版本,以及需要配置的环境,干就完了,虽然下载可能有点慢(也不是很慢),但用清华源下咱也不会,就这样吧,一会就完了。试一下错误完全没有了。哈哈哈哈

虽然我用了第三种方法才好的,他们好多都是用的一二种方法弄好的,第三种方法我没找到有用的嘿嘿。但我这也是有一二种方法的基础才ok的。因此如果直接用第三种方法咱也不知道行不行,因为你看上图,我下的cuda大小两个多G,然而这个cudatoolkit才300M。我猜是GPU用于深度学习时,只用CUDA的那个cudatoolkit所以直接下就行,而且我在方法一中也说配置path是也是在toolkit目录下,只是猜测,你们可以试试,如果可以就评论下,因为方法三是最简单的
另上文说到的那个比赛是这个。
http://aicontest.baidu.com/materials.html
帮他们打个广告吧,毕竟是因为那个我才想到的方法三,而且这比赛看起来真的可以,不用交钱,有两个组,完全小白也能参加,可以看看。

猜你喜欢

转载自blog.csdn.net/weixin_45755332/article/details/105798140