C API types definitions. More...
Go to the source code of this file.
Classes | |
struct | dnnl_blocking_desc_t |
Generic description of blocked data layout for most memory formats. More... | |
struct | dnnl_wino_desc_t |
Description of tensor of weights for winograd 2x3 convolution. More... | |
struct | dnnl_rnn_packed_desc_t |
Description of tensor of packed weights for rnn. More... | |
struct | dnnl_memory_extra_desc_t |
Description of extra information stored in memory. More... | |
struct | dnnl_memory_desc_t |
Memory descriptor. More... | |
struct | dnnl_convolution_desc_t |
A descriptor of a convolution operation. More... | |
struct | dnnl_shuffle_desc_t |
A descriptor of a shuffle operation. More... | |
struct | dnnl_eltwise_desc_t |
A descriptor of a element-wise operation. More... | |
struct | dnnl_softmax_desc_t |
A descriptor of a Softmax operation. More... | |
struct | dnnl_pooling_desc_t |
A descriptor of a pooling operation. More... | |
struct | dnnl_pooling_v2_desc_t |
A descriptor of a pooling operation. More... | |
struct | dnnl_lrn_desc_t |
A descriptor of a Local Response Normalization (LRN) operation. More... | |
struct | dnnl_batch_normalization_desc_t |
A descriptor of a Batch Normalization operation. More... | |
struct | dnnl_layer_normalization_desc_t |
A descriptor of a Layer Normalization operation. More... | |
struct | dnnl_inner_product_desc_t |
A descriptor of an inner product operation. More... | |
struct | dnnl_rnn_desc_t |
A descriptor for an RNN operation. More... | |
struct | dnnl_binary_desc_t |
A descriptor of a binary operation. More... | |
struct | dnnl_matmul_desc_t |
A descriptor of a matrix multiplication operation. More... | |
struct | dnnl_resampling_desc_t |
A descriptor of resampling operation. More... | |
struct | dnnl_reduction_desc_t |
A descriptor of reduction operation. More... | |
struct | dnnl_exec_arg_t |
A structure that contains an index and a memory object, and is used to pass arguments to dnnl_primitive_execute(). More... | |
struct | dnnl_version_t |
Structure containing version information as per Semantic Versioning More... | |
Macros | |
#define | DNNL_MAX_NDIMS 12 |
Maximum number of dimensions a tensor can have. More... | |
#define | DNNL_RUNTIME_DIM_VAL INT64_MIN |
A wildcard value for dimensions that are unknown at a primitive creation time. More... | |
#define | DNNL_RUNTIME_SIZE_VAL ((size_t)DNNL_RUNTIME_DIM_VAL) |
A size_t counterpart of the DNNL_RUNTIME_DIM_VAL. More... | |
#define | DNNL_RUNTIME_F32_VAL (DNNL_RUNTIME_F32_VAL_REP.f) |
A wildcard value for floating point values that are unknown at a primitive creation time. More... | |
#define | DNNL_RUNTIME_S32_VAL DNNL_RUNTIME_S32_VAL_REP |
A wildcard value for int32_t values that are unknown at a primitive creation time. More... | |
#define | DNNL_RNN_MAX_N_PARTS 4 |
Maximum number of parts of RNN weights tensor that require separate computation. More... | |
#define | DNNL_MEMORY_NONE (NULL) |
Special pointer value that indicates that a memory object should not have an underlying buffer. More... | |
#define | DNNL_MEMORY_ALLOCATE ((void *)(size_t)-1) |
Special pointer value that indicates that the library needs to allocate an underlying buffer for a memory object. More... | |
#define | DNNL_ARG_SRC_0 1 |
Source argument #0. | |
#define | DNNL_ARG_SRC DNNL_ARG_SRC_0 |
A special mnemonic for source argument for primitives that have a single source. More... | |
#define | DNNL_ARG_SRC_LAYER DNNL_ARG_SRC_0 |
A special mnemonic for RNN input vector. More... | |
#define | DNNL_ARG_FROM DNNL_ARG_SRC_0 |
A special mnemonic for reorder source argument. More... | |
#define | DNNL_ARG_SRC_1 2 |
Source argument #1. | |
#define | DNNL_ARG_SRC_ITER DNNL_ARG_SRC_1 |
A special mnemonic for RNN input recurrent hidden state vector. More... | |
#define | DNNL_ARG_SRC_2 3 |
Source argument #2. | |
#define | DNNL_ARG_SRC_ITER_C DNNL_ARG_SRC_2 |
A special mnemonic for RNN input recurrent cell state vector. More... | |
#define | DNNL_ARG_DST_0 17 |
Destination argument #0. | |
#define | DNNL_ARG_DST DNNL_ARG_DST_0 |
A special mnemonic for destination argument for primitives that have a single destination. More... | |
#define | DNNL_ARG_TO DNNL_ARG_DST_0 |
A special mnemonic for reorder destination argument. More... | |
#define | DNNL_ARG_DST_LAYER DNNL_ARG_DST_0 |
A special mnemonic for RNN output vector. An alias for DNNL_ARG_DST_0. | |
#define | DNNL_ARG_DST_1 18 |
Destination argument #1. | |
#define | DNNL_ARG_DST_ITER DNNL_ARG_DST_1 |
A special mnemonic for RNN input recurrent hidden state vector. More... | |
#define | DNNL_ARG_DST_2 19 |
Destination argument #2. | |
#define | DNNL_ARG_DST_ITER_C DNNL_ARG_DST_2 |
A special mnemonic for LSTM output recurrent cell state vector. More... | |
#define | DNNL_ARG_WEIGHTS_0 33 |
Weights argument #0. | |
#define | DNNL_ARG_WEIGHTS DNNL_ARG_WEIGHTS_0 |
A special mnemonic for primitives that have a single weights argument. More... | |
#define | DNNL_ARG_SCALE_SHIFT DNNL_ARG_WEIGHTS_0 |
A special mnemonic for scale and shift argument of normalization primitives. More... | |
#define | DNNL_ARG_WEIGHTS_LAYER DNNL_ARG_WEIGHTS_0 |
A special mnemonic for RNN weights applied to the layer input. More... | |
#define | DNNL_ARG_WEIGHTS_1 34 |
Weights argument #1. | |
#define | DNNL_ARG_WEIGHTS_ITER DNNL_ARG_WEIGHTS_1 |
A special mnemonic for RNN weights applied to the recurrent input. More... | |
#define | DNNL_ARG_WEIGHTS_2 35 |
Weights argument #2. | |
#define | DNNL_ARG_WEIGHTS_PEEPHOLE DNNL_ARG_WEIGHTS_2 |
A special mnemonic for RNN weights applied to the peephole weights. More... | |
#define | DNNL_ARG_WEIGHTS_3 36 |
Weights argument #3. | |
#define | DNNL_ARG_WEIGHTS_PROJECTION DNNL_ARG_WEIGHTS_3 |
A special mnemonic for RNN weights applied to the projection weights. More... | |
#define | DNNL_ARG_BIAS 41 |
Bias tensor argument. | |
#define | DNNL_ARG_MEAN 49 |
Mean values tensor argument. | |
#define | DNNL_ARG_VARIANCE 50 |
Variance values tensor argument. | |
#define | DNNL_ARG_WORKSPACE 64 |
Workspace tensor argument. More... | |
#define | DNNL_ARG_SCRATCHPAD 80 |
Scratchpad (temporary storage) tensor argument. | |
#define | DNNL_ARG_DIFF_SRC_0 129 |
Gradient (diff) of the source argument #0. | |
#define | DNNL_ARG_DIFF_SRC DNNL_ARG_DIFF_SRC_0 |
A special mnemonic for primitives that have a single diff source argument. More... | |
#define | DNNL_ARG_DIFF_SRC_LAYER DNNL_ARG_DIFF_SRC_0 |
A special mnemonic for gradient (diff) of RNN input vector. More... | |
#define | DNNL_ARG_DIFF_SRC_1 130 |
Gradient (diff) of the source argument #1. | |
#define | DNNL_ARG_DIFF_SRC_ITER DNNL_ARG_DIFF_SRC_1 |
A special mnemonic for gradient (diff) of RNN input recurrent hidden state vector. More... | |
#define | DNNL_ARG_DIFF_SRC_2 131 |
Gradient (diff) of the source argument #2. | |
#define | DNNL_ARG_DIFF_SRC_ITER_C DNNL_ARG_DIFF_SRC_2 |
A special mnemonic for gradient (diff) of RNN input recurrent cell state vector. More... | |
#define | DNNL_ARG_DIFF_DST_0 145 |
Gradient (diff) of the destination argument #0. | |
#define | DNNL_ARG_DIFF_DST DNNL_ARG_DIFF_DST_0 |
A special mnemonic for primitives that have a single diff destination argument. More... | |
#define | DNNL_ARG_DIFF_DST_LAYER DNNL_ARG_DIFF_DST_0 |
A special mnemonic for gradient (diff) of RNN output vector. More... | |
#define | DNNL_ARG_DIFF_DST_1 146 |
Gradient (diff) of the destination argument #1. | |
#define | DNNL_ARG_DIFF_DST_ITER DNNL_ARG_DIFF_DST_1 |
A special mnemonic for gradient (diff) of RNN input recurrent hidden state vector. More... | |
#define | DNNL_ARG_DIFF_DST_2 147 |
Gradient (diff) of the destination argument #2. | |
#define | DNNL_ARG_DIFF_DST_ITER_C DNNL_ARG_DIFF_DST_2 |
A special mnemonic for gradient (diff) of RNN input recurrent cell state vector. More... | |
#define | DNNL_ARG_DIFF_WEIGHTS_0 161 |
Gradient (diff) of the weights argument #0. | |
#define | DNNL_ARG_DIFF_WEIGHTS DNNL_ARG_DIFF_WEIGHTS_0 |
A special mnemonic for primitives that have a single diff weights argument. More... | |
#define | DNNL_ARG_DIFF_SCALE_SHIFT DNNL_ARG_DIFF_WEIGHTS_0 |
A special mnemonic for diff of scale and shift argument of normalization primitives. More... | |
#define | DNNL_ARG_DIFF_WEIGHTS_LAYER DNNL_ARG_DIFF_WEIGHTS_0 |
A special mnemonic for diff of RNN weights applied to the layer input. More... | |
#define | DNNL_ARG_DIFF_WEIGHTS_1 162 |
Gradient (diff) of the weights argument #1. | |
#define | DNNL_ARG_DIFF_WEIGHTS_ITER DNNL_ARG_DIFF_WEIGHTS_1 |
A special mnemonic for diff of RNN weights applied to the recurrent input. More... | |
#define | DNNL_ARG_DIFF_WEIGHTS_2 163 |
Gradient (diff) of the weights argument #2. | |
#define | DNNL_ARG_DIFF_WEIGHTS_PEEPHOLE DNNL_ARG_DIFF_WEIGHTS_2 |
A special mnemonic for diff of RNN weights applied to the peephole weights. More... | |
#define | DNNL_ARG_DIFF_WEIGHTS_3 164 |
Gradient (diff) of the weights argument #3. | |
#define | DNNL_ARG_DIFF_WEIGHTS_PROJECTION DNNL_ARG_DIFF_WEIGHTS_3 |
A special mnemonic for diff of RNN weights applied to the projection weights. More... | |
#define | DNNL_ARG_DIFF_BIAS 169 |
Gradient (diff) of the bias tensor argument. | |
#define | DNNL_ARG_ATTR_OUTPUT_SCALES 513 |
Output scaling factors provided at execution time. | |
#define | DNNL_ARG_MULTIPLE_SRC 1024 |
Starting index for source arguments for primitives that take a variable number of source arguments. More... | |
#define | DNNL_ARG_MULTIPLE_DST 2048 |
Starting index for destination arguments for primitives that produce a variable number of destination arguments. More... | |
#define | DNNL_ARG_ATTR_ZERO_POINTS 4096 |
Zero points provided at execution time. | |
#define | DNNL_ARG_ATTR_POST_OP_DW 8192 |
Arguments for fused depthwise convolution. More... | |
#define | DNNL_ARG_ATTR_MULTIPLE_POST_OP_BASE 16384 |
Starting point for a binary post operation. | |
#define | DNNL_ARG_ATTR_MULTIPLE_POST_OP(idx) (DNNL_ARG_ATTR_MULTIPLE_POST_OP_BASE * ((idx) + 1)) |
Arguments for a binary post operation. More... | |
#define | DNNL_RUNTIME_NONE 0u |
No runtime (disabled) | |
#define | DNNL_RUNTIME_SEQ 1u |
Sequential runtime (CPU only) | |
#define | DNNL_RUNTIME_OMP 2u |
OpenMP runtime (CPU only) | |
#define | DNNL_RUNTIME_TBB 4u |
TBB runtime (CPU only) | |
#define | DNNL_RUNTIME_THREADPOOL 8u |
Threadpool runtime (CPU only) | |
#define | DNNL_RUNTIME_OCL 256u |
OpenCL runtime. | |
#define | DNNL_RUNTIME_SYCL 512u |
SYCL runtime. | |
#define | DNNL_RUNTIME_DPCPP DNNL_RUNTIME_SYCL |
DPC++ runtime. | |
#define | DNNL_JIT_PROFILE_NONE 0u |
Disable profiling completely. | |
#define | DNNL_JIT_PROFILE_VTUNE 1u |
Enable VTune Amplifier integration. | |
#define | DNNL_JIT_PROFILE_LINUX_PERFMAP 2u |
Enable Linux perf integration via perfmap files. | |
#define | DNNL_JIT_PROFILE_LINUX_JITDUMP 4u |
Enable Linux perf integration via jitdump files. | |
#define | DNNL_JIT_PROFILE_LINUX_JITDUMP_USE_TSC 8u |
Instruct Linux perf integration via jitdump files to use TSC. More... | |
#define | DNNL_JIT_PROFILE_LINUX_PERF (DNNL_JIT_PROFILE_LINUX_JITDUMP | DNNL_JIT_PROFILE_LINUX_PERFMAP) |
Enable Linux perf integration (both jitdump and perfmap) | |
Typedefs | |
typedef int64_t | dnnl_dim_t |
A type to describe tensor dimension. | |
typedef dnnl_dim_t | dnnl_dims_t[DNNL_MAX_NDIMS] |
A type to describe tensor dimensions. | |
typedef struct dnnl_memory * | dnnl_memory_t |
A memory handle. | |
typedef const struct dnnl_memory * | const_dnnl_memory_t |
A constant memory handle. | |
typedef void * | dnnl_op_desc_t |
A pointer to any of the operation descriptors. | |
typedef const void * | const_dnnl_op_desc_t |
A pointer to any of the operation descriptors (constant variant). | |
typedef dnnl_convolution_desc_t | dnnl_deconvolution_desc_t |
A descriptor of a deconvolution operation. | |
typedef dnnl_softmax_desc_t | dnnl_logsoftmax_desc_t |
A descriptor of a LogSoftmax operation. More... | |
typedef struct dnnl_engine * | dnnl_engine_t |
An engine handle. | |
typedef struct dnnl_primitive_desc_iterator * | dnnl_primitive_desc_iterator_t |
A primitive descriptor iterator handle. | |
typedef const struct dnnl_primitive_desc_iterator * | const_dnnl_primitive_desc_iterator_t |
A constant primitive descriptor iterator handle. | |
typedef struct dnnl_primitive_desc * | dnnl_primitive_desc_t |
A primitive descriptor handle. | |
typedef const struct dnnl_primitive_desc * | const_dnnl_primitive_desc_t |
A constant primitive descriptor handle. | |
typedef struct dnnl_primitive_attr * | dnnl_primitive_attr_t |
A primitive descriptor attributes handle that controls primitive behavior. More... | |
typedef const struct dnnl_primitive_attr * | const_dnnl_primitive_attr_t |
A constant primitive descriptor attributes handle. | |
typedef struct dnnl_post_ops * | dnnl_post_ops_t |
A post operation chain handle. | |
typedef const struct dnnl_post_ops * | const_dnnl_post_ops_t |
A constant post operation chain handle. | |
typedef struct dnnl_primitive * | dnnl_primitive_t |
A primitive handle. | |
typedef const struct dnnl_primitive * | const_dnnl_primitive_t |
A constant primitive handle. | |
typedef struct dnnl_stream * | dnnl_stream_t |
An execution stream handle. | |
typedef const struct dnnl_stream * | const_dnnl_stream_t |
A constant execution stream handle. | |
typedef struct dnnl_stream_attr * | dnnl_stream_attr_t |
An execution stream attributes handle. | |
typedef const struct dnnl_stream_attr * | const_dnnl_stream_attr_t |
A constant execution stream attributes handle. | |
Enumerations | |
enum | dnnl_status_t |
Status values returned by the library functions. More... | |
enum | dnnl_data_type_t |
Data type specification. More... | |
enum | dnnl_format_kind_t |
Memory format kind. More... | |
enum | dnnl_format_tag_t |
Memory format tag specification. More... | |
enum | dnnl_prop_kind_t |
Kinds of propagation. More... | |
enum | dnnl_primitive_kind_t |
Kinds of primitives. More... | |
enum | dnnl_alg_kind_t |
Kinds of algorithms. More... | |
enum | dnnl_normalization_flags_t |
Flags for normalization primitives. More... | |
enum | dnnl_wino_memory_format_t |
Winograd-specific formats. More... | |
enum | dnnl_memory_extra_flags_t |
Flags for memory special features. More... | |
enum | dnnl_rnn_flags_t |
Flags for RNN cell. More... | |
enum | dnnl_rnn_direction_t |
A direction of RNN primitive execution. More... | |
enum | dnnl_engine_kind_t |
Kinds of engines. More... | |
enum | dnnl_scratchpad_mode_t |
Scratchpad mode. More... | |
enum | dnnl_query_t |
Primitive descriptor query specification. More... | |
enum | dnnl_stream_flags_t |
Stream flags. More... | |
enum | dnnl_cpu_isa_t |
CPU instruction set flags. More... | |
C API types definitions.