Library/ManagedCuda/CudaDNN/CudaDNNNativeMethods.cs
/// <summary>
/// This function returns the amount of GPU memory workspace the user needs
/// to allocate to be able to call cudnnConvolutionBackwardData with the
/// specified algorithm. The workspace allocated will then be passed to the routine
/// cudnnConvolutionBackwardData. The specified algorithm can be the result of the
/// call to cudnnGetConvolutionBackwardDataAlgorithm or can be chosen arbitrarily
/// by the user. Note that not every algorithm is available for every configuration of the
/// input tensor and/or every configuration of the convolution descriptor.
/// </summary>
/// <param name="handle">Handle to a previously created cuDNN context.</param>
/// <param name="wDesc">Handle to a previously initialized filter descriptor.</param>
/// <param name="dyDesc">Handle to the previously initialized input differential tensor descriptor.</param>
/// <param name="convDesc">Previously initialized convolution descriptor.</param>
/// <param name="dxDesc">Handle to the previously initialized output tensor descriptor.</param>
/// <param name="algo">Enumerant that specifies the chosen convolution algorithm</param>
/// <param name="sizeInBytes">Amount of GPU memory needed as workspace to be able to execute a forward convolution with the specified algo</param>
This function returns the amount of GPU memory workspace the user needs
to allocate to be able to call cudnnConvolutionBackwardData with the
specified algorithm. The workspace allocated will then be passed to the routine
cudnnConvolutionBackwardData. The specified algorithm can be the result of the
call to cudnnGetConvolutionBackwardDataAlgorithm or can be chosen arbitrarily
by the user. Note that not every algorithm is available for every configuration of the
input tensor and/or every configuration of the convolution descriptor.
This function returns the amount of GPU memory workspace the user needs to allocate to be able to call cudnnConvolutionBackwardData with the specified algorithm . The workspace allocated will then be passed to the routine cudnnConvolutionBackwardData . The specified algorithm can be the result of the call to cudnnGetConvolutionBackwardDataAlgorithm or can be chosen arbitrarily by the user . Note that not every algorithm is available for every configuration of the input tensor and / or every configuration of the convolution descriptor .
[DllImport(CUDNN_API_DLL_NAME)]
		public static extern cudnnStatus cudnnGetConvolutionBackwardDataWorkspaceSize( cudnnHandle handle,
																		   cudnnFilterDescriptor      wDesc,
																		   cudnnTensorDescriptor       dyDesc,
																		   cudnnConvolutionDescriptor convDesc,  
																		   cudnnTensorDescriptor       dxDesc,
																		   cudnnConvolutionBwdDataAlgo          algo,
																		   ref SizeT                            sizeInBytes
																		);
[ DllImport ( CUDNN_API_DLL_NAME ) ] public static extern cudnnStatus cudnnGetConvolutionBackwardDataWorkspaceSize ( cudnnHandle handle , cudnnFilterDescriptor wDesc , cudnnTensorDescriptor dyDesc , cudnnConvolutionDescriptor convDesc , cudnnTensorDescriptor dxDesc , cudnnConvolutionBwdDataAlgo algo , ref SizeT sizeInBytes ) ;
This function returns the amount of GPU memory workspace the user needs
to allocate to be able to call cudnnConvolutionBackwardData with the
specified algorithm.
This function returns the amount of GPU memory workspace the user needs to allocate to be able to call cudnnConvolutionBackwardData with the specified algorithm .
handle
cudnnHandle
Handle to a previously created cuDNN context.
Handle to a previously created cuDNN context .
wDesc
cudnnFilterDescriptor
Handle to a previously initialized filter descriptor.
Handle to a previously initialized filter descriptor .
dyDesc
cudnnTensorDescriptor
Handle to the previously initialized input differential tensor descriptor.
Handle to the previously initialized input differential tensor descriptor .
convDesc
cudnnConvolutionDescriptor
Previously initialized convolution descriptor.
Previously initialized convolution descriptor .
dxDesc
cudnnTensorDescriptor
Handle to the previously initialized output tensor descriptor.
Handle to the previously initialized output tensor descriptor .
algo
cudnnConvolutionBwdDataAlgo
Enumerant that specifies the chosen convolution algorithm
Enumerant that specifies the chosen convolution algorithm
SizeT
ref
sizeInBytes
Amount of GPU memory needed as workspace to be able to execute a forward convolution with the specified algo
Amount of GPU memory needed as workspace to be able to execute a forward convolution with the specified algo