public static extern CudnnStatus cudnnConvolutionBackwardBias( CudnnHandle handle, CudnnTensorDescriptorHandle srcDescriptor, [In] CUdeviceptr srcData, CudnnTensorDescriptorHandle destDescriptor, [In, Out] CUdeviceptr destData, CudnnAccumulateResult accumulate);
public static extern CudnnStatus cudnnActivationForward( CudnnHandle handle, CudnnActivationMode mode, CudnnTensorDescriptorHandle srcDescriptor, [In] CUdeviceptr srcData, CudnnTensorDescriptorHandle destDescriptor, [In, Out] CUdeviceptr destData);
public static extern CudnnStatus cudnnSetTensor4dDescriptor(CudnnTensorDescriptorHandle tensorDesc, CudnnTensorFormat format, CudnnType dataType, // image data type int n, // number of inputs (batch size) int c, // number of input feature maps int h, // height of input section int w); // width of input section
public static extern CudnnStatus cudnnPoolingForward( CudnnHandle handle, CudnnPoolingDescriptorHandle poolingDescriptor, CudnnTensorDescriptorHandle srcDescriptor, [In] CUdeviceptr srcData, CudnnTensorDescriptorHandle destDescriptor, [In, Out] CUdeviceptr destData);
public static extern CudnnStatus cudnnSoftmaxForward( CudnnHandle handle, CudnnSoftmaxAlgorithm algorithm, CudnnSoftmaxMode mode, CudnnTensorDescriptorHandle srcDescriptor, [In] CUdeviceptr srcData, CudnnTensorDescriptorHandle destDescriptor, [In, Out] CUdeviceptr destData);
internal CudnnTensorDescriptor(CudnnTensorDescriptorHandle handle) { if (handle.Pointer == IntPtr.Zero) throw new ArgumentException("The handle pointer is null.", "handle"); Contract.EndContractBlock(); this.Handle = handle; }
public static extern CudnnStatus cudnnGetTensor4dDescriptor(CudnnTensorDescriptorHandle tensorDesc, out CudnnType dataType, // image data type out int n, // number of inputs (batch size) out int c, // number of input feature maps out int h, // height of input section out int w, out int nStride, out int cStride, out int hStride, out int wStride);
public static extern CudnnStatus cudnnSetTensor4dDescriptorEx(CudnnTensorDescriptorHandle tensorDesc, CudnnType dataType, // image data type int n, // number of inputs (batch size) int c, // number of input feature maps int h, // height of input section int w, int nStride, int cStride, int hStride, int wStride);
public static extern CudnnStatus cudnnConvolutionBackwardFilter( CudnnHandle handle, CudnnTensorDescriptorHandle srcDescriptor, [In] CUdeviceptr srcData, CudnnTensorDescriptorHandle diffDescriptor, [In] CUdeviceptr diffData, CudnnConvolutionDescriptorHandle convolutionDescriptor, CudnnFilterDescriptorHandle gradientDescriptor, [In, Out] CUdeviceptr gradientData, CudnnAccumulateResult accumulate);
public static extern CudnnStatus cudnnConvolutionBackwardData( CudnnHandle handle, CudnnFilterDescriptorHandle filterDescriptor, [In] CUdeviceptr filterData, CudnnTensorDescriptorHandle diffDescriptor, [In] CUdeviceptr diffData, CudnnConvolutionDescriptorHandle convolutionDescriptor, CudnnTensorDescriptorHandle gradientDescriptor, [In, Out] CUdeviceptr gradientData, CudnnAccumulateResult accumulate);
public static extern CudnnStatus cudnnConvolutionForward( CudnnHandle handle, CudnnTensorDescriptorHandle srcDescriptor, [In] CUdeviceptr srcData, CudnnFilterDescriptorHandle filterDescriptor, [In] CUdeviceptr filterData, CudnnConvolutionDescriptorHandle convolutionDescriptor, CudnnTensorDescriptorHandle destDescriptor, [In, Out] CUdeviceptr destData, CudnnAccumulateResult accumulate);
public static extern CudnnStatus cudnnSetConvolutionDescriptor( CudnnConvolutionDescriptorHandle convolutionDescriptor, CudnnTensorDescriptorHandle inputTensorDescriptor, CudnnFilterDescriptorHandle filterDescriptor, int paddingHeight, // zero-padding height int paddingWidth, // zero-padding width int verticalStride, // vertical filter stride int horizontalStride, // horizontal filter stride int upscaleVertical, // upscale the input in x-direction int upscaleHorizontal, // upscale the input in y-direction CudnnConvolutionMode mode);
public static extern CudnnStatus cudnnDestroyTensor4dDescriptor(CudnnTensorDescriptorHandle tensorDesc);
public static extern CudnnStatus cudnnCreateTensor4dDescriptor(out CudnnTensorDescriptorHandle tensorDesc);
public static extern CudnnStatus cudnnTransformTensor4d(CudnnHandle handle, CudnnTensorDescriptorHandle srcDescriptor, [In] CUdeviceptr srcData, CudnnTensorDescriptorHandle destDescriptor, [In] CUdeviceptr destData);
public static extern CudnnStatus cudnnAddTensor4d(CudnnHandle handle, CudnnAdditionMode mode, CudnnTensorDescriptorHandle biasDescriptor, [In] CUdeviceptr biasData, CudnnTensorDescriptorHandle srcDestDescriptor, [In, Out] CUdeviceptr srcDestData);
public static extern CudnnStatus cudnnSetTensor4d(CudnnHandle handle, CudnnTensorDescriptorHandle tensorDescriptor, [In, Out] CUdeviceptr tensorData, [In] CUdeviceptr value);