繁体   English   中英

具有Keras错误的Tensorflow-gpu

[英]Tensorflow-gpu with Keras Error

使用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:我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_device.cc:1030]找到了具有属性的设备0:名称:GeForce GTX 1060 6GB Major:6 minor:1 memoryClockRate(GHz):1.7845 pciBusID:0000:01:00.0 totalMemory:5.93GiB freeMemory:5.65GiB

2018-02-23 11:19:13.457551:I tensorflow / core / common_runtime / gpu / gpu_device.cc:1120]创建TensorFlow设备(/ device:GPU:0)->(设备:0,名称:GeForce GTX 1060 6GB ,PCI总线ID:0000:01:00.0,计算能力:6.1)

2018年2月23日11:21:22.130004:E tensorflow / 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]检查失败:stream-> parent()-> GetConvolveAlgorithms(conv_parameters.ShouldIncludeWinogradNonfusedAlgo(),&algorithms)

Tensorflow-cpu可与Keras配合使用。 我的问题是:

1)为我的设置正确安装带有Keras的tensorflow-gpu时应遵循哪些说明?

2)我该如何消除这些错误?

3)是否可以遵循所有通用说明在所有平台上正确安装带有Keras的tensorflow-gpu?

编辑这里是我创建的文件,该文件显示了如何在Pycharm-community版中使用tensorflow-gpu运行Keras。 https://github.com/mdkhan48/AgBot2018_VidStream/blob/master/how%20to%20run%20tensorflow-gpu.odt

您尝试安装4个组件:

  1. 库达
  2. 库登
  3. 张量流
  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

nvidia网站下载适用于Linux的cuDNN v7.0.5库,导航至下载的文件夹并进行安装:

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 |
+-----------------------------------------------------------------------------+

创建一个虚拟环境并在其中安装tensorflow和keras:

sudo apt-get install virtualenv
virtualenv tfenv
source tfenv/bin/activate
pip install tensorflow-gpu
pip install keras

该错误是由于cudnn版本错误造成的。 我认为您已经错过了本教程中的某些步骤。 此错误Loaded runtime CuDNN library: 7005 (compatibility version 7000) but source was compiled with 6021 (compatibility version 6000). If using a binary install, upgrade your CuDNN library to match. If building from sources, make sure the library loaded at runtime matches a compatible version specified during compile configuration. Loaded runtime CuDNN library: 7005 (compatibility version 7000) but source was compiled with 6021 (compatibility version 6000). If using a binary install, upgrade your CuDNN library to match. If building from sources, make sure the library loaded at runtime matches a compatible version specified during compile configuration. 解释自己是什么问题。

我的建议是安装cudnn 7.0.5,如果您已安装cuda 9.1,则从源头重新构建并仔细阅读说明,或者如果安装了cuda 9.0,则使用pip3 install tensorflow-gpu

我也可以证明keras可与cuda 9.1一起使用,并成功测试了您在上面尝试并链接的代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM