sonots/cumo

cuDNN binding

Closed this issue · 1 comments

Provide cuDNN binding as Cupy does.

It is needed for red-chainer to perform convolutional network fast if it wants to implement as chainer does https://github.com/chainer/chainer/blob/6fed8c384da5e52ac0b32dd39a6596319b85a915/chainer/functions/connection/convolution_nd.py#L73-L95

  • convolution_nd
  • max pooling
  • average pooling
  • batch norm
  • x.conv(w, b, stride, pad, cover_all)
  • x.conv_transpose(w, b, stride, pad, out_size)
  • x.conv_grad_w(w_dtype, w_shape, gy, stride, pad, cover_all)
  • x.batcn_norm(gamma, beta, running_mean, running_var, eps, decay, axis)
  • x.batcn_norm_backward
  • x.fixed_batch_norm(gamma, beta, mean, var, eps, decay, axis) or cudnnBatchNormalizationInferenceForward
  • x.pooling_forward (x_avg_pool and x.max_pool)
  • x.pooling_backward (x.avg_pool_backward and x.max_pool_backward)