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 cudnnConvolutionForward with the specified
/// algorithm. The workspace allocated will then be passed to the routine
/// cudnnConvolutionForward. The specified algorithm can be the result of the call to
/// cudnnGetConvolutionForwardAlgorithm 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="xDesc">Handle to the previously initialized input tensor descriptor.</param>
/// <param name="filterDesc">Handle to a previously initialized filter descriptor.</param>
/// <param name="convDesc">Previously initialized convolution descriptor.</param>
/// <param name="yDesc">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 cudnnConvolutionForward with the specified
algorithm. The workspace allocated will then be passed to the routine
cudnnConvolutionForward. The specified algorithm can be the result of the call to
cudnnGetConvolutionForwardAlgorithm 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 cudnnConvolutionForward with the specified algorithm . The workspace allocated will then be passed to the routine cudnnConvolutionForward . The specified algorithm can be the result of the call to cudnnGetConvolutionForwardAlgorithm 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 cudnnGetConvolutionForwardWorkspaceSize( cudnnHandle                      handle, 
																		   cudnnTensorDescriptor      xDesc,
																		   cudnnFilterDescriptor      filterDesc,
																		   cudnnConvolutionDescriptor convDesc,  
																		   cudnnTensorDescriptor      yDesc,
																		   cudnnConvolutionFwdAlgo          algo,
																		   ref SizeT                            sizeInBytes
																		);
[ DllImport ( CUDNN_API_DLL_NAME ) ] public static extern cudnnStatus cudnnGetConvolutionForwardWorkspaceSize ( cudnnHandle handle , cudnnTensorDescriptor xDesc , cudnnFilterDescriptor filterDesc , cudnnConvolutionDescriptor convDesc , cudnnTensorDescriptor yDesc , cudnnConvolutionFwdAlgo algo , ref SizeT sizeInBytes ) ;
This function returns the amount of GPU memory workspace the user needs
to allocate to be able to call cudnnConvolutionForward with the specified
algorithm.
This function returns the amount of GPU memory workspace the user needs to allocate to be able to call cudnnConvolutionForward with the specified algorithm .
handle
cudnnHandle
Handle to a previously created cuDNN context.
Handle to a previously created cuDNN context .
xDesc
cudnnTensorDescriptor
Handle to the previously initialized input tensor descriptor.
Handle to the previously initialized input tensor descriptor .
filterDesc
cudnnFilterDescriptor
Handle to a previously initialized filter descriptor.
Handle to a previously initialized filter descriptor .
convDesc
cudnnConvolutionDescriptor
Previously initialized convolution descriptor.
Previously initialized convolution descriptor .
yDesc
cudnnTensorDescriptor
Handle to the previously initialized output tensor descriptor.
Handle to the previously initialized output tensor descriptor .
algo
cudnnConvolutionFwdAlgo
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