Class LibMatrixCuDNNPoolingDescriptors
java.lang.Object
org.apache.sysds.runtime.matrix.data.LibMatrixCuDNNPoolingDescriptors
- All Implemented Interfaces:
AutoCloseable
This class is a wrapper that contain necessary data structures to invoke
a cudnn convolution* functions (such as cudnnConvolutionForward, etc)
It implements autocloseable to simplify the LibMatrixCuDNN code and also avoids potential memory leaks.
-
Field Summary
FieldsModifier and TypeFieldDescriptionjcuda.jcudnn.cudnnTensorDescriptorjcuda.jcudnn.cudnnTensorDescriptorjcuda.jcudnn.cudnnPoolingDescriptorjcuda.jcudnn.cudnnTensorDescriptorjcuda.jcudnn.cudnnTensorDescriptor -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()cudnnPoolingBackwardDescriptors(GPUContext gCtx, String instName, int N, int C, int H, int W, int K, int R, int S, int pad_h, int pad_w, int stride_h, int stride_w, int P, int Q, LibMatrixDNN.PoolingType poolingType) Get descriptors for maxpooling backward operationcudnnPoolingDescriptors(GPUContext gCtx, String instName, int N, int C, int H, int W, int K, int R, int S, int pad_h, int pad_w, int stride_h, int stride_w, int P, int Q, LibMatrixDNN.PoolingType poolingType) Get descriptors for maxpooling operation
-
Field Details
-
xDesc
public jcuda.jcudnn.cudnnTensorDescriptor xDesc -
yDesc
public jcuda.jcudnn.cudnnTensorDescriptor yDesc -
dxDesc
public jcuda.jcudnn.cudnnTensorDescriptor dxDesc -
dyDesc
public jcuda.jcudnn.cudnnTensorDescriptor dyDesc -
poolingDesc
public jcuda.jcudnn.cudnnPoolingDescriptor poolingDesc
-
-
Constructor Details
-
LibMatrixCuDNNPoolingDescriptors
public LibMatrixCuDNNPoolingDescriptors()
-
-
Method Details
-
close
public void close()- Specified by:
closein interfaceAutoCloseable
-
cudnnPoolingBackwardDescriptors
public static LibMatrixCuDNNPoolingDescriptors cudnnPoolingBackwardDescriptors(GPUContext gCtx, String instName, int N, int C, int H, int W, int K, int R, int S, int pad_h, int pad_w, int stride_h, int stride_w, int P, int Q, LibMatrixDNN.PoolingType poolingType) Get descriptors for maxpooling backward operation- Parameters:
gCtx- gpu contextinstName- instruction nameN- batch sizeC- number of channelsH- height of imageW- width of imageK- number of filtersR- height of filterS- width of filterpad_h- vertical paddingpad_w- horizontal paddingstride_h- horizontal stridestride_w- vertical strideP- (H - R + 1 + 2*pad_h)/stride_hQ- (W - S + 1 + 2*pad_w)/stride_wpoolingType- type of pooling- Returns:
- decriptor wrapper
-
cudnnPoolingDescriptors
public static LibMatrixCuDNNPoolingDescriptors cudnnPoolingDescriptors(GPUContext gCtx, String instName, int N, int C, int H, int W, int K, int R, int S, int pad_h, int pad_w, int stride_h, int stride_w, int P, int Q, LibMatrixDNN.PoolingType poolingType) Get descriptors for maxpooling operation- Parameters:
gCtx- gpu contextinstName- instruction nameN- batch sizeC- number of channelsH- height of imageW- width of imageK- number of filtersR- height of filterS- width of filterpad_h- vertical paddingpad_w- horizontal paddingstride_h- horizontal stridestride_w- vertical strideP- (H - R + 1 + 2*pad_h)/stride_hQ- (W - S + 1 + 2*pad_w)/stride_wpoolingType- type of pooling- Returns:
- decriptor wrapper
-