|
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...
|
|
dnnl_status_t DNNL_API | dnnl_pooling_v2_forward_desc_init (dnnl_pooling_v2_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 dilation, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
| Initializes a descriptor for pooling v2 (pooling with dilation support) forward propagation primitive. More...
|
|
dnnl_status_t DNNL_API | dnnl_pooling_v2_backward_desc_init (dnnl_pooling_v2_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 dilation, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
| Initializes a descriptor for pooling v2 (pooling with dilation support) backward propagation primitive. More...
|
|
A primitive to perform max or average pooling.
- See also
- Pooling in developer guide
◆ dnnl_pooling_forward_desc_init()
Initializes a descriptor for pooling forward propagation primitive.
Arrays strides
, kernel
, padding_l
, and padding_r
contain values for spatial dimensions only and hence must have the same number of elements as there are spatial dimensions. The order of values is the same as in the tensor: depth (for 3D tensors), height (for 3D and 2D tensors), and width.
- Parameters
-
pool_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. |
- Returns
- dnnl_success on success and a status describing the error otherwise.
◆ dnnl_pooling_backward_desc_init()
Initializes a descriptor for pooling backward propagation primitive.
Arrays strides
, kernel
, padding_l
, and padding_r
contain values for spatial dimensions only and hence must have the same number of elements as there are spatial dimensions. The order of values is the same as in the tensor: depth (for 3D tensors), height (for 3D and 2D tensors), and width.
- Parameters
-
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. |
- Returns
- dnnl_success on success and a status describing the error otherwise.
◆ dnnl_pooling_v2_forward_desc_init()
Initializes a descriptor for pooling v2 (pooling with dilation support) forward propagation primitive.
Arrays strides
, kernel
, dilation
, padding_l
and padding_r
contain values for spatial dimensions only and hence must have the same number of elements as there are spatial dimensions. The order of values is the same as in the tensor: depth (for 3D tensors), height (for 3D and 2D tensors), and width.
- Parameters
-
pool_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. |
dilation | Array of dilations for spatial dimension. |
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. |
- Returns
- dnnl_success on success and a status describing the error otherwise.
- Examples
- cnn_inference_f32.c, and cpu_cnn_training_f32.c.
◆ dnnl_pooling_v2_backward_desc_init()
Initializes a descriptor for pooling v2 (pooling with dilation support) backward propagation primitive.
Arrays strides
, kernel
, dilation
, padding_l
and padding_r
contain values for spatial dimensions only and hence must have the same number of elements as there are spatial dimensions. The order of values is the same as in the tensor: depth (for 3D tensors), height (for 3D and 2D tensors), and width.
- Parameters
-
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. |
dilation | Array of dilations for spatial dimension. |
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. |
- Returns
- dnnl_success on success and a status describing the error otherwise.
- Examples
- cpu_cnn_training_f32.c.