我正在运行Keras
的示例kaggle_otto_nn.py
,后端为 theano
.
在下面的打印输出中,第 5 行,有话说:
CNMeM 已启用,初始大小为:90.0% 的内存,CuDNN 不可用
我想知道,这CuDNN not available
重要吗,因为 GPU 设备是可检测到的?我是否正确在 GPU 上运行我的程序?或者它实际上没有在 GPU 上运行。
cliu@cliu-ubuntu:keras-examples$ THEANO_FLAGS=mode=FAST_RUN,device=gpu,floatX=float32,lib.cnmem=0.9 python kaggle_otto_nn.py
Using Theano backend.
/usr/local/lib/python2.7/dist-packages/Theano-0.8.0rc1-py2.7.egg/theano/tensor/signal/downsample.py:6: UserWarning: downsample module has been moved to the theano.tensor.signal.pool module.
"downsample module has been moved to the theano.tensor.signal.pool module.")
Using gpu device 0: Quadro K610M (CNMeM is enabled with initial size: 90.0% of memory, CuDNN not available)
Loading data...
9 classes
93 dims
Building model...
Training model...
Train on 52596 samples, validate on 9282 samples
Epoch 1/20
52596/52596 [==============================] - 6s - loss: 0.9420 - val_loss: 0.6269
Epoch 2/20
52596/52596 [==============================] - 6s - loss: 0.6955 - val_loss: 0.5817
...
Epoch 20/20
52596/52596 [==============================] - 6s - loss: 0.4866 - val_loss: 0.4819
Generating submission...
144368/144368 [==============================] - 1s
Wrote submission to file keras-otto.csv.
cuDNN是NVidia的一个库,它提高了GPU上神经网络的性能。因此,您的程序仍然可以在GPU上运行,但比安装cuDNN时慢得多。