Python配置TensorFlow-GPU环境(笔记II)-2019.03.04

       由于之前电脑问题导致系统重装,需要重新安装了GPU版的TensorFlow来跑人脸识别的代码,发现安装过程中与上一次笔记的不同了(有了新的版本匹配),这次是新的配置说明。

系统:Windows10

GPU:NVIDIA GeForce GTX 1050 Ti

Python:Anaconda3-5.0.0-Windows-x86_64,在win上安装py3.6版本。

TensorFlow:tensorflow_gpu-1.13.1

CUDA:CUDA10.0

cudnn:https://developer.nvidia.com/rdp/cudnn-download(需要注册)

Python配置TensorFlow-GPU环境(笔记II)-2019.03.04_第1张图片

这次安装主要遇到一个问题,用简单的代码进行测试:

Python配置TensorFlow-GPU环境(笔记II)-2019.03.04_第2张图片

       安装完成之后,导入TensorFlow库没有问题,但是调用GPU设备时就报错提示找不到设备。

运行错误:InvalidArgumentError (see above for traceback): Cannot assign a device for operation add: Operation was explicitly assigned to /device:GPU:0 but available devices are [ /job:localhost/replica:0/task:0/device:CPU:0 ]. Make sure the device specification refers to a valid device.
     [[node add (defined at :6)  = Add[T=DT_FLOAT, _device="/device:GPU:0"](a, b)]]

百度翻译:InvalidArgumentError(有关回溯,请参阅上面的内容):无法为操作分配设备add:操作已显式分配给/device:gpu:0,但可用设备是[/job:localhost/replica:0/task:0/device:cpu:0]。确保设备规格引用了有效的设备。

[节点添加(定义于:6)=add[t=dt_float,_device=“/device:gpu:0”](a,b)]

       后来使用了几种方式,问题终于解决了。

  1. 把代码中的“with tf.device('/gpu:0'):”改为了“with tf.device(None):”。
  2. tf.Session中config = tf.ConfigProto(allow_soft_placement=True) ,allow_soft_placement为True时当GPU调用不了时会默认选择CPU调用,而为False时为选择调用GPU。
  3.  检查安装Cuda 和 cuDNN安装是否有问题,若没问题,卸载tensorflow(CPU与GPU版),再次重装了tensorflow-gpu。
  4. 检查GPU是否有开启。 

Python配置TensorFlow-GPU环境(笔记II)-2019.03.04_第3张图片


 

文章未经博主同意,禁止转载!


 

你可能感兴趣的:(Python,tensorflow-gpu,python)