A primitive to perform max or average pooling. More...
Classes | |
struct | dnnl::pooling_forward |
Pooling forward propagation primitive. More... | |
struct | dnnl::pooling_backward |
Pooling backward propagation primitive. More... | |
struct | dnnl_pooling_desc_t |
A descriptor of a pooling operation. More... | |
Functions | |
dnnl_status_t DNNL_API | dnnl_pooling_forward_desc_init (dnnl_pooling_desc_t *pool_desc, dnnl_prop_kind_t prop_kind, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *dst_desc, const dnnl_dims_t strides, const dnnl_dims_t kernel, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
Initializes a descriptor for pooling forward propagation primitive. More... | |
dnnl_status_t DNNL_API | dnnl_pooling_backward_desc_init (dnnl_pooling_desc_t *pool_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_src_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t kernel, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
Initializes a descriptor for pooling backward propagation primitive. More... | |
A primitive to perform max or average pooling.
dnnl_status_t DNNL_API dnnl_pooling_forward_desc_init | ( | dnnl_pooling_desc_t * | pool_desc, |
dnnl_prop_kind_t | prop_kind, | ||
dnnl_alg_kind_t | alg_kind, | ||
const dnnl_memory_desc_t * | src_desc, | ||
const dnnl_memory_desc_t * | dst_desc, | ||
const dnnl_dims_t | strides, | ||
const dnnl_dims_t | kernel, | ||
const dnnl_dims_t | padding_l, | ||
const dnnl_dims_t | padding_r | ||
) |
Initializes a descriptor for pooling forward propagation primitive.
Inputs:
Outputs:
alg_kind
= dnnl_pooling_max and prop_kind
= dnnl_forward_training; must be queried for using dnnl_primitive_desc_query_md() after a corresponding primitive descriptor is createdpool_desc | Output descriptor for a pooling primitive. |
prop_kind | Propagation kind. Possible values are dnnl_forward_training and dnnl_forward_inference. |
alg_kind | Pooling algorithm kind: either dnnl_pooling_max, dnnl_pooling_avg_include_padding, or dnnl_pooling_avg (same as dnnl_pooling_avg_exclude_padding). |
src_desc | Source memory descriptor. |
dst_desc | Destination memory descriptor. |
strides | Array of strides for spatial dimension. |
kernel | Array of kernel spatial dimensions. |
padding_l | Array of padding values for low indices for each spatial dimension (front, top, left). |
padding_r | Array of padding values for high indices for each spatial dimension (back, bottom, right). Can be NULL in which case padding is considered to be symmetrical. |
dnnl_status_t DNNL_API dnnl_pooling_backward_desc_init | ( | dnnl_pooling_desc_t * | pool_desc, |
dnnl_alg_kind_t | alg_kind, | ||
const dnnl_memory_desc_t * | diff_src_desc, | ||
const dnnl_memory_desc_t * | diff_dst_desc, | ||
const dnnl_dims_t | strides, | ||
const dnnl_dims_t | kernel, | ||
const dnnl_dims_t | padding_l, | ||
const dnnl_dims_t | padding_r | ||
) |
Initializes a descriptor for pooling backward propagation primitive.
Inputs:
alg_kind
= dnnl_pooling_max; must be queried for using dnnl_primitive_desc_query_md() after a corresponding primitive descriptor is createdOutputs:
pool_desc | Output descriptor for a pooling primitive. |
alg_kind | Pooling algorithm kind: either dnnl_pooling_max, dnnl_pooling_avg_include_padding, or dnnl_pooling_avg (same as dnnl_pooling_avg_exclude_padding). |
diff_src_desc | Diff source memory descriptor. |
diff_dst_desc | Diff destination memory descriptor. |
strides | Array of strides for spatial dimension. |
kernel | Array of kernel spatial dimensions. |
padding_l | Array of padding values for low indices for each spatial dimension (front, top, left). |
padding_r | Array of padding values for high indices for each spatial dimension (back, bottom, right). Can be NULL in which case padding is considered to be symmetrical. |