如何让cudnn工作? (初始化失败)

时间:2018-12-20 05:37:56

标签: python keras cudnn

在Windows 10上收到此错误

  

UnknownError:无法获取卷积算法。这可能是   由于cuDNN无法初始化,因此请尝试查看是否有警告   日志消息已打印在上方。 [[{{node conv2d_1 / convolution}} =   Conv2D [T = DT_FLOAT,   _class = [“ loc:@ training_1 / Adam / gradients / conv2d_1 / convolution_grad / Conv2DBackpropFilter”],   data_format =“ NCHW”,膨胀= [1,1,1,1],padding =“ VALID”,   步幅= [1,1,1,1],use_cudnn_on_gpu = true,   _device =“ / job:localhost / replica:0 / task:0 / device:GPU:0”](training_1 / Adam / gradients / conv2d_1 / convolution_grad / Conv2DBackpropFilter-0-TransposeNHWCToNCHW-LayoutOptimizer,   conv2d_1 /内核/读取)]] [[{{node loss_1 / mul / _267}} =   _Recvclient_terminated = false,recv_device =“ / job:localhost /副本:0 / task:0 / device:CPU:0”,   send_device =“ / job:localhost /副本:0 / task:0 / device:GPU:0”,   send_device_incarnation = 1,tensor_name =“ edge_782_loss_1 / mul”,   tensor_type = DT_FLOAT,   _device =“ / job:localhost /副本:0 /任务:0 /设备:CPU:0”]]

我有RTx 2070和:

Python 3.6.5 tf 1.12.0 TF-GPU 1.12.0 带有所有修补程序的cuda 9.0。 库顿7.3.1 keras 2.2.4

我知道cudnn的nvdia页面,并且在这里阅读了其他答案。我对缺少的小细节感兴趣。将3个文件移动到CUDA文件夹中的3个目录后,是否还有其他步骤?也许有一个顺序需要安装不同的零件?

Cuda似乎工作正常,python看到了,matlab也看到了。

为我从网上获得的mnist运行此代码时发生错误,如果我卸载tensorflow-gpu并在cpu上使用tensorflow,该错误将起作用。

过去有很大帮助的一个例子是,除非您自定义并取消选中Visual Studio选项,否则您无法安装cuda。 谢谢 !

2 个答案:

答案 0 :(得分:0)

我认为RTX卡require CUDA 10

答案 1 :(得分:0)

使用CUDA 10的RTX 2070卡也有类似的问题...

解决方案是使用:

  

config.gpu_options.allow_growth = True

张量流中。

有关如何使用该参数的更多信息: How to prevent tensorflow from allocating the totality of a GPU memory?