Intel(R) Math Kernel Library for Deep Neural Networks (Intel(R) MKL-DNN)  0.21.0
Performance library for Deep Learning
Public Attributes | List of all members
mkldnn_memory_desc_t Struct Reference

Memory descriptor. More...

#include <mkldnn_types.h>

Collaboration diagram for mkldnn_memory_desc_t:
Collaboration graph
[legend]

Public Attributes

mkldnn_primitive_kind_t primitive_kind
 The kind of primitive. More...
 
int ndims
 Number of dimensions. More...
 
mkldnn_dims_t dims
 Dimensions in the following order: More...
 
mkldnn_data_type_t data_type
 Data type of the tensor elements. More...
 
mkldnn_memory_format_t format
 Memory format. More...
 
union {
   mkldnn_blocking_desc_t   blocking
 Description of the data layout for memory formats that use blocking. More...
 
   mkldnn_wino_desc_t   wino_desc
 Tensor of weights for integer 8bit winograd convolution. More...
 
   mkldnn_rnn_packed_desc_t   rnn_packed_desc
 Tensor of packed weights for RNN. More...
 
layout_desc
 

Detailed Description

Memory descriptor.

The description is based on a number of dimensions, dimensions themselves, plus information about elements type and memory format. Additionally, contains format-specific descriptions of the data layout.

Member Data Documentation

◆ primitive_kind

mkldnn_primitive_kind_t mkldnn_memory_desc_t::primitive_kind

The kind of primitive.

Used for self-identifying the primitive descriptor. Must be mkldnn_memory.

◆ ndims

int mkldnn_memory_desc_t::ndims

Number of dimensions.

◆ dims

mkldnn_dims_t mkldnn_memory_desc_t::dims

Dimensions in the following order:

  • CNN data tensors: mini-batch, channel, spatial ({N, C, [[D,] H,] W})
  • CNN weight tensors: group (optional), output channel, input channel, spatial ({[G,] O, I, [[D,] H,] W})
  • RNN data tensors: time, mini-batch, channels ({T, N, C}) or layers, directions, states, mini-batch, channels ({L, D, S, N, C})
  • RNN weight tensor: layers, directions, input channel, gates, output channels ({L, D, I, G, O}).
Note
The order of dimensions does not depend on the memory format, so whether the data is laid out in mkldnn_nchw or mkldnn_nhwc the dims for 4D CN data tensor would be {N, C, H, W}.

◆ data_type

mkldnn_data_type_t mkldnn_memory_desc_t::data_type

Data type of the tensor elements.

◆ format

mkldnn_memory_format_t mkldnn_memory_desc_t::format

Memory format.

◆ blocking

mkldnn_blocking_desc_t mkldnn_memory_desc_t::blocking

Description of the data layout for memory formats that use blocking.

◆ wino_desc

mkldnn_wino_desc_t mkldnn_memory_desc_t::wino_desc

Tensor of weights for integer 8bit winograd convolution.

◆ rnn_packed_desc

mkldnn_rnn_packed_desc_t mkldnn_memory_desc_t::rnn_packed_desc

Tensor of packed weights for RNN.

◆ layout_desc

union { ... } mkldnn_memory_desc_t::layout_desc

The documentation for this struct was generated from the following file: