最近在win10下面配置了一下tensorflow-gpu。。。遇到了几个坑。。
最大的问题就是版本的问题,我开始用的是最新的cuda9.1。在我装好了cuda9.1以后,我才发现,不知道谁已经在工作站上装好了cuda8.0。我也不知道二者会不会矛盾,就按照教程,硬着头皮来。
win10下配置GPU加速的Keras框架
配置cuda过程中,需要下载一个cuDNN(CUDA Deep Neural Network)。cuDNN是NVIDIA专门针对深度神经网络(Deep Neural Networks)中的基础操作而设计基于GPU的加速库。
上面那个教程介绍的不是很清楚,可以参考这个教程
Win10 TensorFlow(gpu)安装详解
安装过程中,主要是遇到了两个错误。。
第一个是 找不到一个叫cudart64_80.dll的文件 这个根据下载的cuda版本不同,可能会有问题,cuda8.0以上的版本,可以在下面的路径找到这个文件。。后缀可能不同,可能是cudart64_90.dll或者是cudart64_91.dll。。因为我装了两个版本的cuda,所以遇到了这个问题。。。。提示错误缺少什么文件,就在下面这个路径找一下这个文件,重命名为缺少的那个文件即可。。
百度一下提示的错误,会有这个问题的解决方案的。。。
第二个是 ImportError: DLL load failed: 找不到指定的模块。Failed to load the native TensorFlow runtime.
这个是最坑的了,我弄了好几天一直不知道问题是出在哪里。。。因为找不到问题所在,我重新配置了环境变量,重装了tensorflow-gpu,卸载了cuda9.0.。。。因为网上的很多教程都是cuda8.0版本配置的tensorflow-gpu,所以就各种删cuda9.0的东西。。。然并卵,依旧报错。。。。
网上的教程都是说要让装一个VS2015的什么环境,就是这个教程
windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的解决方式
但是我的电脑上是装过VS2015的,再装这个文件提示已经安装过了,所以我的问题应该不是这个问题
我又各种百度,报错这个问题,还有一个原因就是 cuda对应tensorflow的版本出了问题。。。
直接pip install tensorflow-gpu,默认安装最新的tensorflow1.8.0,但是cuda8.0似乎跟最近的tensorflow1.8.0不匹配。。
我就卸载了tensorflow1.8.0,重新装了一个tensorflow1.4.0。
pip install tensorflow-gpu==1.4.0
然后问题就解决了。。。。
所以弄了半天还是cuda跟tensorflow的版本需要对应起来。。。。
我还不知道cuda9对应什么版本的tensorflow,最新的tensorflow1.8.0在windows下面是支持,能否对应上最新的cuda9。。。。
因为就是想着配着玩玩,没啥可做的,就没深入研究版本的问题。。。。能用就成。。。。