Implemented grad for cudnn softmax.

I have made that change.

On Wed Nov 12 2014 at 8:42:56 PM Frédéric Bastien <notifications@github.com>
wrote:

> In theano/sandbox/cuda/tests/test_nnet.py:
>
> > @@ -347,5 +377,53 @@ def check_types_opt(graph, graph_gpu):
> >              check_types
> >          )
> >
> > -        mode = mode_with_gpu.including("cudnn")
> > -        self._test_softmax(x, x, f_z, f_z, self._cmp, mode, check_types_opt)
> > +        mode_w_cudnn = mode_with_gpu.including("cudnn")
> > +        self._test_softmax(
> > +            x, x, f_z, f_z, self._cmp,
> > +            mode_w_cudnn, check_types_opt
> > +        )
> > +
> > +        # Verify that the SoftmaxGrad -> GpuDnnSoftmaxGrad optimization is
> > +        # applied when cudnn is required
> > +        y = T.vector('y')
>
> should be fvector, otherwise the test fail with the default value of
> floatX=float64. With that change all tests pass here.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/Theano/Theano/pull/2250/files#r20267757>.
>