Я установил TensorFlow 1.7 на Ubuntu 16.04 с Cuda 9.0 и CuDNN 7.0.5 и vanilla Python 2.7, и хотя образцы для CUDA и CuDNN работают нормально, и TensorFlow видит GPU (поэтому некоторые примеры TensorFlow работают), те, которые используют CuDNN (как и большинство примеров CNN) нет. Они терпят неудачу с этими информационными сообщениями:
2018-04-10 16:14:17.013026: I tensorflow/stream_executor/plugin_registry.cc:243] Selecting default DNN plugin, cuDNN
25428 2018-04-10 16:14:17.013100: E tensorflow/stream_executor/cuda/cuda_dnn.cc:403] could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
25429 2018-04-10 16:14:17.013119: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:369] driver version file contents: """NVRM version: NVIDIA UNIX x86_64 Kernel Module 384.130 Wed Mar 21 03:37:26 PDT 2018
25430 GCC version: gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)
25431 """
25432 2018-04-10 16:14:17.013131: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:112] version string "384.130" made value 384.130.0
25433 2018-04-10 16:14:17.013135: E tensorflow/stream_executor/cuda/cuda_dnn.cc:411] possibly insufficient driver version: 384.130.0
25434 2018-04-10 16:14:17.013139: E tensorflow/stream_executor/cuda/cuda_dnn.cc:370] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
25435 2018-04-10 16:14:17.013143: F tensorflow/core/kernels/conv_ops.cc:712] Check failed: stream->parent()->GetConvolveAlgorithms( conv_parameters.ShouldIncludeWinogradNonfusedAlgo<T>(), &algorithms)
Включение потока сообщений VLOG (см. мою ссылку ниже, чтобы узнать, как это сделать) не привело к появлению каких-либо дополнительных релевантных сообщений.
Ключевым сообщением здесь может быть «Выбор плагина DNN по умолчанию, cuDNN», потому что, глядя на код, я могу подумать, что он не может загрузить библиотечные модули cuDNN, но, насколько я знаю, это на самом деле нормально. (поэтому не предупреждение) и проблема может быть в чем-то другом.
Например, сообщение «CUDNN_STATUS_NOT_INITIALIZED», по-видимому, было вызвано в более ранней версии тем, что TF слишком агрессивно выделял память раньше времени (нашел это в списке проблем TF GitHub), поэтому CuDNN не мог инициализироваться, но я попробовал эти средства (включая сброс GPU и перезагрузка), но они не помогли.
Любые идеи относительно того, что я должен попробовать дальше?