oneAPI Deep Neural Network Library (oneDNN)  1.4.0
Performance library for Deep Learning
dnnl_types.h
Go to the documentation of this file.
1 /*******************************************************************************
2 * Copyright 2016-2020 Intel Corporation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *******************************************************************************/
16 
19 
20 #ifndef DNNL_TYPES_H
21 #define DNNL_TYPES_H
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
28 #include <stddef.h>
29 #include <stdint.h>
31 
34 
37 
39 typedef enum {
55 
57 
60 
62 typedef enum {
66  dnnl_f16 = 1,
68  dnnl_bf16 = 2,
70  dnnl_f32 = 3,
72  dnnl_s32 = 4,
74  dnnl_s8 = 5,
76  dnnl_u8 = 6,
78 
80 typedef enum {
95 
164 typedef enum {
170 
171  // Semantic agnostic section
172  // The physical order of dimensions is defined by the permutation of the
173  // characters, assuming that ab..z defines the natural order.
174 
175  // Plain formats
176 
183 
184  // Permuted plain formats
185 
205 
206  // Opaque blocked formats
207 
208  dnnl_Abc16a,
209  dnnl_ABc16a16b,
210  dnnl_ABc4a4b,
213  dnnl_ABc16b16a,
214  dnnl_Abc4a,
217  dnnl_ABc4b16a4b,
218  dnnl_ABc2b8a4b,
219  dnnl_ABc4b4a,
220  dnnl_ABc8a16b2a,
221  dnnl_ABc8a8b,
224  dnnl_ABc8b16a2b,
225  dnnl_BAc8a16b2a,
226  dnnl_ABc8b8a,
227  dnnl_Abcd16a,
228  dnnl_Abcd8a,
229  dnnl_ABcd16a16b,
230  dnnl_ABcd32a32b,
233  dnnl_ABcd16b16a,
234  dnnl_aBCd16b16c,
235  dnnl_aBCd16c16b,
236  dnnl_Abcd4a,
239  dnnl_ABcd4b16a4b,
240  dnnl_ABcd4b4a,
241  dnnl_ABcd4a4b,
242  dnnl_aBCd2c4b2c,
243  dnnl_aBCd4b8c2b,
244  dnnl_aBCd4c16b4c,
245  dnnl_aBCd2c8b4c,
246  dnnl_aBCd4c4b,
247  dnnl_aBCd4b4c,
248  dnnl_ABcd8a16b2a,
249  dnnl_ABcd2b8a4b,
250  dnnl_ABcd8a8b,
253  dnnl_aBCd4c8b2c,
254  dnnl_ABcd8b16a2b,
255  dnnl_aBCd8b16c2b,
256  dnnl_BAcd8a16b2a,
259  dnnl_aBCd8b8c,
260  dnnl_aBCd8c16b2c,
261  dnnl_ABcde8a16b2a,
262  dnnl_aCBd8b16c2b,
263  dnnl_aBCd8c8b,
264  dnnl_Abcde16a,
265  dnnl_ABcde16a16b,
266  dnnl_BAcde8a16b2a,
275  dnnl_ABcde16b16a,
276  dnnl_aBCde16b16c,
277  dnnl_aBCde16c16b,
278  dnnl_aBCde2c8b4c,
279  dnnl_Abcde4a,
282  dnnl_ABcde4b4a,
283  dnnl_ABcde4a4b,
284  dnnl_aBCde4b4c,
285  dnnl_aBCde2c4b2c,
286  dnnl_aBCde4b8c2b,
287  dnnl_aBCde4c16b4c,
288  dnnl_aBCde4c4b,
289  dnnl_Abcde8a,
290  dnnl_ABcde8a8b,
291  dnnl_BAcde16b16a,
294  dnnl_ABcde8b16a2b,
295  dnnl_aBCde8b16c2b,
296  dnnl_aBCde4c8b2c,
297  dnnl_aCBde8b16c2b,
298  dnnl_ABcde8b8a,
299  dnnl_aBCde8b8c,
300  dnnl_ABcd4a8b8a4b,
301  dnnl_ABcd2a8b8a2b,
302  dnnl_aBCde4b8c8b4c,
303  dnnl_aBCde2b8c8b2c,
304  dnnl_aBCde8c16b2c,
305  dnnl_aBCde8c8b,
310  dnnl_aBCdef16b16c,
311  dnnl_aBCdef16c16b,
312  dnnl_aBCdef4c16b4c,
315  dnnl_aBCdef4c8b2c,
320  dnnl_aBCdef4c4b,
321  dnnl_aBCdef4b4c,
322  dnnl_aBCdef2c4b2c,
323  dnnl_aBCdef4b8c2b,
324  dnnl_aBCdef8b8c,
325  dnnl_aBCdef8c16b2c,
326  dnnl_aBCdef8b16c2b,
327  dnnl_aCBdef8b16c2b,
328  dnnl_aBCdef8c8b,
329  dnnl_aBdc16b,
330  dnnl_aBdC16b2c,
331  dnnl_aBdc4b,
332  dnnl_aBdc8b,
333  dnnl_aBdec16b,
334  dnnl_aBdeC16b2c,
335  dnnl_aBdec32b,
336  dnnl_aBdec4b,
337  dnnl_aBdec8b,
338  dnnl_aBdefc16b,
339  dnnl_aBdefC16b2c,
340  dnnl_aCBdef16c16b,
341  dnnl_aBdefc4b,
342  dnnl_aBdefc8b,
343  dnnl_Abcdef16a,
344  dnnl_Acb16a,
345  dnnl_AcB16a2b,
346  dnnl_Acb4a,
347  dnnl_Acb8a,
348  dnnl_aCBd16b16c,
349  dnnl_aCBd16c16b,
350  dnnl_aCBde16b16c,
351  dnnl_aCBde16c16b,
352  dnnl_Acdb16a,
353  dnnl_AcdB16a2b,
354  dnnl_Acdb32a,
355  dnnl_Acdb4a,
356  dnnl_Acdb8a,
357  dnnl_Acdeb16a,
358  dnnl_AcdeB16a2b,
359  dnnl_Acdeb4a,
360  dnnl_Acdeb8a,
361  dnnl_BAc16a16b,
362  dnnl_BAc16b16a,
363  dnnl_BAcd16a16b,
364  dnnl_BAcd16b16a,
365  dnnl_BAcde16a16b,
366  dnnl_aCBdef16b16c,
367 
371 
372  // Aliases
373 
398 
429 
446 
481 
482  // Opaque data types, are not to be used explicitly
483 
484  // data
485 
513  dnnl_NCw16n16c = dnnl_ABc16a16b,
514  dnnl_NCdhw16n16c = dnnl_ABcde16a16b,
515  dnnl_NChw16n16c = dnnl_ABcd16a16b,
516  dnnl_NChw32n32c = dnnl_ABcd32a32b,
517 
518  // weights, 3D
519  dnnl_IOw16o16i = dnnl_BAc16a16b,
520  dnnl_IOw16i16o = dnnl_BAc16b16a,
521  dnnl_OIw16i16o = dnnl_ABc16b16a,
522  dnnl_OIw16o16i = dnnl_ABc16a16b,
523  dnnl_Oiw16o = dnnl_Abc16a,
524  dnnl_OIw4i16o4i = dnnl_ABc4b16a4b,
525  dnnl_OIw2i8o4i = dnnl_ABc2b8a4b,
526  dnnl_OIw4i4o = dnnl_ABc4b4a,
527  dnnl_OIw4o4i = dnnl_ABc4a4b,
528  dnnl_Oiw4o = dnnl_Abc4a,
529  dnnl_OIw8i16o2i = dnnl_ABc8b16a2b,
530  dnnl_OIw8i8o = dnnl_ABc8b8a,
531  dnnl_OIw8o16i2o = dnnl_ABc8a16b2a,
532  dnnl_IOw8o16i2o = dnnl_BAc8a16b2a,
533  dnnl_OIw8o8i = dnnl_ABc8a8b,
534  dnnl_Owi16o = dnnl_Acb16a,
535  dnnl_OwI16o2i = dnnl_AcB16a2b,
536  dnnl_Owi4o = dnnl_Acb4a,
537  dnnl_Owi8o = dnnl_Acb8a,
538 
539  // weights, 4D
540  dnnl_IOhw16i16o = dnnl_BAcd16b16a,
541  dnnl_IOhw16o16i = dnnl_BAcd16a16b,
542  dnnl_Ohwi16o = dnnl_Acdb16a,
543  dnnl_OhwI16o2i = dnnl_AcdB16a2b,
544  dnnl_Ohwi32o = dnnl_Acdb32a,
545  dnnl_Ohwi4o = dnnl_Acdb4a,
546  dnnl_Ohwi8o = dnnl_Acdb8a,
547  dnnl_OIhw16i16o = dnnl_ABcd16b16a,
548  dnnl_OIhw16o16i = dnnl_ABcd16a16b,
549  dnnl_Oihw16o = dnnl_Abcd16a,
550  dnnl_OIhw4i16o4i = dnnl_ABcd4b16a4b,
551  dnnl_OIhw4i4o = dnnl_ABcd4b4a,
552  dnnl_OIhw4o4i = dnnl_ABcd4a4b,
553  dnnl_Oihw4o = dnnl_Abcd4a,
554  dnnl_OIhw8i16o2i = dnnl_ABcd8b16a2b,
555  dnnl_OIhw8i8o = dnnl_ABcd8b8a,
556  dnnl_OIhw8o16i2o = dnnl_ABcd8a16b2a,
557  dnnl_OIhw2i8o4i = dnnl_ABcd2b8a4b,
558  dnnl_IOhw8o16i2o = dnnl_BAcd8a16b2a,
559  dnnl_OIhw8o8i = dnnl_ABcd8a8b,
560 
561  // weights, 5D
562  dnnl_Odhwi16o = dnnl_Acdeb16a,
563  dnnl_OdhwI16o2i = dnnl_AcdeB16a2b,
564  dnnl_Odhwi4o = dnnl_Acdeb4a,
565  dnnl_Odhwi8o = dnnl_Acdeb8a,
566  dnnl_OIdhw16i16o = dnnl_ABcde16b16a,
567  dnnl_OIdhw16o16i = dnnl_ABcde16a16b,
568  dnnl_Oidhw16o = dnnl_Abcde16a,
569  dnnl_OIdhw4i4o = dnnl_ABcde4b4a,
570  dnnl_OIdhw4o4i = dnnl_ABcde4a4b,
571  dnnl_Oidhw4o = dnnl_Abcde4a,
572  dnnl_OIdhw8i16o2i = dnnl_ABcde8b16a2b,
573  dnnl_OIdhw8i8o = dnnl_ABcde8b8a,
574  dnnl_OIdhw8o16i2o = dnnl_ABcde8a16b2a,
575  dnnl_IOdhw8o16i2o = dnnl_BAcde8a16b2a,
576  dnnl_OIdhw4i16o4i = dnnl_ABcde4b16a4b,
577  dnnl_OIdhw2i8o4i = dnnl_ABcde2b8a4b,
578  dnnl_OIdhw8o8i = dnnl_ABcde8a8b,
579  dnnl_IOdhw16i16o = dnnl_BAcde16b16a,
580  dnnl_IOdhw16o16i = dnnl_BAcde16a16b,
581 
582  // weights w/ groups, 3D
583  dnnl_Goiw16g = dnnl_Abcd16a,
584  dnnl_Goiw8g = dnnl_Abcd8a,
585  dnnl_gIOw16o16i = dnnl_aCBd16b16c,
586  dnnl_gIOw16i16o = dnnl_aCBd16c16b,
587  dnnl_gOIw16i16o = dnnl_aBCd16c16b,
588  dnnl_gOIw16o16i = dnnl_aBCd16b16c,
589  dnnl_gOiw16o = dnnl_aBcd16b,
590  dnnl_gOIw4i16o4i = dnnl_aBCd4c16b4c,
591  dnnl_gOIw2i8o4i = dnnl_aBCd2c8b4c,
592  dnnl_gOIw4i4o = dnnl_aBCd4c4b,
593  dnnl_gOIw4o4i = dnnl_aBCd4b4c,
594  dnnl_gOiw4o = dnnl_aBcd4b,
595  dnnl_gOIw8i16o2i = dnnl_aBCd8c16b2c,
596  dnnl_gOIw8i8o = dnnl_aBCd8c8b,
597  dnnl_gOIw8o16i2o = dnnl_aBCd8b16c2b,
598  dnnl_gIOw8o16i2o = dnnl_aCBd8b16c2b,
599  dnnl_gOIw8o8i = dnnl_aBCd8b8c,
600  dnnl_gOwi16o = dnnl_aBdc16b,
601  dnnl_gOwI16o2i = dnnl_aBdC16b2c,
602  dnnl_gOwi4o = dnnl_aBdc4b,
603  dnnl_gOwi8o = dnnl_aBdc8b,
604  dnnl_gOIw2i4o2i = dnnl_aBCd2c4b2c,
605  dnnl_gOIw2o4i2o = dnnl_aBCd2b4c2b,
606  dnnl_gOIw4i8o2i = dnnl_aBCd4c8b2c,
607  dnnl_gOIw4o8i2o = dnnl_aBCd4b8c2b,
608 
609  // weights w/ groups, 4D
610  dnnl_gIOhw16i16o = dnnl_aCBde16c16b,
611  dnnl_gIOhw16o16i = dnnl_aCBde16b16c,
612  dnnl_gOhwi16o = dnnl_aBdec16b,
613  dnnl_gOhwI16o2i = dnnl_aBdeC16b2c,
614  dnnl_gOhwi32o = dnnl_aBdec32b,
615  dnnl_gOhwi4o = dnnl_aBdec4b,
616  dnnl_gOhwi8o = dnnl_aBdec8b,
617  dnnl_Goihw16g = dnnl_Abcde16a,
618  dnnl_gOIhw16i16o = dnnl_aBCde16c16b,
619  dnnl_gOIhw16o16i = dnnl_aBCde16b16c,
620  dnnl_gOihw16o = dnnl_aBcde16b,
621  dnnl_gOIhw2i8o4i = dnnl_aBCde2c8b4c,
622  dnnl_gOIhw4i16o4i = dnnl_aBCde4c16b4c,
623  dnnl_gOIhw4i4o = dnnl_aBCde4c4b,
624  dnnl_gOIhw4o4i = dnnl_aBCde4b4c,
625  dnnl_gOihw4o = dnnl_aBcde4b,
626  dnnl_Goihw8g = dnnl_Abcde8a,
627  dnnl_gOIhw8i16o2i = dnnl_aBCde8c16b2c,
628  dnnl_gOIhw8i8o = dnnl_aBCde8c8b,
629  dnnl_gOIhw8o16i2o = dnnl_aBCde8b16c2b,
630  dnnl_gIOhw8o16i2o = dnnl_aCBde8b16c2b,
631  dnnl_gOIhw8o8i = dnnl_aBCde8b8c,
632 
633  dnnl_OIhw4o8i8o4i = dnnl_ABcd4a8b8a4b,
634  dnnl_OIhw2o8i8o2i = dnnl_ABcd2a8b8a2b,
635  dnnl_gOIhw4o8i8o4i = dnnl_aBCde4b8c8b4c,
636  dnnl_gOIhw2o8i8o2i = dnnl_aBCde2b8c8b2c,
637  dnnl_gOIhw2i4o2i = dnnl_aBCde2c4b2c,
638  dnnl_gOIhw2o4i2o = dnnl_aBCde2b4c2b,
639  dnnl_gOIhw4i8o2i = dnnl_aBCde4c8b2c,
640  dnnl_gOIhw4o8i2o = dnnl_aBCde4b8c2b,
641 
642  // weights w/ groups, 6D
643  dnnl_gIOdhw16i16o = dnnl_aCBdef16c16b,
644  dnnl_gIOdhw16o16i = dnnl_aCBdef16b16c,
645  dnnl_gOdhwi16o = dnnl_aBdefc16b,
646  dnnl_gOdhwI16o2i = dnnl_aBdefC16b2c,
647  dnnl_gOdhwi4o = dnnl_aBdefc4b,
648  dnnl_gOdhwi8o = dnnl_aBdefc8b,
649  dnnl_gOIdhw16i16o = dnnl_aBCdef16c16b,
650  dnnl_gOIdhw4i16o4i = dnnl_aBCdef4c16b4c,
651  dnnl_gOIdhw2i8o4i = dnnl_aBCdef2c8b4c,
652  dnnl_gOIdhw16o16i = dnnl_aBCdef16b16c,
653  dnnl_gOidhw16o = dnnl_aBcdef16b,
654  dnnl_gOIdhw4i4o = dnnl_aBCdef4c4b,
655  dnnl_gOIdhw4o4i = dnnl_aBCdef4b4c,
656  dnnl_gOidhw4o = dnnl_aBcdef4b,
657  dnnl_gOIdhw8i16o2i = dnnl_aBCdef8c16b2c,
658  dnnl_gOIdhw8i8o = dnnl_aBCdef8c8b,
659  dnnl_gOIdhw8o16i2o = dnnl_aBCdef8b16c2b,
660  dnnl_gIOdhw8o16i2o = dnnl_aCBdef8b16c2b,
661  dnnl_gOIdhw8o8i = dnnl_aBCdef8b8c,
662  dnnl_Goidhw16g = dnnl_Abcdef16a,
663  dnnl_gOIdhw2i4o2i = dnnl_aBCdef2c4b2c,
664  dnnl_gOIdhw4i8o2i = dnnl_aBCdef4c8b2c,
665  dnnl_gOIdhw2o4i2o = dnnl_aBCdef2b4c2b,
666  dnnl_gOIdhw4o8i2o = dnnl_aBCdef4b8c2b,
668 
670 
675 
677 typedef enum {
678  // TODO: suggest renames
701 
704 typedef enum {
746 
748 typedef enum {
749  dnnl_alg_kind_undef,
836  dnnl_lbr_gru = 0x4fff,
838  dnnl_binary_add = 0x1fff0,
840  dnnl_binary_mul = 0x1fff1,
842  dnnl_binary_max = 0x1fff2,
844  dnnl_binary_min = 0x1fff3,
850 
852 typedef enum {
862 
875 
888 
902 
905 
908 
912 #define DNNL_MAX_NDIMS 12
913 
916 #define DNNL_RUNTIME_DIM_VAL INT64_MIN
917 
921 #define DNNL_RUNTIME_SIZE_VAL ((size_t)DNNL_RUNTIME_DIM_VAL)
922 
925 static const union {
926  unsigned u;
927  float f;
928 } DNNL_RUNTIME_F32_VAL_REP = {0x7fc000d0};
930 
933 #define DNNL_RUNTIME_F32_VAL (DNNL_RUNTIME_F32_VAL_REP.f)
934 
936 static const int DNNL_RUNTIME_S32_VAL_REP = INT32_MIN;
938 
941 #define DNNL_RUNTIME_S32_VAL DNNL_RUNTIME_S32_VAL_REP
942 
944 typedef int64_t dnnl_dim_t;
945 
948 
952 typedef struct {
956  // Innermost section
957  // ASSUMPTION: the innermost blocks are always dense
966 
968 typedef enum {
971  // Tensors of weights for 2x3 winograd convolutions.
975  // Tensor of weights for 4x3 convolution.
978 
980 typedef struct {
981  dnnl_wino_memory_format_t wino_format;
982  int r;
983  int alpha;
984  int ic;
985  int oc;
986  int ic_block;
987  int oc_block;
988  int ic2_block;
989  int oc2_block;
990  float adj_scale;
991  size_t size;
993 
994 typedef enum {
995  dnnl_packed_format_undef = 0,
996  dnnl_ldigo_p,
997  dnnl_ldgoi_p
998 } dnnl_rnn_packed_memory_format_t;
999 
1002 #define DNNL_RNN_MAX_N_PARTS 4
1003 
1005 typedef struct {
1006  dnnl_rnn_packed_memory_format_t format;
1007  int n_parts;
1008  int n;
1009  int ldb;
1010  int parts[DNNL_RNN_MAX_N_PARTS];
1011  size_t part_pack_size[DNNL_RNN_MAX_N_PARTS];
1012  unsigned pack_part[DNNL_RNN_MAX_N_PARTS];
1013  size_t offset_compensation;
1014  size_t size;
1015  char reserved[200];
1017 
1019 typedef enum {
1020  dnnl_memory_extra_flag_none = 0x0U,
1029  dnnl_memory_extra_flag_scale_adjust = 0x2U,
1030  dnnl_memory_extra_flag_gpu_rnn_u8s8_compensation = 0x4U,
1032 
1034 typedef struct {
1037  uint64_t flags;
1043  char reserved[64];
1045 
1050 typedef struct {
1052  int ndims;
1068 
1071 
1074 
1078 
1082 
1085  union {
1093  // ... other descriptions possible
1094  } format_desc;
1095 
1098 
1101 struct dnnl_memory;
1102 
1104 typedef struct dnnl_memory *dnnl_memory_t;
1105 
1107 typedef const struct dnnl_memory *const_dnnl_memory_t;
1108 
1109 #define DNNL_MEMORY_NONE (NULL)
1110 #define DNNL_MEMORY_ALLOCATE ((void *)(size_t)-1)
1111 
1113 
1118 
1120 typedef void *dnnl_op_desc_t;
1122 typedef const void *const_dnnl_op_desc_t;
1123 
1126 
1129 
1132 
1134 typedef struct {
1168  dnnl_dims_t padding[2];
1172 
1174 
1177 
1180 
1182 
1185 
1187 typedef struct {
1198  int axis;
1202 
1204 
1207 
1209 typedef struct {
1252  float alpha, beta;
1254 
1256 
1259 
1261 typedef struct {
1275 
1277 
1280 
1284 
1286 
1289 
1291 typedef struct {
1318  dnnl_dims_t padding[2];
1322 
1324 
1327 
1329 typedef struct {
1347  float lrn_alpha;
1349  float lrn_beta;
1351  float lrn_k;
1352 } dnnl_lrn_desc_t;
1353 
1355 
1358 
1360 typedef struct {
1377  dnnl_memory_desc_t diff_data_scaleshift_desc;
1384  unsigned flags;
1386 
1388 
1391 
1393 typedef struct {
1412  dnnl_memory_desc_t diff_data_scaleshift_desc;
1421  unsigned flags;
1423 
1425 
1428 
1430 typedef struct {
1457 
1459 
1462 
1464 typedef enum {
1468 
1470 typedef enum {
1484 
1486 typedef struct {
1524 
1551 
1553  unsigned int flags;
1557  float alpha;
1558  float beta;
1559 
1560 } dnnl_rnn_desc_t;
1561 
1563 
1566 
1568 typedef struct {
1577  dnnl_memory_desc_t src_desc[2];
1581 
1583 
1586 
1594 typedef struct {
1609 
1611 
1614 
1616 typedef struct {
1635  float factors[DNNL_MAX_NDIMS];
1637 
1639 
1641 
1644 
1646 typedef enum {
1654 
1657 struct dnnl_engine;
1659 typedef struct dnnl_engine *dnnl_engine_t;
1660 #if 0
1661 // FIXME: looks like this never happens
1663 typedef const struct dnnl_engine *const_dnnl_engine_t;
1664 #endif
1665 
1667 
1672 
1676 
1679 
1681 typedef const struct dnnl_primitive_desc_iterator
1683 
1686 struct dnnl_primitive_desc;
1687 
1690 
1693 
1695 
1698 
1700 typedef enum {
1724 
1730 struct dnnl_primitive_attr;
1731 
1735 
1738 
1757 struct dnnl_post_ops;
1758 
1761 
1763 typedef const struct dnnl_post_ops *const_dnnl_post_ops_t;
1764 
1766 
1769 
1772 struct dnnl_primitive;
1777 
1779 #define DNNL_ARG_SRC_0 1
1780 #define DNNL_ARG_SRC DNNL_ARG_SRC_0
1783 #define DNNL_ARG_SRC_LAYER DNNL_ARG_SRC_0
1786 #define DNNL_ARG_FROM DNNL_ARG_SRC_0
1789 
1791 #define DNNL_ARG_SRC_1 2
1792 #define DNNL_ARG_SRC_ITER DNNL_ARG_SRC_1
1795 
1797 #define DNNL_ARG_SRC_2 3
1798 #define DNNL_ARG_SRC_ITER_C DNNL_ARG_SRC_2
1801 
1803 #define DNNL_ARG_DST_0 17
1804 #define DNNL_ARG_DST DNNL_ARG_DST_0
1807 #define DNNL_ARG_TO DNNL_ARG_DST_0
1810 #define DNNL_ARG_DST_LAYER DNNL_ARG_DST_0
1812 
1814 #define DNNL_ARG_DST_1 18
1815 #define DNNL_ARG_DST_ITER DNNL_ARG_DST_1
1818 
1820 #define DNNL_ARG_DST_2 19
1821 #define DNNL_ARG_DST_ITER_C DNNL_ARG_DST_2
1824 
1826 #define DNNL_ARG_WEIGHTS_0 33
1827 #define DNNL_ARG_WEIGHTS DNNL_ARG_WEIGHTS_0
1830 #define DNNL_ARG_SCALE_SHIFT DNNL_ARG_WEIGHTS_0
1833 #define DNNL_ARG_WEIGHTS_LAYER DNNL_ARG_WEIGHTS_0
1836 
1838 #define DNNL_ARG_WEIGHTS_1 34
1839 #define DNNL_ARG_WEIGHTS_ITER DNNL_ARG_WEIGHTS_1
1842 
1844 #define DNNL_ARG_WEIGHTS_2 35
1845 #define DNNL_ARG_WEIGHTS_PEEPHOLE DNNL_ARG_WEIGHTS_2
1848 
1850 #define DNNL_ARG_WEIGHTS_3 36
1851 #define DNNL_ARG_WEIGHTS_PROJECTION DNNL_ARG_WEIGHTS_3
1854 
1856 #define DNNL_ARG_BIAS 41
1857 
1859 #define DNNL_ARG_MEAN 49
1860 #define DNNL_ARG_VARIANCE 50
1862 
1865 #define DNNL_ARG_WORKSPACE 64
1866 #define DNNL_ARG_SCRATCHPAD 80
1868 
1870 #define DNNL_ARG_DIFF_SRC_0 129
1871 #define DNNL_ARG_DIFF_SRC DNNL_ARG_DIFF_SRC_0
1874 #define DNNL_ARG_DIFF_SRC_LAYER DNNL_ARG_DIFF_SRC_0
1877 
1879 #define DNNL_ARG_DIFF_SRC_1 130
1880 #define DNNL_ARG_DIFF_SRC_ITER DNNL_ARG_DIFF_SRC_1
1883 
1885 #define DNNL_ARG_DIFF_SRC_2 131
1886 #define DNNL_ARG_DIFF_SRC_ITER_C DNNL_ARG_DIFF_SRC_2
1889 
1891 #define DNNL_ARG_DIFF_DST_0 145
1892 #define DNNL_ARG_DIFF_DST DNNL_ARG_DIFF_DST_0
1895 #define DNNL_ARG_DIFF_DST_LAYER DNNL_ARG_DIFF_DST_0
1898 
1900 #define DNNL_ARG_DIFF_DST_1 146
1901 #define DNNL_ARG_DIFF_DST_ITER DNNL_ARG_DIFF_DST_1
1904 
1906 #define DNNL_ARG_DIFF_DST_2 147
1907 #define DNNL_ARG_DIFF_DST_ITER_C DNNL_ARG_DIFF_DST_2
1910 
1912 #define DNNL_ARG_DIFF_WEIGHTS_0 161
1913 #define DNNL_ARG_DIFF_WEIGHTS DNNL_ARG_DIFF_WEIGHTS_0
1916 #define DNNL_ARG_DIFF_SCALE_SHIFT DNNL_ARG_DIFF_WEIGHTS_0
1919 #define DNNL_ARG_DIFF_WEIGHTS_LAYER DNNL_ARG_DIFF_WEIGHTS_0
1922 
1924 #define DNNL_ARG_DIFF_WEIGHTS_1 162
1925 #define DNNL_ARG_DIFF_WEIGHTS_ITER DNNL_ARG_DIFF_WEIGHTS_1
1928 
1930 #define DNNL_ARG_DIFF_WEIGHTS_2 163
1931 #define DNNL_ARG_DIFF_WEIGHTS_PEEPHOLE DNNL_ARG_DIFF_WEIGHTS_2
1934 
1936 #define DNNL_ARG_DIFF_WEIGHTS_3 164
1937 #define DNNL_ARG_DIFF_WEIGHTS_PROJECTION DNNL_ARG_DIFF_WEIGHTS_3
1940 
1942 #define DNNL_ARG_DIFF_BIAS 169
1943 
1945 #define DNNL_ARG_ATTR_OUTPUT_SCALES 513
1946 
1949 #define DNNL_ARG_MULTIPLE_SRC 1024
1950 #define DNNL_ARG_MULTIPLE_DST 2048
1953 
1955 #define DNNL_ARG_ATTR_ZERO_POINTS 4096
1956 
1959 #define DNNL_ARG_ATTR_POST_OP_DW 8192
1960 
1963 typedef struct {
1964  int arg;
1966 } dnnl_exec_arg_t;
1967 
1969 
1972 
2002 typedef enum {
2004 
2007 
2010 
2013 
2018 
2021 
2024 
2026 
2027  // memory and op descriptor section
2046 
2047  // memory descriptor section
2058 } dnnl_query_t;
2059 
2061 
2063 
2066 
2068 typedef enum {
2079 
2082 struct dnnl_stream;
2084 typedef struct dnnl_stream *dnnl_stream_t;
2086 typedef const struct dnnl_stream *const_dnnl_stream_t;
2087 
2089 struct dnnl_stream_attr;
2091 typedef struct dnnl_stream_attr *dnnl_stream_attr_t;
2093 typedef const struct dnnl_stream_attr *const_dnnl_stream_attr_t;
2094 
2096 
2099 
2101 #define DNNL_RUNTIME_NONE 0u
2102 
2104 #define DNNL_RUNTIME_SEQ 1u
2105 
2107 #define DNNL_RUNTIME_OMP 2u
2108 
2110 #define DNNL_RUNTIME_TBB 4u
2111 
2113 #define DNNL_RUNTIME_THREADPOOL 8u
2114 
2116 #define DNNL_RUNTIME_OCL 256u
2117 
2120 typedef struct {
2121  int major;
2122  int minor;
2123  int patch;
2124  const char *hash;
2125  unsigned cpu_runtime;
2126  unsigned gpu_runtime;
2127 } dnnl_version_t;
2128 
2130 #define DNNL_JIT_PROFILE_NONE 0u
2131 
2133 #define DNNL_JIT_PROFILE_VTUNE 1u
2134 
2136 #define DNNL_JIT_PROFILE_LINUX_PERFMAP 2u
2137 
2139 #define DNNL_JIT_PROFILE_LINUX_JITDUMP 4u
2140 
2143 #define DNNL_JIT_PROFILE_LINUX_JITDUMP_USE_TSC 8u
2144 
2146 #define DNNL_JIT_PROFILE_LINUX_PERF \
2147  (DNNL_JIT_PROFILE_LINUX_JITDUMP | DNNL_JIT_PROFILE_LINUX_PERFMAP)
2148 
2150 typedef enum {
2153 
2156 
2159 
2162 
2166 
2170 
2174 
2179 
2184 } dnnl_cpu_isa_t;
2185 
2187 
2189 
2190 #ifdef __cplusplus
2191 }
2192 #endif
2193 
2194 #endif
dnnl_lrn_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1335
dnnl_query_time_estimate_f64
@ dnnl_query_time_estimate_f64
runtime estimation (seconds)
Definition: dnnl_types.h:2011
dnnl_query_reorder_dst_engine
@ dnnl_query_reorder_dst_engine
destination engine
Definition: dnnl_types.h:2023
dnnl_pooling_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1294
dnnl_rnn_desc_t::bias_desc
dnnl_memory_desc_t bias_desc
Bias memory descriptor.
Definition: dnnl_types.h:1509
dnnl_aBcdef4b
@ dnnl_aBcdef4b
6D tensor blocked by 2nd dimension with block size 4
Definition: dnnl_types.h:319
dnnl_dhwigo
@ dnnl_dhwigo
6D CNN weights tensor (incl. groups), an alias to dnnl_defcab
Definition: dnnl_types.h:445
dnnl_convolution_desc_t::src_desc
dnnl_memory_desc_t src_desc
Source memory descriptor.
Definition: dnnl_types.h:1146
dnnl_scratchpad_mode_library
@ dnnl_scratchpad_mode_library
The library manages the scratchpad allocation according to the policy specified by the DNNL_ENABLE_CO...
Definition: dnnl_types.h:1717
dnnl_goidhw
@ dnnl_goidhw
6D CNN weights tensor (incl. groups), an alias to dnnl_abcdef
Definition: dnnl_types.h:441
dnnl_wino_wei_aaOIoi
@ dnnl_wino_wei_aaOIoi
Internal weights format for 2x3 Winograd.
Definition: dnnl_types.h:972
dnnl_stream_attr_t
struct dnnl_stream_attr * dnnl_stream_attr_t
An execution stream attributes handle.
Definition: dnnl_types.h:2091
dnnl_io
@ dnnl_io
2D CNN weights tensor, an alias to dnnl_ba
Definition: dnnl_types.h:402
dnnl_convolution_desc_t::strides
dnnl_dims_t strides
Convolution strides in each spatial dimension.
Definition: dnnl_types.h:1162
dnnl_nc
@ dnnl_nc
2D CNN activations tensor, an alias to dnnl_ab
Definition: dnnl_types.h:377
dnnl_eltwise_desc_t::data_desc
dnnl_memory_desc_t data_desc
Source and destination memory descriptor.
Definition: dnnl_types.h:1230
dnnl_resampling_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1619
dnnl_s32
@ dnnl_s32
32-bit signed integer.
Definition: dnnl_types.h:72
dnnl_x
@ dnnl_x
1D tensor, an alias to dnnl_a
Definition: dnnl_types.h:375
dnnl_batch_normalization_desc_t::data_desc
dnnl_memory_desc_t data_desc
Source and destination memory descriptor.
Definition: dnnl_types.h:1368
dnnl_rnn_packed_desc_t
Description of tensor of packed weights for rnn.
Definition: dnnl_types.h:1005
dnnl_eltwise_relu_use_dst_for_bwd
@ dnnl_eltwise_relu_use_dst_for_bwd
Eltwise: ReLU (dst for backward)
Definition: dnnl_types.h:800
dnnl_layer_normalization_desc_t::layer_norm_epsilon
float layer_norm_epsilon
Layer normalization epsilon parameter.
Definition: dnnl_types.h:1420
dnnl_inner_product_desc_t::diff_weights_desc
dnnl_memory_desc_t diff_weights_desc
Weights gradient memory descriptor.
Definition: dnnl_types.h:1445
dnnl_query_pooling_d
@ dnnl_query_pooling_d
pooling descriptor
Definition: dnnl_types.h:2035
dnnl_ABcde2b8a4b
@ dnnl_ABcde2b8a4b
5D tensor blocked by 1st dimension with block size 8
Definition: dnnl_types.h:272
dnnl_wino_wei_aaOio
@ dnnl_wino_wei_aaOio
Internal weights format for 2x3 Winograd.
Definition: dnnl_types.h:973
dnnl_convolution_desc_t::alg_kind
dnnl_alg_kind_t alg_kind
The kind of the convolution algorithm.
Definition: dnnl_types.h:1144
dnnl_pooling_desc_t::alg_kind
dnnl_alg_kind_t alg_kind
The kind of pooling algorithm.
Definition: dnnl_types.h:1302
dnnl_aBCde2b4c2b
@ dnnl_aBCde2b4c2b
5D tensor blocked by 3rd dimension with block size 4
Definition: dnnl_types.h:307
dnnl_query_memory_consumption_s64
@ dnnl_query_memory_consumption_s64
memory consumption – extra
Definition: dnnl_types.h:2012
dnnl_s8
@ dnnl_s8
8-bit signed integer.
Definition: dnnl_types.h:74
dnnl_format_tag_t
dnnl_format_tag_t
Memory format tag specification.
Definition: dnnl_types.h:164
dnnl_f16
@ dnnl_f16
16-bit/half-precision floating point.
Definition: dnnl_types.h:66
dnnl_inner_product
@ dnnl_inner_product
An inner product primitive.
Definition: dnnl_types.h:732
dnnl_unimplemented
@ dnnl_unimplemented
The operation failed because requested functionality is not implemented.
Definition: dnnl_types.h:47
dnnl_memory
dnnl_decab
@ dnnl_decab
permuted 5D tensor
Definition: dnnl_types.h:203
dnnl_primitive_desc_iterator
An opaque structure to describe a primitive descriptor iterator.
dnnl_batch_normalization
@ dnnl_batch_normalization
A batch normalization primitive.
Definition: dnnl_types.h:728
dnnl_query_logsoftmax_d
@ dnnl_query_logsoftmax_d
logsoftmax descriptor
Definition: dnnl_types.h:2043
dnnl_stream_t
struct dnnl_stream * dnnl_stream_t
An execution stream handle.
Definition: dnnl_types.h:2084
dnnl_pooling_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1297
dnnl_status_t
dnnl_status_t
Status values returned by the library functions.
Definition: dnnl_types.h:39
dnnl_query_reorder_src_engine
@ dnnl_query_reorder_src_engine
source engine
Definition: dnnl_types.h:2022
dnnl_wino_undef
@ dnnl_wino_undef
Undefined memory format, used for empty memory descriptors.
Definition: dnnl_types.h:970
dnnl_rnn_desc_t::direction
dnnl_rnn_direction_t direction
The direction of RNN primitive execution.
Definition: dnnl_types.h:1497
dnnl_memory_extra_flag_compensation_conv_s8s8
@ dnnl_memory_extra_flag_compensation_conv_s8s8
Indicates the weights have an additional buffer, that depends on the compensation_mask.
Definition: dnnl_types.h:1028
dnnl_softmax
@ dnnl_softmax
A softmax primitive.
Definition: dnnl_types.h:722
dnnl_normalization_flags_none
@ dnnl_normalization_flags_none
Use no normalization flags.
Definition: dnnl_types.h:861
dnnl_query_rnn_d
@ dnnl_query_rnn_d
rnn descriptor
Definition: dnnl_types.h:2040
dnnl_inner_product_desc_t::dst_desc
dnnl_memory_desc_t dst_desc
Destination memory descriptor.
Definition: dnnl_types.h:1451
dnnl_rnn_desc_t::flags
unsigned int flags
RNN cell flags.
Definition: dnnl_types.h:1553
dnnl_cn
@ dnnl_cn
2D CNN activations tensor, an alias to dnnl_ba
Definition: dnnl_types.h:379
DNNL_MAX_NDIMS
#define DNNL_MAX_NDIMS
Maximum number of dimensions a tensor can have.
Definition: dnnl_types.h:912
dnnl_ldnc
@ dnnl_ldnc
4D RNN states tensor in the format (num_layers, num_directions, batch, state channels).
Definition: dnnl_types.h:453
dnnl_scratchpad_mode_user
@ dnnl_scratchpad_mode_user
The user manages the scratchpad allocation by querying and providing the scratchpad memory to primiti...
Definition: dnnl_types.h:1722
dnnl_batch_normalization_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1366
dnnl_defcab
@ dnnl_defcab
permuted 6D tensor
Definition: dnnl_types.h:204
dnnl_aBcde16b
@ dnnl_aBcde16b
5D tensor blocked by 2nd dimension with block size 16
Definition: dnnl_types.h:274
dnnl_engine
An opaque structure to describe an engine.
dnnl_rnn_desc_t::src_iter_c_desc
dnnl_memory_desc_t src_iter_c_desc
Source iteration memory descriptor for cell state.
Definition: dnnl_types.h:1503
dnnl_batch_normalization_desc_t::stat_desc
dnnl_memory_desc_t stat_desc
Statistics memory descriptor.
Definition: dnnl_types.h:1381
dnnl_eltwise_relu
@ dnnl_eltwise_relu
Eltwise: ReLU.
Definition: dnnl_types.h:761
dnnl_acb
@ dnnl_acb
permuted 3D tensor
Definition: dnnl_types.h:188
dnnl_matmul_desc_t
A descriptor of a matrix multiplication operation.
Definition: dnnl_types.h:1594
dnnl_rnn_desc_t::diff_weights_projection_desc
dnnl_memory_desc_t diff_weights_projection_desc
Weights gradient projection memory descriptor.
Definition: dnnl_types.h:1550
dnnl_eltwise_abs
@ dnnl_eltwise_abs
Eltwise: abs.
Definition: dnnl_types.h:769
dnnl_shuffle_desc_t::group_size
dnnl_dim_t group_size
Number of groups.
Definition: dnnl_types.h:1200
dnnl_memory_extra_desc_t::scale_adjust
float scale_adjust
Scale applied to the data.
Definition: dnnl_types.h:1041
dnnl_oihw
@ dnnl_oihw
4D CNN weights tensor, an alias to dnnl_abcd
Definition: dnnl_types.h:412
dnnl_normalization_flags_t
dnnl_normalization_flags_t
Flags for normalization primitives.
Definition: dnnl_types.h:852
dnnl_eltwise_sqrt_use_dst_for_bwd
@ dnnl_eltwise_sqrt_use_dst_for_bwd
Eltwise: square root (dst for backward)
Definition: dnnl_types.h:806
dnnl_shuffle
@ dnnl_shuffle
A shuffle primitive.
Definition: dnnl_types.h:710
dnnl_query_shuffle_d
@ dnnl_query_shuffle_d
shuffle descriptor
Definition: dnnl_types.h:2032
dnnl_convolution_desc_t
A descriptor of a convolution operation.
Definition: dnnl_types.h:1134
dnnl_primitive_kind_t
dnnl_primitive_kind_t
Kinds of primitives.
Definition: dnnl_types.h:704
dnnl_rnn_flags_t
dnnl_rnn_flags_t
Flags for RNN cell.
Definition: dnnl_types.h:1464
dnnl_ldigo
@ dnnl_ldigo
5D RNN weights tensor in the format (num_layers, num_directions, input_channels, num_gates,...
Definition: dnnl_types.h:460
dnnl_pooling_max
@ dnnl_pooling_max
Max pooling.
Definition: dnnl_types.h:812
dnnl_exec_arg_t
A structure that contains an index and a memory object, and is used to pass arguments to dnnl_primiti...
Definition: dnnl_types.h:1963
dnnl_stream_flags_t
dnnl_stream_flags_t
Stream flags.
Definition: dnnl_types.h:2068
dnnl_query_t
dnnl_query_t
Primitive descriptor query specification.
Definition: dnnl_types.h:2002
dnnl_softmax_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1264
dnnl_lrn_desc_t::lrn_alpha
float lrn_alpha
LRN alpha parameter.
Definition: dnnl_types.h:1347
dnnl_bf16
@ dnnl_bf16
non-standard 16-bit (bfloat16 w/ 7 bit mantissa) floating point.
Definition: dnnl_types.h:68
dnnl_nhwc
@ dnnl_nhwc
4D CNN activations tensor, an alias to dnnl_acdb
Definition: dnnl_types.h:391
dnnl_rnn_desc_t
A descriptor for an RNN operation.
Definition: dnnl_types.h:1486
dnnl_rnn_direction_t
dnnl_rnn_direction_t
A direction of RNN primitive execution.
Definition: dnnl_types.h:1470
dnnl_bcdea
@ dnnl_bcdea
permuted 5D tensor
Definition: dnnl_types.h:198
dnnl_convolution_desc_t::diff_src_desc
dnnl_memory_desc_t diff_src_desc
Source gradient memory descriptor.
Definition: dnnl_types.h:1148
dnnl_convolution_desc_t::weights_desc
dnnl_memory_desc_t weights_desc
Weights memory descriptor.
Definition: dnnl_types.h:1150
dnnl_convolution_desc_t::dst_desc
dnnl_memory_desc_t dst_desc
Destination memory descriptor.
Definition: dnnl_types.h:1158
dnnl_sum
@ dnnl_sum
A sum primitive.
Definition: dnnl_types.h:714
dnnl_oidhw
@ dnnl_oidhw
5D CNN weights tensor, an alias to dnnl_abcde
Definition: dnnl_types.h:422
dnnl_memory_desc_t::blocking
dnnl_blocking_desc_t blocking
Description of the data layout for memory formats that use blocking.
Definition: dnnl_types.h:1088
dnnl_backward_weights
@ dnnl_backward_weights
Backward weights propagation.
Definition: dnnl_types.h:697
dnnl_a
@ dnnl_a
plain 1D tensor
Definition: dnnl_types.h:177
const_dnnl_stream_t
const struct dnnl_stream * const_dnnl_stream_t
A constant execution stream handle.
Definition: dnnl_types.h:2086
dnnl_inner_product_desc_t
A descriptor of an inner product operation.
Definition: dnnl_types.h:1430
dnnl_matmul_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1597
dnnl_gpu
@ dnnl_gpu
GPU engine.
Definition: dnnl_types.h:1652
dnnl_layer_normalization_desc_t::data_desc
dnnl_memory_desc_t data_desc
Source and destination memory descriptor.
Definition: dnnl_types.h:1401
dnnl_inner_product_desc_t::bias_desc
dnnl_memory_desc_t bias_desc
Bias memory descriptor.
Definition: dnnl_types.h:1447
dnnl_rnn_desc_t::weights_projection_desc
dnnl_memory_desc_t weights_projection_desc
Weights projection memory descriptor.
Definition: dnnl_types.h:1523
dnnl_softmax_desc_t::softmax_axis
int softmax_axis
The axis along which to perform the softmax.
Definition: dnnl_types.h:1273
dnnl_query_diff_weights_md
@ dnnl_query_diff_weights_md
weights grad. memory desc
Definition: dnnl_types.h:2052
dnnl_query_prop_kind
@ dnnl_query_prop_kind
propagation kind
Definition: dnnl_types.h:2025
dnnl_eltwise_logistic
@ dnnl_eltwise_logistic
Eltwise: logistic.
Definition: dnnl_types.h:779
dnnl_eltwise
@ dnnl_eltwise
An element-wise primitive.
Definition: dnnl_types.h:720
dnnl_stream_in_order
@ dnnl_stream_in_order
In-order execution.
Definition: dnnl_types.h:2073
dnnl_aBc16b
@ dnnl_aBc16b
3D tensor blocked by 2nd dimension with block size 16
Definition: dnnl_types.h:212
dnnl_layer_normalization_desc_t::diff_data_desc
dnnl_memory_desc_t diff_data_desc
Source and destination gradient memory descriptor.
Definition: dnnl_types.h:1403
dnnl_oiw
@ dnnl_oiw
3D CNN weights tensor, an alias to dnnl_abc
Definition: dnnl_types.h:404
dnnl_convolution_auto
@ dnnl_convolution_auto
Convolution algorithm(either direct or Winograd) is chosen just in time.
Definition: dnnl_types.h:755
dnnl_eltwise_sqrt
@ dnnl_eltwise_sqrt
Eltwise: square root.
Definition: dnnl_types.h:771
dnnl_cdba
@ dnnl_cdba
permuted 4D tensor
Definition: dnnl_types.h:200
dnnl_cpu_isa_avx512_core
@ dnnl_cpu_isa_avx512_core
Intel AVX-512 subset for Intel Xeon Scalable processor family and Intel Core processor family.
Definition: dnnl_types.h:2173
dnnl_eltwise_bounded_relu
@ dnnl_eltwise_bounded_relu
Eltwise: bounded_relu.
Definition: dnnl_types.h:775
dnnl_rnn_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1489
dnnl_hwio
@ dnnl_hwio
4D CNN weights tensor, an alias to dnnl_cdba
Definition: dnnl_types.h:414
dnnl_forward_inference
@ dnnl_forward_inference
Forward data propagation (inference mode).
Definition: dnnl_types.h:687
dnnl_query_impl_info_str
@ dnnl_query_impl_info_str
for creating scratchpad memory
Definition: dnnl_types.h:2020
dnnl_query_dst_md
@ dnnl_query_dst_md
destination memory desc
Definition: dnnl_types.h:2053
dnnl_query_resampling_d
@ dnnl_query_resampling_d
resampling descriptor
Definition: dnnl_types.h:2045
dnnl_query_inner_product_d
@ dnnl_query_inner_product_d
inner product descriptor
Definition: dnnl_types.h:2039
dnnl_rnn_flags_undef
@ dnnl_rnn_flags_undef
Undefined RNN flags.
Definition: dnnl_types.h:1466
dnnl_nCdhw16c
@ dnnl_nCdhw16c
5D CNN activations tensor blocked by channels with block size 16, an alias to dnnl_aBcde16b
Definition: dnnl_types.h:488
dnnl_query_convolution_d
@ dnnl_query_convolution_d
convolution descriptor
Definition: dnnl_types.h:2030
dnnl_aBCdef2c8b4c
@ dnnl_aBCdef2c8b4c
6D tensor blocked by 2nd dimension with block size 8
Definition: dnnl_types.h:314
dnnl_bcda
@ dnnl_bcda
permuted 4D tensor
Definition: dnnl_types.h:197
dnnl_version_t::major
int major
Major version.
Definition: dnnl_types.h:2121
dnnl_eltwise_gelu_tanh
@ dnnl_eltwise_gelu_tanh
Eltwise: gelu.
Definition: dnnl_types.h:786
dnnl_bidirectional_concat
@ dnnl_bidirectional_concat
Bidirectional execution of RNN primitive with concatenation of the results.
Definition: dnnl_types.h:1477
dnnl_pooling_desc_t
A descriptor of a pooling operation.
Definition: dnnl_types.h:1291
dnnl_ba
@ dnnl_ba
permuted 2D tensor
Definition: dnnl_types.h:193
dnnl_data_type_t
dnnl_data_type_t
Data type specification.
Definition: dnnl_types.h:62
dnnl_pooling_desc_t::src_desc
dnnl_memory_desc_t src_desc
Source memory descriptor.
Definition: dnnl_types.h:1304
dnnl_lrn_within_channel
@ dnnl_lrn_within_channel
LRN within a single channel.
Definition: dnnl_types.h:822
dnnl_engine_t
struct dnnl_engine * dnnl_engine_t
An engine handle.
Definition: dnnl_types.h:1659
dnnl_layer_normalization_desc_t::data_scaleshift_desc
dnnl_memory_desc_t data_scaleshift_desc
Scale and shift data and gradient memory descriptors.
Definition: dnnl_types.h:1411
dnnl_binary_mul
@ dnnl_binary_mul
Binary mul.
Definition: dnnl_types.h:840
dnnl_ihwo
@ dnnl_ihwo
4D CNN weights tensor, an alias to dnnl_bcda
Definition: dnnl_types.h:418
dnnl_rnn_desc_t::src_layer_desc
dnnl_memory_desc_t src_layer_desc
Source layer memory descriptor.
Definition: dnnl_types.h:1499
dnnl_format_tag_undef
@ dnnl_format_tag_undef
Undefined memory format tag.
Definition: dnnl_types.h:166
dnnl_binary_min
@ dnnl_binary_min
Binary min.
Definition: dnnl_types.h:844
dnnl_rnn_desc_t::diff_weights_peephole_desc
dnnl_memory_desc_t diff_weights_peephole_desc
Weights gradient peephole memory descriptor.
Definition: dnnl_types.h:1546
dnnl_format_kind_rnn_packed
@ dnnl_format_kind_rnn_packed
Packed weights format used in RNN.
Definition: dnnl_types.h:93
dnnl_goiw
@ dnnl_goiw
4D CNN weights tensor (incl. groups), an alias to dnnl_abcd
Definition: dnnl_types.h:431
const_dnnl_primitive_desc_iterator_t
const struct dnnl_primitive_desc_iterator * const_dnnl_primitive_desc_iterator_t
A constant primitive descriptor iterator handle.
Definition: dnnl_types.h:1681
dnnl_use_scaleshift
@ dnnl_use_scaleshift
Use scale and shift parameters.
Definition: dnnl_types.h:887
dnnl_eltwise_log
@ dnnl_eltwise_log
Eltwise: natural logarithm.
Definition: dnnl_types.h:792
dnnl_query_layer_normalization_d
@ dnnl_query_layer_normalization_d
layer normalization descriptor
Definition: dnnl_types.h:2038
dnnl_ldoi
@ dnnl_ldoi
4D LSTM projection tensor in the format (num_layers, num_directions, num_channels_in_recurrent_projec...
Definition: dnnl_types.h:473
dnnl_version_t::minor
int minor
Minor version.
Definition: dnnl_types.h:2122
dnnl_layer_normalization_desc_t::stat_desc
dnnl_memory_desc_t stat_desc
Mean and variance data memory descriptors.
Definition: dnnl_types.h:1418
dnnl_ABcd8b8a
@ dnnl_ABcd8b8a
4D tensor blocked by 1st and 2nd dimension with block size 8
Definition: dnnl_types.h:258
dnnl_resampling_linear
@ dnnl_resampling_linear
Linear Resampling Method.
Definition: dnnl_types.h:848
dnnl_blocking_desc_t::inner_blks
dnnl_dims_t inner_blks
The size of the blocks, e.g. {4, 16, 4} in case of OIhw_4i16o4i
Definition: dnnl_types.h:961
dnnl_rnn_desc_t::diff_dst_iter_desc
dnnl_memory_desc_t diff_dst_iter_desc
Destination gradient iteration memory descriptor for hidden state.
Definition: dnnl_types.h:1540
dnnl_dhwio
@ dnnl_dhwio
5D CNN weights tensor, an alias to dnnl_cdeba
Definition: dnnl_types.h:424
dnnl_forward_training
@ dnnl_forward_training
Forward data propagation (training mode).
Definition: dnnl_types.h:683
dnnl_eltwise_square
@ dnnl_eltwise_square
Eltwise: square.
Definition: dnnl_types.h:767
dnnl_bac
@ dnnl_bac
permuted 3D tensor
Definition: dnnl_types.h:194
dnnl_fuse_norm_relu
@ dnnl_fuse_norm_relu
Fuse with ReLU.
Definition: dnnl_types.h:900
dnnl_cpu_isa_avx512_mic_4ops
@ dnnl_cpu_isa_avx512_mic_4ops
Intel AVX-512 subset for Intel Xeon Phi processors 7235, 7285, 7295 Series.
Definition: dnnl_types.h:2169
dnnl_tn
@ dnnl_tn
2D RNN statistics tensor, an alias to dnnl_ab
Definition: dnnl_types.h:381
const_dnnl_primitive_desc_t
const struct dnnl_primitive_desc * const_dnnl_primitive_desc_t
A constant primitive descriptor handle.
Definition: dnnl_types.h:1692
dnnl_rnn_desc_t::weights_layer_desc
dnnl_memory_desc_t weights_layer_desc
Weights layer memory descriptor.
Definition: dnnl_types.h:1505
dnnl_rnn_desc_t::weights_peephole_desc
dnnl_memory_desc_t weights_peephole_desc
Weights peephole memory descriptor.
Definition: dnnl_types.h:1519
dnnl_format_kind_wino
@ dnnl_format_kind_wino
Weights format used in 8bit Winograd convolution.
Definition: dnnl_types.h:91
const_dnnl_post_ops_t
const struct dnnl_post_ops * const_dnnl_post_ops_t
A constant post operation chain handle.
Definition: dnnl_types.h:1763
dnnl_blocking_desc_t::strides
dnnl_dims_t strides
The strides between the outermost blocks.
Definition: dnnl_types.h:955
dnnl_convolution_winograd
@ dnnl_convolution_winograd
Winograd convolution.
Definition: dnnl_types.h:753
dnnl_ABcde4b16a4b
@ dnnl_ABcde4b16a4b
5D tensor blocked by 1st dimension with block size 16
Definition: dnnl_types.h:270
dnnl_nChw8c
@ dnnl_nChw8c
4D CNN activations tensor blocked by channels with block size 8, an alias to dnnl_aBcd8b
Definition: dnnl_types.h:503
dnnl_engine_kind_t
dnnl_engine_kind_t
Kinds of engines.
Definition: dnnl_types.h:1646
dnnl_binary
@ dnnl_binary
A binary primitive.
Definition: dnnl_types.h:738
dnnl_cdeba
@ dnnl_cdeba
permuted 5D tensor
Definition: dnnl_types.h:202
dnnl_exec_arg_t::memory
dnnl_memory_t memory
Input/output memory.
Definition: dnnl_types.h:1965
dnnl_eltwise_tanh
@ dnnl_eltwise_tanh
Eltwise: hyperbolic tangent non-linearity (tanh)
Definition: dnnl_types.h:763
dnnl_convolution_desc_t::diff_weights_desc
dnnl_memory_desc_t diff_weights_desc
Weights gradient memory descriptor.
Definition: dnnl_types.h:1152
dnnl_aBc4b
@ dnnl_aBc4b
3D tensor blocked by 2nd dimension with block size 4
Definition: dnnl_types.h:216
dnnl_abcde
@ dnnl_abcde
plain 5D tensor
Definition: dnnl_types.h:181
dnnl_nCw8c
@ dnnl_nCw8c
3D CNN activations tensor blocked by channels with block size 8, an alias to dnnl_aBc8b
Definition: dnnl_types.h:512
dnnl_post_ops_t
struct dnnl_post_ops * dnnl_post_ops_t
A post operation chain handle.
Definition: dnnl_types.h:1760
dnnl_query_gemm_d
@ dnnl_query_gemm_d
GEMM descriptor (internal)
Definition: dnnl_types.h:2041
dnnl_memory_desc_t::dims
dnnl_dims_t dims
Dimensions in the following order:
Definition: dnnl_types.h:1067
dnnl_stream_default_order
@ dnnl_stream_default_order
Default order execution.
Definition: dnnl_types.h:2071
dnnl_pooling
@ dnnl_pooling
A pooling primitive.
Definition: dnnl_types.h:724
dnnl_acdb
@ dnnl_acdb
permuted 4D tensor
Definition: dnnl_types.h:191
dnnl_query_lrn_d
@ dnnl_query_lrn_d
lrn descriptor
Definition: dnnl_types.h:2036
dnnl_backward
@ dnnl_backward
Backward propagation (with respect to all parameters).
Definition: dnnl_types.h:693
dnnl_giohw
@ dnnl_giohw
5D CNN weights tensor (incl. groups), an alias to dnnl_acbde
Definition: dnnl_types.h:439
dnnl_softmax_desc_t
A descriptor of a Softmax operation.
Definition: dnnl_types.h:1261
dnnl_convolution_desc_t::dilates
dnnl_dims_t dilates
Convolution dilates in each spatial dimension.
Definition: dnnl_types.h:1164
dnnl_cpu_isa_avx512_core_bf16
@ dnnl_cpu_isa_avx512_core_bf16
Intel AVX-512, Intel DL Boost and bfloat16 support for Intel Xeon Scalable processor family and Intel...
Definition: dnnl_types.h:2183
dnnl_iterator_ends
@ dnnl_iterator_ends
Primitive iterator passed over last primitive descriptor.
Definition: dnnl_types.h:49
dnnl_resampling_desc_t::dst_desc
dnnl_memory_desc_t dst_desc
Destination memory descriptor.
Definition: dnnl_types.h:1631
dnnl_blocking_desc_t::inner_nblks
int inner_nblks
The number of innermost blocks, e.g. 3 in case of OIhw_4i16o4i_
Definition: dnnl_types.h:959
dnnl_primitive_desc
An opaque structure to describe a primitive descriptor.
dnnl_nCdhw8c
@ dnnl_nCdhw8c
5D CNN activations tensor blocked by channels with block size 8, an alias to dnnl_aBcde8b
Definition: dnnl_types.h:494
dnnl_pooling_avg
@ dnnl_pooling_avg
Average pooling (alias for dnnl_pooling_avg_exclude_padding)
Definition: dnnl_types.h:818
dnnl_vanilla_rnn
@ dnnl_vanilla_rnn
RNN cell.
Definition: dnnl_types.h:824
dnnl_unidirectional
@ dnnl_unidirectional
Alias for dnnl_unidirectional_left2right.
Definition: dnnl_types.h:1482
dnnl_abdc
@ dnnl_abdc
permuted 4D tensor
Definition: dnnl_types.h:186
dnnl_eltwise_pow
@ dnnl_eltwise_pow
Eltwise: pow.
Definition: dnnl_types.h:796
dnnl_ldio
@ dnnl_ldio
4D LSTM projection tensor in the format (num_layers, num_directions, num_channels_in_hidden_state,...
Definition: dnnl_types.h:470
dnnl_aBcd4b
@ dnnl_aBcd4b
4D tensor blocked by 2nd dimension with block size 4
Definition: dnnl_types.h:238
dnnl_query_matmul_d
@ dnnl_query_matmul_d
matrix multiplication (matmul) descriptor
Definition: dnnl_types.h:2044
dnnl_primitive_desc_t
struct dnnl_primitive_desc * dnnl_primitive_desc_t
A primitive descriptor handle.
Definition: dnnl_types.h:1689
dnnl_version_t::hash
const char * hash
Git hash of the sources (may be absent)
Definition: dnnl_types.h:2124
dnnl_query_binary_d
@ dnnl_query_binary_d
binary descriptor
Definition: dnnl_types.h:2042
dnnl_lbr_gru
@ dnnl_lbr_gru
GRU cell with linear before reset.
Definition: dnnl_types.h:836
dnnl_forward
@ dnnl_forward
Forward data propagation (alias for dnnl_forward_training).
Definition: dnnl_types.h:691
dnnl_f32
@ dnnl_f32
32-bit/single-precision floating point.
Definition: dnnl_types.h:70
dnnl_acbdef
@ dnnl_acbdef
permuted 6D tensor
Definition: dnnl_types.h:190
dnnl_iwo
@ dnnl_iwo
3D CNN weights tensor, an alias to dnnl_bca
Definition: dnnl_types.h:410
dnnl_use_global_stats
@ dnnl_use_global_stats
Use global statistics.
Definition: dnnl_types.h:874
dnnl_lrn_across_channels
@ dnnl_lrn_across_channels
Local response normalization (LRN) across multiple channels.
Definition: dnnl_types.h:820
dnnl_concat
@ dnnl_concat
A (out-of-place) concat primitive.
Definition: dnnl_types.h:712
dnnl_ntc
@ dnnl_ntc
3D RNN data tensor in the format (batch, seq_length, input channels).
Definition: dnnl_types.h:450
dnnl_query_diff_dst_md
@ dnnl_query_diff_dst_md
destination grad. memory desc
Definition: dnnl_types.h:2054
dnnl_matmul_desc_t::dst_desc
dnnl_memory_desc_t dst_desc
Destination memory descriptor.
Definition: dnnl_types.h:1605
dnnl_format_kind_undef
@ dnnl_format_kind_undef
Undefined memory format kind, used for empty memory descriptors.
Definition: dnnl_types.h:82
dnnl_layer_normalization_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1396
dnnl_version_t::cpu_runtime
unsigned cpu_runtime
CPU runtime.
Definition: dnnl_types.h:2125
dnnl_lrn_desc_t::diff_data_desc
dnnl_memory_desc_t diff_data_desc
Source and destination gradient memory descriptor.
Definition: dnnl_types.h:1342
dnnl_aBcdef16b
@ dnnl_aBcdef16b
6D tensor blocked by 2nd dimension with block size 16
Definition: dnnl_types.h:309
dnnl_layer_normalization
@ dnnl_layer_normalization
A layer normalization primitive.
Definition: dnnl_types.h:730
dnnl_memory_desc_t::data_type
dnnl_data_type_t data_type
Data type of the tensor elements.
Definition: dnnl_types.h:1070
dnnl_convolution_desc_t::diff_dst_desc
dnnl_memory_desc_t diff_dst_desc
Destination gradient memory descriptor.
Definition: dnnl_types.h:1160
dnnl_matmul_desc_t::accum_data_type
dnnl_data_type_t accum_data_type
The accumulator data type. Initialized automatically.
Definition: dnnl_types.h:1607
dnnl_primitive
dnnl_eltwise_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1215
dnnl_pooling_desc_t::dst_desc
dnnl_memory_desc_t dst_desc
Destination memory descriptor.
Definition: dnnl_types.h:1308
dnnl_cpu_isa_all
@ dnnl_cpu_isa_all
Any ISA (no restrictions)
Definition: dnnl_types.h:2152
dnnl_rnn_desc_t::diff_weights_layer_desc
dnnl_memory_desc_t diff_weights_layer_desc
Weights gradient layer memory descriptor.
Definition: dnnl_types.h:1532
dnnl_query_op_d
@ dnnl_query_op_d
op descriptor
Definition: dnnl_types.h:2029
dnnl_primitive_desc_iterator_t
struct dnnl_primitive_desc_iterator * dnnl_primitive_desc_iterator_t
A primitive descriptor iterator handle.
Definition: dnnl_types.h:1678
dnnl_out_of_memory
@ dnnl_out_of_memory
The operation failed due to an out-of-memory condition.
Definition: dnnl_types.h:43
dnnl_dim_t
int64_t dnnl_dim_t
A type to describe tensor dimension.
Definition: dnnl_types.h:944
dnnl_shuffle_desc_t::axis
int axis
Axis for shuffling.
Definition: dnnl_types.h:1198
dnnl_softmax_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1267
dnnl_lrn_desc_t::lrn_beta
float lrn_beta
LRN beta parameter.
Definition: dnnl_types.h:1349
dnnl_idhwo
@ dnnl_idhwo
5D CNN weights tensor, an alias to dnnl_bcdea
Definition: dnnl_types.h:428
dnnl_abcd
@ dnnl_abcd
plain 4D tensor
Definition: dnnl_types.h:180
dnnl_u8
@ dnnl_u8
8-bit unsigned integer.
Definition: dnnl_types.h:76
dnnl_ncdhw
@ dnnl_ncdhw
5D CNN activations tensor, an alias to dnnl_abcde
Definition: dnnl_types.h:395
dnnl_query_workspace_md
@ dnnl_query_workspace_md
workspace memory desc
Definition: dnnl_types.h:2055
dnnl_format_tag_last
@ dnnl_format_tag_last
Just a sentinel, not real memory format tag.
Definition: dnnl_types.h:370
dnnl_query_deconvolution_d
@ dnnl_query_deconvolution_d
deconvolution descriptor
Definition: dnnl_types.h:2031
dnnl_memory_t
struct dnnl_memory * dnnl_memory_t
A memory handle.
Definition: dnnl_types.h:1104
dnnl_logsoftmax
@ dnnl_logsoftmax
A logsoftmax primitive.
Definition: dnnl_types.h:740
dnnl_format_tag_any
@ dnnl_format_tag_any
Undefined memory format tag.
Definition: dnnl_types.h:169
dnnl_deconvolution_direct
@ dnnl_deconvolution_direct
Direct deconvolution.
Definition: dnnl_types.h:757
dnnl_reorder
@ dnnl_reorder
A reorder primitive.
Definition: dnnl_types.h:708
dnnl_lrn_desc_t
A descriptor of a Local Response Normalization (LRN) operation.
Definition: dnnl_types.h:1329
dnnl_stream_default_flags
@ dnnl_stream_default_flags
Default stream configuration.
Definition: dnnl_types.h:2077
dnnl_shuffle_desc_t
A descriptor of a shuffle operation.
Definition: dnnl_types.h:1187
dnnl_owi
@ dnnl_owi
3D CNN weights tensor, an alias to dnnl_acb
Definition: dnnl_types.h:406
dnnl_rnn_desc_t::activation_kind
dnnl_alg_kind_t activation_kind
Activation function used for vanilla_rnn cell kind.
Definition: dnnl_types.h:1556
dnnl_backward_data
@ dnnl_backward_data
Backward data propagation.
Definition: dnnl_types.h:695
dnnl_acdeb
@ dnnl_acdeb
permuted 5D tensor
Definition: dnnl_types.h:192
dnnl_version_t
Structure containing version information as per Semantic Versioning
Definition: dnnl_types.h:2120
dnnl_batch_normalization_desc_t
A descriptor of a Batch Normalization operation.
Definition: dnnl_types.h:1360
dnnl_exec_arg_t::arg
int arg
An argument index, e.g. DNNL_ARG_SRC.
Definition: dnnl_types.h:1964
dnnl_eltwise_exp_use_dst_for_bwd
@ dnnl_eltwise_exp_use_dst_for_bwd
Eltwise: exp (dst for backward)
Definition: dnnl_types.h:810
dnnl_rnn_desc_t::weights_iter_desc
dnnl_memory_desc_t weights_iter_desc
Weights iteration memory descriptor.
Definition: dnnl_types.h:1507
dnnl_memory_desc_t::format_kind
dnnl_format_kind_t format_kind
Memory format kind.
Definition: dnnl_types.h:1084
dnnl_ldgo
@ dnnl_ldgo
4D RNN bias tensor in the format (num_layers, num_directions, num_gates, output_channels).
Definition: dnnl_types.h:480
dnnl_dims_t
dnnl_dim_t dnnl_dims_t[DNNL_MAX_NDIMS]
A type to describe tensor dimensions.
Definition: dnnl_types.h:947
dnnl_eltwise_desc_t::alg_kind
dnnl_alg_kind_t alg_kind
The kind of eltwise algorithm.
Definition: dnnl_types.h:1228
dnnl_rnn_desc_t::diff_dst_iter_c_desc
dnnl_memory_desc_t diff_dst_iter_c_desc
Destination gradient iteration memory descriptor for cell state.
Definition: dnnl_types.h:1542
dnnl_eltwise_desc_t
A descriptor of a element-wise operation.
Definition: dnnl_types.h:1209
dnnl_rnn_desc_t::diff_src_iter_c_desc
dnnl_memory_desc_t diff_src_iter_c_desc
Source gradient iter memory descriptor for cell state.
Definition: dnnl_types.h:1530
dnnl_aBcd16b
@ dnnl_aBcd16b
4D tensor blocked by 2nd dimension with block size 16
Definition: dnnl_types.h:232
dnnl_resampling_nearest
@ dnnl_resampling_nearest
Nearest Neighbor Resampling Method.
Definition: dnnl_types.h:846
dnnl_rnn
@ dnnl_rnn
A rnn primitive.
Definition: dnnl_types.h:734
dnnl_rnn_desc_t::diff_bias_desc
dnnl_memory_desc_t diff_bias_desc
Bias gradient memory descriptor.
Definition: dnnl_types.h:1536
dnnl_query_num_of_outputs_s32
@ dnnl_query_num_of_outputs_s32
number of outputs expected
Definition: dnnl_types.h:2009
dnnl_cpu_isa_sse41
@ dnnl_cpu_isa_sse41
Intel Streaming SIMD Extensions 4.1 (Intel SSE4.1)
Definition: dnnl_types.h:2155
dnnl_format_kind_t
dnnl_format_kind_t
Memory format kind.
Definition: dnnl_types.h:80
dnnl_aBCd2b4c2b
@ dnnl_aBCd2b4c2b
4D tensor blocked by 3rd dimension with block size 4
Definition: dnnl_types.h:268
dnnl_blocking_desc_t
Generic description of blocked data layout for most memory formats.
Definition: dnnl_types.h:952
dnnl_softmax_desc_t::data_desc
dnnl_memory_desc_t data_desc
Source and destination memory descriptor.
Definition: dnnl_types.h:1269
const_dnnl_primitive_t
const struct dnnl_primitive * const_dnnl_primitive_t
A constant primitive handle.
Definition: dnnl_types.h:1776
dnnl_abdec
@ dnnl_abdec
permuted 5D tensor
Definition: dnnl_types.h:187
dnnl_pooling_desc_t::accum_data_type
dnnl_data_type_t accum_data_type
The accumulator data type. Initialized automatically.
Definition: dnnl_types.h:1320
dnnl_cpu_isa_avx2
@ dnnl_cpu_isa_avx2
Intel Advanced Vector Extensions 2 (Intel AVX2)
Definition: dnnl_types.h:2161
dnnl_cpu_isa_avx512_core_vnni
@ dnnl_cpu_isa_avx512_core_vnni
Intel AVX-512 and Intel Deep Learning Boost (Intel DL Boost) support for Intel Xeon Scalable processo...
Definition: dnnl_types.h:2178
dnnl_memory_desc_t::ndims
int ndims
Number of dimensions.
Definition: dnnl_types.h:1052
dnnl_aBc8b
@ dnnl_aBc8b
3D tensor blocked by 2nd dimension with block size 8
Definition: dnnl_types.h:223
dnnl_layer_normalization_desc_t
A descriptor of a Layer Normalization operation.
Definition: dnnl_types.h:1393
dnnl_matmul_desc_t::bias_desc
dnnl_memory_desc_t bias_desc
Bias memory descriptor.
Definition: dnnl_types.h:1603
dnnl_convolution_desc_t::diff_bias_desc
dnnl_memory_desc_t diff_bias_desc
Bias gradient memory descriptor.
Definition: dnnl_types.h:1156
dnnl_not_required
@ dnnl_not_required
Queried element is not required for given primitive.
Definition: dnnl_types.h:53
dnnl_eltwise_clip
@ dnnl_eltwise_clip
Eltwise: clip.
Definition: dnnl_types.h:794
dnnl_inner_product_desc_t::src_desc
dnnl_memory_desc_t src_desc
Source memory descriptor.
Definition: dnnl_types.h:1439
dnnl_eltwise_logistic_use_dst_for_bwd
@ dnnl_eltwise_logistic_use_dst_for_bwd
Eltwise: logistic (dst for backward)
Definition: dnnl_types.h:808
dnnl_wino_desc_t
Description of tensor of weights for winograd 2x3 convolution.
Definition: dnnl_types.h:980
dnnl_batch_normalization_desc_t::diff_data_desc
dnnl_memory_desc_t diff_data_desc
Source and destination gradient memory descriptor.
Definition: dnnl_types.h:1370
dnnl_rnn_desc_t::src_iter_desc
dnnl_memory_desc_t src_iter_desc
Source iteration memory descriptor for hidden state.
Definition: dnnl_types.h:1501
dnnl_pooling_avg_include_padding
@ dnnl_pooling_avg_include_padding
Average pooling include padding.
Definition: dnnl_types.h:814
dnnl_hwigo
@ dnnl_hwigo
5D CNN weights tensor (incl. groups), an alias to dnnl_decab
Definition: dnnl_types.h:437
dnnl_rnn_desc_t::diff_src_iter_desc
dnnl_memory_desc_t diff_src_iter_desc
Source gradient iter memory descriptor for hidden state.
Definition: dnnl_types.h:1528
dnnl_inner_product_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1437
dnnl_deconvolution
@ dnnl_deconvolution
A deconvolution primitive.
Definition: dnnl_types.h:718
dnnl_aBcde4b
@ dnnl_aBcde4b
5D tensor blocked by 2nd dimension with block size 4
Definition: dnnl_types.h:281
dnnl_batch_normalization_desc_t::data_scaleshift_desc
dnnl_memory_desc_t data_scaleshift_desc
Scale and shift data and gradient memory descriptors.
Definition: dnnl_types.h:1376
dnnl_stream_out_of_order
@ dnnl_stream_out_of_order
Out-of-order execution.
Definition: dnnl_types.h:2075
dnnl_gemm
@ dnnl_gemm
A matrix multiplication primitive (internal).
Definition: dnnl_types.h:736
dnnl_convolution
@ dnnl_convolution
A convolution primitive.
Definition: dnnl_types.h:716
dnnl_primitive_t
struct dnnl_primitive * dnnl_primitive_t
A primitive handle.
Definition: dnnl_types.h:1774
dnnl_lrn_desc_t::data_desc
dnnl_memory_desc_t data_desc
Source and destination memory descriptor.
Definition: dnnl_types.h:1340
const_dnnl_primitive_attr_t
const struct dnnl_primitive_attr * const_dnnl_primitive_attr_t
A constant primitive descriptor attributes handle.
Definition: dnnl_types.h:1737
dnnl_primitive_attr
An opaque structure for primitive descriptor attributes.
dnnl_rnn_desc_t::dst_layer_desc
dnnl_memory_desc_t dst_layer_desc
Destination layer memory descriptor.
Definition: dnnl_types.h:1511
dnnl_inner_product_desc_t::accum_data_type
dnnl_data_type_t accum_data_type
The accumulator data type. Initialized automatically.
Definition: dnnl_types.h:1455
dnnl_lrn
@ dnnl_lrn
An LRN primitive.
Definition: dnnl_types.h:726
dnnl_query_src_md
@ dnnl_query_src_md
source memory desc
Definition: dnnl_types.h:2049
dnnl_logsoftmax_desc_t
dnnl_softmax_desc_t dnnl_logsoftmax_desc_t
A descriptor of a LogSoftmax operation.
Definition: dnnl_types.h:1283
DNNL_RNN_MAX_N_PARTS
#define DNNL_RNN_MAX_N_PARTS
Maximum number of parts of RNN weights tensor that require separate computation.
Definition: dnnl_types.h:1002
dnnl_scratchpad_mode_t
dnnl_scratchpad_mode_t
Scratchpad mode.
Definition: dnnl_types.h:1700
dnnl_memory_desc_t::wino_desc
dnnl_wino_desc_t wino_desc
Tensor of weights for integer 8bit winograd convolution.
Definition: dnnl_types.h:1090
dnnl_data_type_undef
@ dnnl_data_type_undef
Undefined data type, used for empty memory descriptors.
Definition: dnnl_types.h:64
dnnl_query_engine
@ dnnl_query_engine
execution engine
Definition: dnnl_types.h:2005
dnnl_wino_memory_format_t
dnnl_wino_memory_format_t
Winograd-specific formats.
Definition: dnnl_types.h:968
dnnl_query_softmax_d
@ dnnl_query_softmax_d
softmax descriptor
Definition: dnnl_types.h:2034
dnnl_resampling_desc_t
A descriptor of resampling operation.
Definition: dnnl_types.h:1616
dnnl_batch_normalization_desc_t::batch_norm_epsilon
float batch_norm_epsilon
Batch normalization epsilon parameter.
Definition: dnnl_types.h:1383
dnnl_invalid_arguments
@ dnnl_invalid_arguments
The operation failed because of incorrect function arguments.
Definition: dnnl_types.h:45
dnnl_eltwise_elu_use_dst_for_bwd
@ dnnl_eltwise_elu_use_dst_for_bwd
Eltwise: exponential linear unit (elu) (dst for backward)
Definition: dnnl_types.h:804
dnnl_cpu
@ dnnl_cpu
CPU engine.
Definition: dnnl_types.h:1650
dnnl_post_ops
An opaque structure for a chain of post operations.
dnnl_query_undef
@ dnnl_query_undef
no query
Definition: dnnl_types.h:2003
dnnl_eltwise_swish
@ dnnl_eltwise_swish
Eltwise: swish.
Definition: dnnl_types.h:790
dnnl_ndhwc
@ dnnl_ndhwc
5D CNN activations tensor, an alias to dnnl_acdeb
Definition: dnnl_types.h:397
dnnl_rnn_desc_t::diff_dst_layer_desc
dnnl_memory_desc_t diff_dst_layer_desc
Destination gradient layer memory descriptor.
Definition: dnnl_types.h:1538
dnnl_convolution_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1137
dnnl_pooling_desc_t::kernel
dnnl_dims_t kernel
Pooling kernel spatial dimensions.
Definition: dnnl_types.h:1314
dnnl_wino_wei_OBaaIBOIio
@ dnnl_wino_wei_OBaaIBOIio
Internal weights format for 4x3 Winograd.
Definition: dnnl_types.h:976
dnnl_inner_product_desc_t::weights_desc
dnnl_memory_desc_t weights_desc
Weights memory descriptor.
Definition: dnnl_types.h:1443
dnnl_shuffle_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1190
dnnl_resampling_desc_t::diff_src_desc
dnnl_memory_desc_t diff_src_desc
Source gradient memory descriptor.
Definition: dnnl_types.h:1629
dnnl_eltwise_gelu_erf
@ dnnl_eltwise_gelu_erf
Eltwise: erf-based gelu.
Definition: dnnl_types.h:798
dnnl_convolution_desc_t::bias_desc
dnnl_memory_desc_t bias_desc
Bias memory descriptor.
Definition: dnnl_types.h:1154
dnnl_layer_normalization_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1399
dnnl_batch_normalization_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1363
dnnl_memory_desc_t
Memory descriptor.
Definition: dnnl_types.h:1050
dnnl_binary_desc_t::dst_desc
dnnl_memory_desc_t dst_desc
Destination memory descriptor.
Definition: dnnl_types.h:1579
dnnl_backward_bias
@ dnnl_backward_bias
Backward bias propagation.
Definition: dnnl_types.h:699
dnnl_op_desc_t
void * dnnl_op_desc_t
A pointer to any of the operation descriptors.
Definition: dnnl_types.h:1120
dnnl_inner_product_desc_t::diff_src_desc
dnnl_memory_desc_t diff_src_desc
Source gradient memory descriptor.
Definition: dnnl_types.h:1441
dnnl_ncw
@ dnnl_ncw
3D CNN activations tensor, an alias to dnnl_abc
Definition: dnnl_types.h:385
dnnl_matmul
@ dnnl_matmul
A matrix multiplication primitive.
Definition: dnnl_types.h:742
dnnl_version_t::patch
int patch
Patch version.
Definition: dnnl_types.h:2123
dnnl_cpu_isa_t
dnnl_cpu_isa_t
CPU instruction set flags.
Definition: dnnl_types.h:2150
dnnl_query_some_md
@ dnnl_query_some_md
stub
Definition: dnnl_types.h:2048
const_dnnl_stream_attr_t
const struct dnnl_stream_attr * const_dnnl_stream_attr_t
A constant execution stream attributes handle.
Definition: dnnl_types.h:2093
const_dnnl_memory_t
const struct dnnl_memory * const_dnnl_memory_t
A constant memory handle.
Definition: dnnl_types.h:1107
dnnl_matmul_desc_t::src_desc
dnnl_memory_desc_t src_desc
Source memory descriptor.
Definition: dnnl_types.h:1599
dnnl_nChw4c
@ dnnl_nChw4c
4D CNN activations tensor blocked by channels with block size 4, an alias to dnnl_aBcd4b
Definition: dnnl_types.h:500
dnnl_memory_extra_desc_t::flags
uint64_t flags
The flags contain arbitrary extra information, such as compensation.
Definition: dnnl_types.h:1037
dnnl_inner_product_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1433
dnnl_softmax_desc_t::diff_desc
dnnl_memory_desc_t diff_desc
Source and Destination of gradient memory descriptor.
Definition: dnnl_types.h:1271
dnnl_oi
@ dnnl_oi
2D CNN weights tensor, an alias to dnnl_ab
Definition: dnnl_types.h:400
dnnl_eltwise_desc_t::diff_data_desc
dnnl_memory_desc_t diff_data_desc
Source and destination gradient memory descriptor.
Definition: dnnl_types.h:1232
dnnl_ohwi
@ dnnl_ohwi
4D CNN weights tensor, an alias to dnnl_acdb
Definition: dnnl_types.h:416
dnnl_bacd
@ dnnl_bacd
permuted 4D tensor
Definition: dnnl_types.h:195
dnnl_format_kind_any
@ dnnl_format_kind_any
Unspecified format kind.
Definition: dnnl_types.h:85
dnnl_tnc
@ dnnl_tnc
3D RNN data tensor in the format (seq_length, batch, input channels).
Definition: dnnl_types.h:448
dnnl_nChw16c
@ dnnl_nChw16c
4D CNN activations tensor blocked by channels with block size 16, an alias to dnnl_aBcd16b
Definition: dnnl_types.h:497
dnnl_shuffle_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1193
dnnl_query_eltwise_d
@ dnnl_query_eltwise_d
eltwise descriptor
Definition: dnnl_types.h:2033
dnnl_primitive_attr_t
struct dnnl_primitive_attr * dnnl_primitive_attr_t
A primitive descriptor attributes handle that controls primitive behavior.
Definition: dnnl_types.h:1734
dnnl_binary_max
@ dnnl_binary_max
Binary max.
Definition: dnnl_types.h:842
dnnl_cba
@ dnnl_cba
permuted 3D tensor
Definition: dnnl_types.h:199
dnnl_query_num_of_inputs_s32
@ dnnl_query_num_of_inputs_s32
number of inputs expected
Definition: dnnl_types.h:2008
dnnl_resampling_desc_t::diff_dst_desc
dnnl_memory_desc_t diff_dst_desc
Destination gradient memory descriptor.
Definition: dnnl_types.h:1633
dnnl_acbde
@ dnnl_acbde
permuted 5D tensor
Definition: dnnl_types.h:189
dnnl_dcab
@ dnnl_dcab
permuted 4D tensor
Definition: dnnl_types.h:201
dnnl_alg_kind_t
dnnl_alg_kind_t
Kinds of algorithms.
Definition: dnnl_types.h:748
dnnl_deconvolution_winograd
@ dnnl_deconvolution_winograd
Winograd deconvolution.
Definition: dnnl_types.h:759
dnnl_cpu_isa_avx512_mic
@ dnnl_cpu_isa_avx512_mic
Intel Advanced Vector Extensions 512 (Intel AVX-512) subset for Intel Xeon Phi processors x200 Series...
Definition: dnnl_types.h:2165
dnnl_memory_desc_t::padded_offsets
dnnl_dims_t padded_offsets
Per-dimension offset from the padding to actual data, the top-level tensor with offsets applied must ...
Definition: dnnl_types.h:1077
dnnl_ldgoi
@ dnnl_ldgoi
5D RNN weights tensor in the format (num_layers, num_directions, num_gates, output_channels,...
Definition: dnnl_types.h:467
dnnl_success
@ dnnl_success
The operation was successful.
Definition: dnnl_types.h:41
dnnl_memory_desc_t::padded_dims
dnnl_dims_t padded_dims
Size of the data including padding in each dimension.
Definition: dnnl_types.h:1073
dnnl_eltwise_exp
@ dnnl_eltwise_exp
Eltwise: exponent.
Definition: dnnl_types.h:781
dnnl_abcdef
@ dnnl_abcdef
plain 6D tensor
Definition: dnnl_types.h:182
dnnl_aBCdef2b4c2b
@ dnnl_aBCdef2b4c2b
6D tensor blocked by 3rd dimension with block size 4
Definition: dnnl_types.h:317
dnnl_binary_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1571
dnnl_goihw
@ dnnl_goihw
5D CNN weights tensor (incl. groups), an alias to dnnl_abcde
Definition: dnnl_types.h:435
dnnl_bidirectional_sum
@ dnnl_bidirectional_sum
Bidirectional execution of RNN primitive with summation of the results.
Definition: dnnl_types.h:1480
dnnl_eltwise_desc_t::alpha
float alpha
Algorithm specific parameter.
Definition: dnnl_types.h:1252
dnnl_eltwise_linear
@ dnnl_eltwise_linear
Eltwise: linear.
Definition: dnnl_types.h:773
dnnl_nCw16c
@ dnnl_nCw16c
3D CNN activations tensor blocked by channels with block size 16, an alias to dnnl_aBc16b
Definition: dnnl_types.h:506
dnnl_vanilla_gru
@ dnnl_vanilla_gru
GRU cell.
Definition: dnnl_types.h:828
dnnl_rnn_desc_t::dst_iter_c_desc
dnnl_memory_desc_t dst_iter_c_desc
Destination iter memory descriptor for cell state.
Definition: dnnl_types.h:1515
dnnl_convolution_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1141
dnnl_binary_desc_t::alg_kind
dnnl_alg_kind_t alg_kind
The kind of the binary algorithm.
Definition: dnnl_types.h:1575
dnnl_abc
@ dnnl_abc
plain 3D tensor
Definition: dnnl_types.h:179
dnnl_stream
dnnl_blocking_desc_t::inner_idxs
dnnl_dims_t inner_idxs
The logical indices of the blocks, e.g.
Definition: dnnl_types.h:964
dnnl_wigo
@ dnnl_wigo
4D CNN weights tensor (incl. groups), an alias to dnnl_dcab
Definition: dnnl_types.h:433
dnnl_binary_desc_t
A descriptor of a binary operation.
Definition: dnnl_types.h:1568
dnnl_matmul_desc_t::weights_desc
dnnl_memory_desc_t weights_desc
Weights memory descriptor.
Definition: dnnl_types.h:1601
dnnl_memory_extra_desc_t::compensation_mask
int compensation_mask
Compensation mask.
Definition: dnnl_types.h:1039
dnnl_memory_extra_flags_t
dnnl_memory_extra_flags_t
Flags for memory special features.
Definition: dnnl_types.h:1019
dnnl_convolution_direct
@ dnnl_convolution_direct
Direct convolution.
Definition: dnnl_types.h:751
dnnl_version_t::gpu_runtime
unsigned gpu_runtime
GPU runtime.
Definition: dnnl_types.h:2126
dnnl_lrn_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1332
dnnl_pooling_desc_t::diff_dst_desc
dnnl_memory_desc_t diff_dst_desc
Destination gradient memory descriptor.
Definition: dnnl_types.h:1310
dnnl_query_diff_src_md
@ dnnl_query_diff_src_md
source gradient memory desc
Definition: dnnl_types.h:2050
dnnl_resampling_desc_t::src_desc
dnnl_memory_desc_t src_desc
Source memory descriptor.
Definition: dnnl_types.h:1627
dnnl_wio
@ dnnl_wio
3D CNN weights tensor, an alias to dnnl_cba
Definition: dnnl_types.h:408
dnnl_rnn_desc_t::diff_src_layer_desc
dnnl_memory_desc_t diff_src_layer_desc
Source gradient layer memory descriptor.
Definition: dnnl_types.h:1526
dnnl_inner_product_desc_t::diff_dst_desc
dnnl_memory_desc_t diff_dst_desc
Destination gradient memory descriptor.
Definition: dnnl_types.h:1453
dnnl_forward_scoring
@ dnnl_forward_scoring
Forward data propagation (alias for dnnl_forward_inference).
Definition: dnnl_types.h:689
dnnl_aBcde8b
@ dnnl_aBcde8b
5D tensor blocked by 2nd dimension with block size 8
Definition: dnnl_types.h:293
dnnl_prop_kind_undef
@ dnnl_prop_kind_undef
Undefined propagation type.
Definition: dnnl_types.h:680
dnnl_blocked
@ dnnl_blocked
A tensor in a generic format described by the stride and blocking values in each dimension.
Definition: dnnl_types.h:89
dnnl_rnn_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1492
dnnl_query_primitive_kind
@ dnnl_query_primitive_kind
primitive kind
Definition: dnnl_types.h:2006
dnnl_unidirectional_left2right
@ dnnl_unidirectional_left2right
Unidirectional execution of RNN primitive from left to right.
Definition: dnnl_types.h:1472
dnnl_rnn_desc_t::diff_weights_iter_desc
dnnl_memory_desc_t diff_weights_iter_desc
Weights gradient iter memory descriptor.
Definition: dnnl_types.h:1534
dnnl_iohw
@ dnnl_iohw
4D CNN weights tensor, an alias to dnnl_bacd
Definition: dnnl_types.h:420
dnnl_eltwise_elu
@ dnnl_eltwise_elu
Eltwise: exponential linear unit (elu)
Definition: dnnl_types.h:765
dnnl_eltwise_desc_t::primitive_kind
dnnl_primitive_kind_t primitive_kind
The kind of primitive.
Definition: dnnl_types.h:1212
dnnl_odhwi
@ dnnl_odhwi
5D CNN weights tensor, an alias to dnnl_acdeb
Definition: dnnl_types.h:426
dnnl_nwc
@ dnnl_nwc
3D CNN activations tensor, an alias to dnnl_acb
Definition: dnnl_types.h:387
dnnl_nCw4c
@ dnnl_nCw4c
3D CNN activations tensor blocked by channels with block size 4, an alias to dnnl_aBc4b
Definition: dnnl_types.h:509
dnnl_vanilla_lstm
@ dnnl_vanilla_lstm
LSTM cell.
Definition: dnnl_types.h:826
dnnl_any_engine
@ dnnl_any_engine
An unspecified engine.
Definition: dnnl_types.h:1648
dnnl_nCdhw4c
@ dnnl_nCdhw4c
5D CNN activations tensor blocked by channels with block size 4, an alias to dnnl_aBcde4b
Definition: dnnl_types.h:491
dnnl_resampling
@ dnnl_resampling
A resampling primitive.
Definition: dnnl_types.h:744
dnnl_wino_wei_aaOBiOo
@ dnnl_wino_wei_aaOBiOo
Internal weights format for 2x3 Winograd.
Definition: dnnl_types.h:974
dnnl_cpu_isa_avx
@ dnnl_cpu_isa_avx
Intel Advanced Vector Extensions (Intel AVX)
Definition: dnnl_types.h:2158
dnnl_bca
@ dnnl_bca
permuted 3D tensor
Definition: dnnl_types.h:196
dnnl_prop_kind_t
dnnl_prop_kind_t
Kinds of propagation.
Definition: dnnl_types.h:677
dnnl_query_scratchpad_md
@ dnnl_query_scratchpad_md
scratchpad memory desc
Definition: dnnl_types.h:2056
dnnl_lrn_desc_t::lrn_k
float lrn_k
LRN k parameter.
Definition: dnnl_types.h:1351
dnnl_nchw
@ dnnl_nchw
4D CNN activations tensor, an alias to dnnl_abcd
Definition: dnnl_types.h:389
dnnl_resampling_desc_t::prop_kind
dnnl_prop_kind_t prop_kind
The kind of propagation.
Definition: dnnl_types.h:1622
dnnl_eltwise_gelu
@ dnnl_eltwise_gelu
Eltwise: tanh-based gelu (alias for dnnl_eltwise_gelu_tanh)
Definition: dnnl_types.h:788
dnnl_lrn_desc_t::alg_kind
dnnl_alg_kind_t alg_kind
LRN algorithm.
Definition: dnnl_types.h:1338
dnnl_lrn_desc_t::local_size
dnnl_dim_t local_size
The number of channels to sum over (for cross-channel LRN) or the side length of the square region to...
Definition: dnnl_types.h:1345
dnnl_query_weights_md
@ dnnl_query_weights_md
weights memory descriptor desc
Definition: dnnl_types.h:2051
dnnl_memory_extra_desc_t
Description of extra information stored in memory.
Definition: dnnl_types.h:1034
dnnl_inner_product_desc_t::diff_bias_desc
dnnl_memory_desc_t diff_bias_desc
Bias gradient memory descriptor.
Definition: dnnl_types.h:1449
dnnl_resampling_desc_t::alg_kind
dnnl_alg_kind_t alg_kind
The kind of the resampling algorithm.
Definition: dnnl_types.h:1625
dnnl_pooling_desc_t::diff_src_desc
dnnl_memory_desc_t diff_src_desc
Source gradient memory descriptor.
Definition: dnnl_types.h:1306
dnnl_shuffle_desc_t::data_desc
dnnl_memory_desc_t data_desc
Source and destination memory descriptor, and source and destination gradient memory descriptor.
Definition: dnnl_types.h:1196
dnnl_query_batch_normalization_d
@ dnnl_query_batch_normalization_d
batch normalization descriptor
Definition: dnnl_types.h:2037
dnnl_eltwise_tanh_use_dst_for_bwd
@ dnnl_eltwise_tanh_use_dst_for_bwd
Eltwise: hyperbolic tangent non-linearity (tanh) (dst for backward)
Definition: dnnl_types.h:802
dnnl_pooling_desc_t::strides
dnnl_dims_t strides
Pooling kernel strides for spatial dimensions.
Definition: dnnl_types.h:1312
dnnl_rnn_desc_t::dst_iter_desc
dnnl_memory_desc_t dst_iter_desc
Destination iter memory descriptor for hidden state.
Definition: dnnl_types.h:1513
dnnl_convolution_desc_t::accum_data_type
dnnl_data_type_t accum_data_type
The accumulator data type. Initialized automatically.
Definition: dnnl_types.h:1170
dnnl_chwn
@ dnnl_chwn
4D CNN activations tensor, an alias to dnnl_bcda
Definition: dnnl_types.h:393
dnnl_rnn_desc_t::cell_kind
dnnl_alg_kind_t cell_kind
RNN cell kind.
Definition: dnnl_types.h:1495
const_dnnl_op_desc_t
const typedef void * const_dnnl_op_desc_t
A pointer to any of the operation descriptors (constant variant).
Definition: dnnl_types.h:1122
dnnl_undefined_primitive
@ dnnl_undefined_primitive
Undefined primitive.
Definition: dnnl_types.h:706
dnnl_eltwise_soft_relu
@ dnnl_eltwise_soft_relu
Eltwise: soft_relu.
Definition: dnnl_types.h:777
dnnl_nt
@ dnnl_nt
2D RNN statistics tensor, an alias to dnnl_ba
Definition: dnnl_types.h:383
dnnl_deconvolution_desc_t
dnnl_convolution_desc_t dnnl_deconvolution_desc_t
A descriptor of a deconvolution operation.
Definition: dnnl_types.h:1179
dnnl_memory_desc_t::offset0
dnnl_dim_t offset0
Offset from memory origin to the current block, non-zero only in a description of a memory sub-block.
Definition: dnnl_types.h:1081
dnnl_unidirectional_right2left
@ dnnl_unidirectional_right2left
Unidirectional execution of RNN primitive from right to left.
Definition: dnnl_types.h:1474
dnnl_aBcd8b
@ dnnl_aBcd8b
4D tensor blocked by 2nd dimension with block size 8
Definition: dnnl_types.h:252
dnnl_ab
@ dnnl_ab
plain 2D tensor
Definition: dnnl_types.h:178
dnnl_memory_desc_t::rnn_packed_desc
dnnl_rnn_packed_desc_t rnn_packed_desc
Tensor of packed weights for RNN.
Definition: dnnl_types.h:1092
dnnl_query_scratchpad_engine
@ dnnl_query_scratchpad_engine
(scratch) memory, additional to all inputs and outputs memory (bytes)
Definition: dnnl_types.h:2017
dnnl_runtime_error
@ dnnl_runtime_error
Primitive or engine failed on execution.
Definition: dnnl_types.h:51
dnnl_giodhw
@ dnnl_giodhw
6D CNN weights tensor (incl. groups), an alias to dnnl_acbdef
Definition: dnnl_types.h:443
dnnl_query_exec_arg_md
@ dnnl_query_exec_arg_md
memory desc of an execute argument
Definition: dnnl_types.h:2057
dnnl_query_some_d
@ dnnl_query_some_d
stub
Definition: dnnl_types.h:2028
dnnl_pooling_avg_exclude_padding
@ dnnl_pooling_avg_exclude_padding
Average pooling exclude padding.
Definition: dnnl_types.h:816
dnnl_binary_add
@ dnnl_binary_add
Binary add.
Definition: dnnl_types.h:838