我正试着在我的电脑上训练SegNet。我有GTX860M显卡。nvidia-driver-440,CUDA10.1和cuDNN7已经安装,但错误信息显示无法创建cudnn句柄。cuDNN在我的其他型号上工作没有任何问题。我试着减少批量大小,但没有帮助。我如何解决这个问题?
错误
Epoch 1/10
2020-06-18 18:59:04.172516: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7
2020-06-18 18:59:04.664514: E tensorflow/stream_executor/cuda/cuda_dnn.cc:329] Could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
2020-06-18 18:59:04.664608: E tensorflow/stream_executor/cuda/cuda_dnn.cc:337] Possibly insufficient driver version: 440.82.0
2020-06-18 18:59:04.666215: E tensorflow/stream_executor/cuda/cuda_dnn.cc:329] Could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
2020-06-18 18:59:04.666252: E tensorflow/stream_executor/cuda/cuda_dnn.cc:337] Possibly insufficient driver version: 440.82.0
nvcc --版本
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
Cuda compilation tools, release 10.1, V10.1.243
cat /usr/local/cuda/include/cudn.h| grep CUDNN_MAJOR -A 2
#define CUDNN_MAJOR 7
#define CUDNN_MINOR 6
#define CUDNN_PATCHLEVEL 5
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
#include "driver_types.h"
发布于 2020-06-19 03:34:09
我解决了这个问题。这是内存分配问题。
from keras.backend.tensorflow_backend import set_session
physical_devices = tf.config.experimental.list_physical_devices('GPU')
assert len(physical_devices) > 0, "Not enough GPU hardware devices available"
config = tf.config.experimental.set_memory_growth(physical_devices[0], True)
sess = tf.Session(config=config)
set_session(sess)
https://kobkrit.com/using-allow-growth-memory-option-in-tensorflow-and-keras-dc8c8081bc96
https://stackoverflow.com/questions/62454464
复制相似问题