使用Ubuntu 16.04, PyCharm
我使用以下链接使用python 3.5安装tensorflow gpu:http://www.python36.com/install-tensorflow141-gpu/
Tensorflow安装良好。它使用测试代码运行。然后我安装了Keras,从这里运行代码:https://github.com/fchollet/deep-learning-with-python-notebooks/blob/master/5.1-introduction-to-convnets.ipynb
我得到了以下错误:
2018-02-23 11:19:13.457201:I tensorflow/stream_executor/cuda/cuda_gpu executor。cc:892]从SysFS成功读取的NUMA节点的值为负值(-1),但必须至少有一个NUMA节点,因此返回NUMA节点零
2018-02-23 11:19:13.457535:I tensorflow/core/common_runtime/gpu/gpu_设备。cc:1030]找到了具有以下属性的设备0:名称:GeForce GTX 1060 6GB主要:6次要:1 memoryClockRate(GHz):1.7845 pciBusID:0000:01:00.0 totalMemory:5.93GiB可用内存:5.65GiB
2018-02-23 11:19:13.457551:我TensorFlow/核心/common_runtime/gpu/gpu_device.cc:1120]创建TensorFlow设备(/设备: GPU: 0)-
2018-02-23 11:21:22.130004: E tenstorflow/stream_executor/cuda/cuda_dnn.cc:378]加载运行时CuDNN库: 7005(兼容版本7000),但源代码是用6021(兼容版本6000)编译的。如果使用二进制安装,请升级CuDNN库以匹配。如果从源构建,请确保运行时加载的库与编译配置期间指定的兼容版本相匹配。
2018-02-23 11:21:22.130663:F tensorflow/core/kernels/conv_ops。cc:667]检查失败:流-
Tensorflow cpu与Keras工作正常。我的问题是:
1)按照哪些说明正确安装我的安装用Keras的tensorflow gpu?
2)我能做些什么来消除这些错误?
3) 在所有平台上正确安装tensorflow gpu和Keras时,是否可以遵循任何通用说明?
编辑这里是我创建的一个文件,它展示了如何在Pycharm社区版中使用tensorflow gpu运行Keras。https://github.com/mdkhan48/AgBot2018_VidStream/blob/master/how运行tensorflow gpu。odt
您正尝试安装4个组件:
它们并不总是同步的,到目前为止,tensorflow支持cuda 9.1,如果您自己编译它(如您发布的指南),则预构建的二进制文件是使用cuda 9.0和cudnn 7编译的。我更喜欢使用它们,所以这是我正在使用的cuda版本。
以下是您如何安装它:
首先,删除现有cuda安装:
sudo apt-get remove --purge nvidia-*
安装ubuntu头文件和cuda 9.0:
sudo apt-get install linux-headers-$(uname -r)
CUDA_REPO_PKG=cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
wget -O /tmp/${CUDA_REPO_PKG} http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/${CUDA_REPO_PKG}
sudo dpkg -i /tmp/${CUDA_REPO_PKG}
sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
rm -f /tmp/${CUDA_REPO_PKG}
sudo apt-get update
sudo apt-get install -y cuda-9-0
下载cuDNN v7.0.5库Linux从nvidia网站,导航到下载的文件夹并安装它:
tar -xzvf cudnn-9.0-linux-x64-v7.tgz
sudo cp cuda/include/* /usr/local/cuda/include/
sudo cp cuda/lib64/* /usr/local/cuda/lib64/
重新启动您的机器,并检查nvidia驱动程序使用:
nvidia-smi
输出应该是这样的:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.30 Driver Version: 390.30 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 105... Off | 00000000:04:00.0 On | N/A |
| 0% 33C P8 N/A / 120W | 310MiB / 4038MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1307 G /usr/lib/xorg/Xorg 141MiB |
| 0 2684 G compiz 120MiB |
| 0 4078 G ...-token= 45MiB |
+-----------------------------------------------------------------------------+
创建一个虚拟环境并在其中安装tenstorflow和keras:
sudo apt-get install virtualenv
virtualenv tfenv
source tfenv/bin/activate
pip install tensorflow-gpu
pip install keras
该错误是由于cudnn的错误版本造成的。我认为您错过了教程中的一些步骤。此错误加载了运行时CuDNN库:7005(兼容版本7000),但源代码是使用6021(兼容版本6000)编译的。如果使用二进制安装,请升级CuDNN库以匹配。如果从源代码生成,请确保运行时加载的库与编译配置期间指定的兼容版本匹配代码>解释了问题所在。
我的建议是安装cudnn7.0。5如果已安装cuda 9.1,请从源代码处重新编译并仔细阅读说明;如果已安装cuda 9.0,请使用pip3安装tensorflow gpu
。
我还可以证实keras与CUDA9.1一起工作,并成功地测试了您在上面尝试和链接的代码。