To create RNN
cells, there are classes like GRUCell
and LSTMCell
which can be used later to create RNN
layers.
And also there are 2 other classes as CudnnGRU
and CudnnLSTM
which can be directly used to create RNN
layers.
In the documentation they say that the latter classes have cuDNN
implementation. Why should I use or not use this cuDNN
implemented classes over classical RNN
implementations when I'm creating a RNN
model..?
In short: cudnnGRU and cudnnLSTM can/ must be used on GPU, normal rnn implementations not. So if you have tensorflow-gpu, cudnn implementation of RNN cells would run faster.