cudnnPoolingBackward bug

Running ‘TestBackward’ with the CAFFE CuDNNPoolingLayer instead of the CAFFE PoolingLayer layer fails at line 110 in ‘test_maxpool_dropout_layers.cpp’

The failure occurs on the statement “EXPECT_EQ(sum, this->blob_top_->count());” for the sum == 288 instead of the expected 36.

When run with the CAFFE PoolingLayer class the sum == 36 which is expected. The only difference between these two tests is that the CAFFE CuDNNPoolingLayer uses CudNN ‘cudnnPoolingBackward’ function whereas the CAFFE PoolingLayer uses its own GPU kernels for the backward action.

See https://github.com/BVLC/caffe/blob/master/src/caffe/test/test_maxpool_dropout_layers.cpp for the test setup.

Please note that these forums are not intended as an official bug reporting channel. I would suggest filing a bug report using the form linked from the CUDA registered developer website. If you are not a registered developer yet, the sign-up process is straightforward and approval usually occurs within one business day.

Done