Library/ManagedCuda/CudaDNN/CudaDNNNativeMethods.cs
/// <summary>
/// This function computes the convolution gradient with respect to filter coefficients using
/// the specified algo, returning results in gradDesc.Scaling factors alpha and beta can be
/// used to scale the input tensor and the output tensor respectively.
/// </summary>
/// <param name="handle">Handle to a previously created cuDNN context.</param>
/// <param name="alpha">Pointer to scaling factors (in host memory) used to blend the computation
/// result with prior value in the output layer as follows: dstValue =
/// alpha[0]*result + beta[0]*priorDstValue. Please refer to this section for
/// additional details.</param>
/// <param name="xDesc">Handle to a previously initialized tensor descriptor.</param>
/// <param name="x">Data pointer to GPU memory associated with the tensor descriptor srcDesc.</param>
/// <param name="dyDesc">Handle to the previously initialized input differential tensor descriptor.</param>
/// <param name="dy">Data pointer to GPU memory associated with the input differential tensor descriptor diffDesc.</param>
/// <param name="convDesc">Previously initialized convolution descriptor.</param>
/// <param name="algo">Enumerant that specifies which convolution algorithm shoud be used to compute the results</param>
/// <param name="workSpace">Data pointer to GPU memory to a workspace needed to able to execute
/// the specified algorithm. If no workspace is needed for a particular
/// algorithm, that pointer can be nil</param>
/// <param name="workSpaceSizeInBytes">Specifies the size in bytes of the provided workSpace</param>
/// <param name="beta">Pointer to scaling factors (in host memory) used to blend the computation
/// result with prior value in the output layer as follows: dstValue =
/// alpha[0]*result + beta[0]*priorDstValue. Please refer to this section for
/// additional details.</param>
/// <param name="dwDesc">Handle to a previously initialized filter descriptor.</param>
/// <param name="dw">Data pointer to GPU memory associated with the filter descriptor
/// gradDesc that carries the result.</param>    
This function computes the convolution gradient with respect to filter coefficients using
the specified algo, returning results in gradDesc.Scaling factors alpha and beta can be
used to scale the input tensor and the output tensor respectively.
This function computes the convolution gradient with respect to filter coefficients using the specified algo returning results in gradDesc . Scaling factors alpha and beta can be used to scale the input tensor and the output tensor respectively .
[DllImport(CUDNN_API_DLL_NAME)]
		public static extern cudnnStatus cudnnConvolutionBackwardFilter( cudnnHandle                 handle,
																	 ref float alpha,
																	 cudnnTensorDescriptor       xDesc,
																	 CUdeviceptr x,
																	 cudnnTensorDescriptor       dyDesc,
																	 CUdeviceptr dy,
																	 cudnnConvolutionDescriptor  convDesc,
																	 cudnnConvolutionBwdFilterAlgo     algo,
																	 CUdeviceptr workSpace,
																	 SizeT                              workSpaceSizeInBytes,
																	 ref float beta,
																	 cudnnFilterDescriptor       dwDesc,
																	 CUdeviceptr dw
																   );
[ DllImport ( CUDNN_API_DLL_NAME ) ] public static extern cudnnStatus cudnnConvolutionBackwardFilter ( cudnnHandle handle , ref float alpha , cudnnTensorDescriptor xDesc , CUdeviceptr x , cudnnTensorDescriptor dyDesc , CUdeviceptr dy , cudnnConvolutionDescriptor convDesc , cudnnConvolutionBwdFilterAlgo algo , CUdeviceptr workSpace , SizeT workSpaceSizeInBytes , ref float beta , cudnnFilterDescriptor dwDesc , CUdeviceptr dw ) ;
This function computes the convolution gradient with respect to filter coefficients using
the specified algo, returning results in gradDesc.Scaling factors alpha and beta can be
used to scale the input tensor and the output tensor respectively.
This function computes the convolution gradient with respect to filter coefficients using the specified algo returning results in gradDesc . Scaling factors alpha and beta can be used to scale the input tensor and the output tensor respectively .
handle
cudnnHandle
Handle to a previously created cuDNN context.
Handle to a previously created cuDNN context .
float
ref
xDesc
cudnnTensorDescriptor
Handle to a previously initialized tensor descriptor.
Handle to a previously initialized tensor descriptor .
x
CUdeviceptr
Data pointer to GPU memory associated with the tensor descriptor srcDesc.
Data pointer to GPU memory associated with the tensor descriptor srcDesc .
dyDesc
cudnnTensorDescriptor
Handle to the previously initialized input differential tensor descriptor.
Handle to the previously initialized input differential tensor descriptor .
dy
CUdeviceptr
Data pointer to GPU memory associated with the input differential tensor descriptor diffDesc.
Data pointer to GPU memory associated with the input differential tensor descriptor diffDesc .
convDesc
cudnnConvolutionDescriptor
Previously initialized convolution descriptor.
Previously initialized convolution descriptor .
algo
cudnnConvolutionBwdFilterAlgo
Enumerant that specifies which convolution algorithm shoud be used to compute the results
Enumerant that specifies which convolution algorithm shoud be used to compute the results
workSpace
CUdeviceptr
Data pointer to GPU memory to a workspace needed to able to execute
the specified algorithm. If no workspace is needed for a particular
algorithm, that pointer can be nil
Data pointer to GPU memory to a workspace needed to able to execute the specified algorithm . If no workspace is needed for a particular algorithm that pointer can be nil
workSpaceSizeInBytes
SizeT
Specifies the size in bytes of the provided workSpace
Specifies the size in bytes of the provided workSpace
dwDesc
cudnnFilterDescriptor
Handle to a previously initialized filter descriptor.
Handle to a previously initialized filter descriptor .
dw
CUdeviceptr
Data pointer to GPU memory associated with the filter descriptor
gradDesc that carries the result.
Data pointer to GPU memory associated with the filter descriptor gradDesc that carries the result .
alpha
Pointer to scaling factors (in host memory) used to blend the computation
result with prior value in the output layer as follows: dstValue
alpha[0]*result + beta[0]*priorDstValue. Please refer to this section for
additional details.
Pointer to scaling factors ( in host memory ) used to blend the computation result with prior value in the output layer as follows : dstValue alpha [ 0 ] * result + beta [ 0 ] * priorDstValue . Please refer to this section for additional details .
beta
Pointer to scaling factors (in host memory) used to blend the computation
result with prior value in the output layer as follows: dstValue
alpha[0]*result + beta[0]*priorDstValue. Please refer to this section for
additional details.
Pointer to scaling factors ( in host memory ) used to blend the computation result with prior value in the output layer as follows : dstValue alpha [ 0 ] * result + beta [ 0 ] * priorDstValue . Please refer to this section for additional details .