Tensorflow似乎没有看到我的gpu

时间:2016-12-30 20:37:30

标签: tensorflow

我已经在cuda 7.5和8.0上尝试过tensorflow,没有cudnn(我的GPU很老,cudnn不支持它)。

当我执行device_lib.list_local_devices()时,输出中没有gpu。 Theano看到了我的gpu,并且可以正常工作,/ usr / share / cuda / samples中的示例也可以正常工作。

我通过pip install安装了tensorflow。我的gpu太老了,不支持吗? gtx 460

6 个答案:

答案 0 :(得分:11)

我在jupyter笔记本中遇到过同样的问题。这可能很容易解决。

$ pip uninstall tensorflow
$ pip install tensorflow-gpu

您可以检查它是否有效:

tf.test.gpu_device_name()

答案 1 :(得分:5)

当我查看你的GPU时,我发现它只支持CUDA Compute Capability 2.1。 (可以通过https://developer.nvidia.com/cuda-gpus进行检查)不幸的是,TensorFlow需要具有最低CUDA Compute Capability 3.0的GPU。 https://www.tensorflow.org/get_started/os_setup#optional_install_cuda_gpus_on_linux

您可能会看到来自TensorFlow的一些日志检查您的GPU,但最终库将避免使用不受支持的GPU。

答案 2 :(得分:4)

如果您使用的是conda,则可能已安装了tensorflow的cpu版本。检查环境的软件包列表(conda list),以查看是否是这种情况。如果是这样,请使用conda remove tensorflow删除软件包,然后安装keras-gpu(conda install -c anaconda keras-gpu。这将安装在GPU中运行机器学习代码所需的一切。

P.S。您应该先检查是否已使用nvidia-smi正确安装了驱动程序。默认情况下,它不在您的PATH中,因此您可能还需要将文件夹添加到您的路径中。该.exe文件可以在C:\Program Files\NVIDIA Corporation\NVSMI

中找到

答案 3 :(得分:3)

以下对我有用,惠普笔记本电脑。我有Cuda Compute功能 (版本)3.0兼容Nvidia卡。 Windows 7。

pip3.6.exe uninstall tensorflow-gpu
pip3.6.exe uninstall tensorflow-gpu
pip3.6.exe install tensorflow-gpu

答案 4 :(得分:3)

摘要:

  1. 检查tensorflow是否看到您的GPU(可选)
  2. 检查您的视频卡是否可以使用tensorflow(可选)
  3. find versions of CUDA Toolkit and cuDNN SDK, compatible with your tf version
  4. install CUDA Toolkit
  5. install cuDNN SDK
  6. pip卸载tensorflow; pip install tensorflow-gpu
  7. 检查tensorflow是否看到您的GPU

*来源-https://www.tensorflow.org/install/gpu

详细说明:

  1. 检查tensorflow是否看到您的GPU(可选)

    from tensorflow.python.client import device_lib
    def get_available_devices():
        local_device_protos = device_lib.list_local_devices()
        return [x.name for x in local_device_protos]
    print(get_available_devices()) 
    # my output was => ['/device:CPU:0']
    # good output must be => ['/device:CPU:0', '/device:GPU:0']
    
  2. 检查您的卡是否可以使用tensorflow(可选)

  3. 找到所需的CUDA工具包和cuDNN SDK版本

    a)找到您的tf版本

    import sys
    print (sys.version)
    # 3.6.4 |Anaconda custom (64-bit)| (default, Jan 16 2018, 10:22:32) [MSC v.1900 64 bit (AMD64)]
    import tensorflow as tf
    print(tf.__version__)
    # my output was => 1.13.1
    

    b)为您的tf版本找到正确的CUDA Toolkit和cuDNN SDK版本

    https://www.tensorflow.org/install/source#linux
    * it is written for linux, but worked in my case
    see, that tensorflow_gpu-1.13.1 needs: CUDA Toolkit v10.0, cuDNN SDK v7.4
    
  4. 安装CUDA工具包

    a)安装CUDA Toolkit 10.0

    https://developer.nvidia.com/cuda-toolkit-archive
    select: CUDA Toolkit 10.0 and download base installer (2 GB)
    installation settings: select only CUDA
        (my installation path was: D:\Programs\x64\Nvidia\Cuda_v_10_0\Development)
    

    b)添加环境变量:

    system variables / path must have:
        D:\Programs\x64\Nvidia\Cuda_v_10_0\Development\bin
        D:\Programs\x64\Nvidia\Cuda_v_10_0\Development\libnvvp
        D:\Programs\x64\Nvidia\Cuda_v_10_0\Development\extras\CUPTI\libx64
        D:\Programs\x64\Nvidia\Cuda_v_10_0\Development\include
    
  5. 安装cuDNN SDK

    a)下载cuDNN SDK v7.4

    https://developer.nvidia.com/rdp/cudnn-archive (needs registration, but it is simple)
    select "Download cuDNN v7.4.2 (Dec 14, 2018), for CUDA 10.0"
    

    b)将“ bin”文件夹的路径添加到“环境变量/系统变量/路径”中:

    D:\Programs\x64\Nvidia\cudnn_for_cuda_10_0\bin
    
  6. pip卸载tensorflow pip install tensorflow-gpu

  7. 检查tensorflow是否看到您的GPU

    - restart your PC
    - print(get_available_devices()) 
    - # now this code should return => ['/device:CPU:0', '/device:GPU:0']
    

答案 5 :(得分:0)

就我而言,我有一个可用的 tensorflow-gpu 版本 1.14,但突然停止工作。我使用以下方法解决了问题:

<a class="base"><img src='http://lorempixel.com/200/200/'></a>