Tensorflow CUDA GTX 1070导入错误

时间:2016-08-04 21:33:05

标签: machine-learning neural-network tensorflow nvidia

我尝试使用CUDA支持安装Tensorflow。这是我的规格:

  • NVIDIA GTX 1070
  • CUDA 7.5
  • Cudnn v5.0

我已经通过pip安装安装了Tensorflow - 所以我想象你的答案是从源代码安装,但我想确保没有快速修复。

错误是:

volcart@volcart-Precision-Tower-7910:~$ python
Python 2.7.10 (default, Oct 14 2015, 16:09:02) 
[GCC 5.2.1 20151010] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcurand.so locally
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/__init__.py", line 23, in <module>
    from tensorflow.python import *
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 98, in <module>
    from tensorflow.python.platform import test
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/test.py", line 77, in <module>
    import mock                # pylint: disable=g-import-not-at-top,unused-import
  File "/usr/local/lib/python2.7/dist-packages/mock/__init__.py", line 2, in <module>
    import mock.mock as _mock
  File "/usr/local/lib/python2.7/dist-packages/mock/mock.py", line 71, in <module>
    _v = VersionInfo('mock').semantic_version()
  File "/usr/local/lib/python2.7/dist-packages/pbr/version.py", line 460, in semantic_version
    self._semantic = self._get_version_from_pkg_resources()
  File "/usr/local/lib/python2.7/dist-packages/pbr/version.py", line 447, in _get_version_from_pkg_resources
    result_string = packaging.get_version(self.package)
  File "/usr/local/lib/python2.7/dist-packages/pbr/packaging.py", line 725, in get_version
    raise Exception("Versioning for this project requires either an sdist"
Exception: Versioning for this project requires either an sdist tarball, or access to an upstream git repository. Are you sure that git is installed?

我正在从主目录运行python控制台 - 而不是在Tensorflow目录中。

GIT和CUDA都已安装:

volcart@volcart-Precision-Tower-7910:~$ git --version
git version 2.5.0
volcart@volcart-Precision-Tower-7910:~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2015 NVIDIA Corporation
Built on Tue_Aug_11_14:27:32_CDT_2015
Cuda compilation tools, release 7.5, V7.5.17

我通过此测试验证了CUDA的功能(找到here):

/usr/local/cuda/bin/cuda-install-samples-7.5.sh ~/cuda-samples
cd ~/cuda-samples/NVIDIA*Samples
make -j $(($(nproc) + 1))

Tensorflow成功安装:

export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.10.0rc0-cp27-none-linux_x86_64.whl
sudo -H pip install --upgrade $TF_BINARY_URL

我的GPU似乎很好:

volcart@volcart-Precision-Tower-7910:~$ nvidia-smi
Thu Aug  4 17:31:47 2016       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.35                 Driver Version: 367.35                    |
|-------------------------------+----------------------+----------------------+
| 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 1070    Off  | 0000:03:00.0      On |                  N/A |
|  0%   41C    P8    12W / 185W |    499MiB /  8104MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0       900    G   /usr/bin/X                                     272MiB |
|    0      1679    G   compiz                                         154MiB |
|    0      2287    G   ...s-passed-by-fd --v8-snapshot-passed-by-fd    69MiB |
+-----------------------------------------------------------------------------+

2 个答案:

答案 0 :(得分:8)

它是bug in pbr。错误描述包含导出pbr版本的解决方案:

export PBR_VERSION=X.Y.Z

pbr版本可以作为pbr -v

答案 1 :(得分:4)

从错误日志中,看起来某种版本与mock或pbr软件包不匹配,可能来自早期的安装。在这种情况下,从源代码构建无需帮助,您需要的是从头开始安装Python依赖项,即在新环境中使用virtualenv install