struct dnnl_blocking_desc_t

Overview

Generic description of blocked data layout for most memory formats. More…

#include <dnnl_types.h>

struct dnnl_blocking_desc_t
{
    // fields

    dnnl_dims_t strides;
    int inner_nblks;
    dnnl_dims_t inner_blks;
    dnnl_dims_t inner_idxs;
};

Detailed Documentation

Generic description of blocked data layout for most memory formats.

See also:

Understanding Memory Formats

Fields

dnnl_dims_t strides

The strides between the outermost blocks.

In case of plain (non-blocked) formats the strides between dimensions.

int inner_nblks

The number of innermost blocks, e.g. 3 in case of OIhw_4i16o4i_

dnnl_dims_t inner_blks

The size of the blocks, e.g. {4, 16, 4} in case of OIhw_4i16o4i

dnnl_dims_t inner_idxs

The logical indices of the blocks, e.g.

{1, 0, 1} in case of 4i16o4i, because i is the 1st dim and o is the 0st dim