mxnet
dnnl.h
Go to the documentation of this file.
1 /*******************************************************************************
2 * Copyright 2016-2021 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 ONEAPI_DNNL_DNNL_H
21 #define ONEAPI_DNNL_DNNL_H
22 
23 #include "oneapi/dnnl/dnnl_config.h"
24 #include "oneapi/dnnl/dnnl_types.h"
25 #include "oneapi/dnnl/dnnl_version.h"
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
33 
36 
39 
54  const_dnnl_primitive_desc_t hint_forward_primitive_desc);
55 
65 
77 
85 
101  dnnl_primitive_desc_t *primitive_desc, const_dnnl_op_desc_t op_desc,
103  const_dnnl_primitive_desc_t hint_forward_primitive_desc);
104 
113  dnnl_primitive_desc_t *primitive_desc,
114  const_dnnl_primitive_desc_t existing_primitive_desc);
115 
131  const_dnnl_primitive_desc_t primitive_desc,
133 
140  dnnl_primitive_desc_t primitive_desc);
141 
182  const_dnnl_primitive_desc_t primitive_desc, dnnl_query_t what,
183  int index, void *result);
184 
200  const_dnnl_primitive_desc_t primitive_desc, dnnl_query_t what,
201  int index);
202 
216 int DNNL_API dnnl_primitive_desc_query_s32(
217  const_dnnl_primitive_desc_t primitive_desc, dnnl_query_t what,
218  int index);
219 
227  const_dnnl_primitive_desc_t primitive_desc);
228 
242 
247  dnnl_stream_t stream, int nargs, const dnnl_exec_arg_t *args);
248 
262  const_dnnl_primitive_t primitive,
263  const_dnnl_primitive_desc_t *primitive_desc);
264 
271 
273 
276 
286 
295 
302 
311 
324 
333 
344 
368  const_dnnl_primitive_attr_t attr, dnnl_dim_t *count, int *mask,
369  const float **scales);
370 
417  dnnl_primitive_attr_t attr, dnnl_dim_t count, int mask,
418  const float *scales);
419 
447  dnnl_primitive_attr_t attr, int arg, dnnl_dim_t *count, int *mask,
448  const float **scales);
449 
471  dnnl_primitive_attr_t attr, int arg, dnnl_dim_t count, int mask,
472  const float *scales);
473 
503  const_dnnl_primitive_attr_t attr, int arg, dnnl_dim_t *count, int *mask,
504  const int32_t **zero_points);
505 
532  dnnl_primitive_attr_t attr, int arg, dnnl_dim_t count, int mask,
533  const int32_t *zero_points);
534 
549 
563 
570 
577 
582 int DNNL_API dnnl_post_ops_len(const_dnnl_post_ops_t post_ops);
583 
592  const_dnnl_post_ops_t post_ops, int index);
593 
619  dnnl_post_ops_t post_ops, float scale);
620 
654  dnnl_post_ops_t post_ops, float scale, dnnl_data_type_t data_type);
655 
690  float scale, int32_t zero_point, dnnl_data_type_t data_type);
691 
702  const_dnnl_post_ops_t post_ops, int index, float *scale);
703 
714  const_dnnl_post_ops_t post_ops, int index, float *scale,
715  dnnl_data_type_t *data_type);
716 
728  const_dnnl_post_ops_t post_ops, int index, float *scale,
729  int32_t *zero_point, dnnl_data_type_t *data_type);
730 
750  float scale, dnnl_alg_kind_t alg_kind, float alpha, float beta);
751 
765  const_dnnl_post_ops_t post_ops, int index, float *scale,
766  dnnl_alg_kind_t *alg_kind, float *alpha, float *beta);
767 
799  dnnl_data_type_t weights_data_type, dnnl_data_type_t bias_data_type,
800  dnnl_data_type_t dst_data_type, dnnl_dim_t count, int mask,
801  const float *scales);
802 
820  const_dnnl_post_ops_t post_ops, int index,
821  dnnl_data_type_t *weights_data_type, dnnl_data_type_t *bias_data_type,
822  dnnl_data_type_t *dst_data_type, dnnl_dim_t *count, int *mask,
823  const float **scales);
824 
859  dnnl_data_type_t weights_data_type, dnnl_data_type_t bias_data_type,
860  dnnl_data_type_t dst_data_type, dnnl_dim_t count, int mask,
861  const float *scales);
862 
880  const_dnnl_post_ops_t post_ops, int index,
881  dnnl_data_type_t *weights_data_type, dnnl_data_type_t *bias_data_type,
882  dnnl_data_type_t *dst_data_type, dnnl_dim_t *count, int *mask,
883  const float **scales);
884 
903  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src1_desc);
904 
916  const_dnnl_post_ops_t post_ops, int index, dnnl_alg_kind_t *alg_kind,
917  const dnnl_memory_desc_t **src1_desc);
918 
942 
949  dnnl_post_ops_t post_ops, int mask);
950 
957  const_dnnl_post_ops_t post_ops, int index, int *mask);
958 
960 
962 
965 
982  dnnl_memory_desc_t *memory_desc, int ndims, const dnnl_dims_t dims,
983  dnnl_data_type_t data_type, const dnnl_dims_t strides);
984 
1004  dnnl_memory_desc_t *memory_desc, int ndims, const dnnl_dims_t dims,
1005  dnnl_data_type_t data_type, dnnl_format_tag_t tag);
1006 
1013 //
1022  dnnl_memory_desc_t *memory_desc,
1023  const dnnl_memory_desc_t *parent_memory_desc, const dnnl_dims_t dims,
1024  const dnnl_dims_t offsets);
1025 
1066  dnnl_memory_desc_t *out_memory_desc,
1067  const dnnl_memory_desc_t *in_memory_desc, int ndims,
1068  const dnnl_dims_t dims);
1069 
1111  dnnl_memory_desc_t *out_memory_desc,
1112  const dnnl_memory_desc_t *in_memory_desc, const int *permutation);
1113 
1123 int DNNL_API dnnl_memory_desc_equal(
1124  const dnnl_memory_desc_t *lhs, const dnnl_memory_desc_t *rhs);
1125 
1131 size_t DNNL_API dnnl_memory_desc_get_size(
1132  const dnnl_memory_desc_t *memory_desc);
1133 
1138 size_t DNNL_API dnnl_data_type_size(dnnl_data_type_t data_type);
1139 
1161  const dnnl_memory_desc_t *memory_desc, dnnl_engine_t engine,
1162  void *handle);
1163 
1171  const_dnnl_memory_t memory, const dnnl_memory_desc_t **memory_desc);
1172 
1180  const_dnnl_memory_t memory, dnnl_engine_t *engine);
1181 
1206  const_dnnl_memory_t memory, void **mapped_ptr);
1207 
1223  const_dnnl_memory_t memory, void *mapped_ptr);
1224 
1233  const_dnnl_memory_t memory, void **handle);
1234 
1245  dnnl_memory_t memory, void *handle);
1246 
1256  dnnl_memory_t memory, void *handle, dnnl_stream_t stream);
1257 
1264 
1266 
1269 
1272 
1286  dnnl_primitive_desc_t *reorder_primitive_desc,
1287  const dnnl_memory_desc_t *src_desc, dnnl_engine_t src_engine,
1288  const dnnl_memory_desc_t *dst_desc, dnnl_engine_t dst_engine,
1290 
1292 
1295 
1311  dnnl_primitive_desc_t *concat_primitive_desc,
1312  const dnnl_memory_desc_t *dst_desc, int n, int concat_dimension,
1313  const dnnl_memory_desc_t *src_descs, const_dnnl_primitive_attr_t attr,
1314  dnnl_engine_t engine);
1315 
1317 
1320 
1334  dnnl_primitive_desc_t *sum_primitive_desc,
1335  const dnnl_memory_desc_t *dst_desc, int n, const float *scales,
1336  const dnnl_memory_desc_t *src_descs, const_dnnl_primitive_attr_t attr,
1337  dnnl_engine_t engine);
1338 
1340 
1343 
1366  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src0_desc,
1367  const dnnl_memory_desc_t *src1_desc,
1368  const dnnl_memory_desc_t *dst_desc);
1369 
1371 
1374 
1407  dnnl_convolution_desc_t *conv_desc, dnnl_prop_kind_t prop_kind,
1408  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc,
1409  const dnnl_memory_desc_t *weights_desc,
1410  const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc,
1411  const dnnl_dims_t strides, const dnnl_dims_t padding_l,
1412  const dnnl_dims_t padding_r);
1413 
1450  dnnl_convolution_desc_t *conv_desc, dnnl_prop_kind_t prop_kind,
1451  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc,
1452  const dnnl_memory_desc_t *weights_desc,
1453  const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc,
1454  const dnnl_dims_t strides, const dnnl_dims_t dilates,
1455  const dnnl_dims_t padding_l, const dnnl_dims_t padding_r);
1456 
1484  dnnl_convolution_desc_t *conv_desc, dnnl_alg_kind_t alg_kind,
1485  const dnnl_memory_desc_t *diff_src_desc,
1486  const dnnl_memory_desc_t *weights_desc,
1487  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
1488  const dnnl_dims_t padding_l, const dnnl_dims_t padding_r);
1489 
1521  dnnl_convolution_desc_t *conv_desc, dnnl_alg_kind_t alg_kind,
1522  const dnnl_memory_desc_t *diff_src_desc,
1523  const dnnl_memory_desc_t *weights_desc,
1524  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
1525  const dnnl_dims_t dilates, const dnnl_dims_t padding_l,
1526  const dnnl_dims_t padding_r);
1527 
1558  dnnl_convolution_desc_t *conv_desc, dnnl_alg_kind_t alg_kind,
1559  const dnnl_memory_desc_t *src_desc,
1560  const dnnl_memory_desc_t *diff_weights_desc,
1561  const dnnl_memory_desc_t *diff_bias_desc,
1562  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
1563  const dnnl_dims_t padding_l, const dnnl_dims_t padding_r);
1564 
1599  dnnl_convolution_desc_t *conv_desc, dnnl_alg_kind_t alg_kind,
1600  const dnnl_memory_desc_t *src_desc,
1601  const dnnl_memory_desc_t *diff_weights_desc,
1602  const dnnl_memory_desc_t *diff_bias_desc,
1603  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
1604  const dnnl_dims_t dilates, const dnnl_dims_t padding_l,
1605  const dnnl_dims_t padding_r);
1606 
1608 
1611 
1643  dnnl_deconvolution_desc_t *deconv_desc, dnnl_prop_kind_t prop_kind,
1644  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc,
1645  const dnnl_memory_desc_t *weights_desc,
1646  const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc,
1647  const dnnl_dims_t strides, const dnnl_dims_t padding_l,
1648  const dnnl_dims_t padding_r);
1649 
1685  dnnl_deconvolution_desc_t *deconv_desc, dnnl_prop_kind_t prop_kind,
1686  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc,
1687  const dnnl_memory_desc_t *weights_desc,
1688  const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc,
1689  const dnnl_dims_t strides, const dnnl_dims_t dilates,
1690  const dnnl_dims_t padding_l, const dnnl_dims_t padding_r);
1691 
1718  dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind,
1719  const dnnl_memory_desc_t *diff_src_desc,
1720  const dnnl_memory_desc_t *weights_desc,
1721  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
1722  const dnnl_dims_t padding_l, const dnnl_dims_t padding_r);
1723 
1754  dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind,
1755  const dnnl_memory_desc_t *diff_src_desc,
1756  const dnnl_memory_desc_t *weights_desc,
1757  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
1758  const dnnl_dims_t dilates, const dnnl_dims_t padding_l,
1759  const dnnl_dims_t padding_r);
1760 
1790  dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind,
1791  const dnnl_memory_desc_t *src_desc,
1792  const dnnl_memory_desc_t *diff_weights_desc,
1793  const dnnl_memory_desc_t *diff_bias_desc,
1794  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
1795  const dnnl_dims_t padding_l, const dnnl_dims_t padding_r);
1796 
1830  dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind,
1831  const dnnl_memory_desc_t *src_desc,
1832  const dnnl_memory_desc_t *diff_weights_desc,
1833  const dnnl_memory_desc_t *diff_bias_desc,
1834  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
1835  const dnnl_dims_t dilates, const dnnl_dims_t padding_l,
1836  const dnnl_dims_t padding_r);
1837 
1839 
1842 
1854  dnnl_shuffle_desc_t *shuffle_desc, dnnl_prop_kind_t prop_kind,
1855  const dnnl_memory_desc_t *data_desc, int axis, dnnl_dim_t group_size);
1856 
1866  dnnl_shuffle_desc_t *shuffle_desc,
1867  const dnnl_memory_desc_t *diff_data_desc, int axis,
1868  dnnl_dim_t group_size);
1869 
1871 
1874 
1889  dnnl_eltwise_desc_t *eltwise_desc, dnnl_prop_kind_t prop_kind,
1890  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *data_desc,
1891  float alpha, float beta);
1892 
1906  dnnl_eltwise_desc_t *eltwise_desc, dnnl_alg_kind_t alg_kind,
1907  const dnnl_memory_desc_t *diff_data_desc,
1908  const dnnl_memory_desc_t *data_desc, float alpha, float beta);
1909 
1911 
1914 
1925  dnnl_softmax_desc_t *softmax_desc, dnnl_prop_kind_t prop_kind,
1926  const dnnl_memory_desc_t *data_desc, int softmax_axis);
1927 
1937  dnnl_softmax_desc_t *softmax_desc,
1938  const dnnl_memory_desc_t *diff_data_desc,
1939  const dnnl_memory_desc_t *data_desc, int softmax_axis);
1940 
1942 
1945 
1956  dnnl_logsoftmax_desc_t *logsoftmax_desc, dnnl_prop_kind_t prop_kind,
1957  const dnnl_memory_desc_t *data_desc, int logsoftmax_axis);
1958 
1968  dnnl_logsoftmax_desc_t *logsoftmax_desc,
1969  const dnnl_memory_desc_t *diff_data_desc,
1970  const dnnl_memory_desc_t *data_desc, int logsoftmax_axis);
1971 
1973 
1976 
2002  dnnl_pooling_desc_t *pool_desc, dnnl_prop_kind_t prop_kind,
2003  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc,
2004  const dnnl_memory_desc_t *dst_desc, const dnnl_dims_t strides,
2005  const dnnl_dims_t kernel, const dnnl_dims_t padding_l,
2006  const dnnl_dims_t padding_r);
2007 
2031  dnnl_pooling_desc_t *pool_desc, dnnl_alg_kind_t alg_kind,
2032  const dnnl_memory_desc_t *diff_src_desc,
2033  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
2034  const dnnl_dims_t kernel, const dnnl_dims_t padding_l,
2035  const dnnl_dims_t padding_r);
2036 
2038 
2041 
2070  dnnl_pooling_v2_desc_t *pool_desc, dnnl_prop_kind_t prop_kind,
2071  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc,
2072  const dnnl_memory_desc_t *dst_desc, const dnnl_dims_t strides,
2073  const dnnl_dims_t kernel, const dnnl_dims_t dilation,
2074  const dnnl_dims_t padding_l, const dnnl_dims_t padding_r);
2075 
2102  dnnl_pooling_v2_desc_t *pool_desc, dnnl_alg_kind_t alg_kind,
2103  const dnnl_memory_desc_t *diff_src_desc,
2104  const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides,
2105  const dnnl_dims_t kernel, const dnnl_dims_t dilation,
2106  const dnnl_dims_t padding_l, const dnnl_dims_t padding_r);
2107 
2109 
2112 
2129  dnnl_prelu_desc_t *prelu_desc, dnnl_prop_kind_t prop_kind,
2130  const dnnl_memory_desc_t *data_desc,
2131  const dnnl_memory_desc_t *weights_desc);
2132 
2150  dnnl_prelu_desc_t *prelu_desc, const dnnl_memory_desc_t *data_desc,
2151  const dnnl_memory_desc_t *weights_desc,
2152  const dnnl_memory_desc_t *diff_data_desc,
2153  const dnnl_memory_desc_t *diff_weights_desc);
2154 
2156 
2159 
2175  dnnl_prop_kind_t prop_kind, dnnl_alg_kind_t alg_kind,
2176  const dnnl_memory_desc_t *data_desc, dnnl_dim_t local_size, float alpha,
2177  float beta, float k);
2178 
2193  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_data_desc,
2194  const dnnl_memory_desc_t *data_desc, dnnl_dim_t local_size, float alpha,
2195  float beta, float k);
2196 
2198 
2201 
2218  dnnl_batch_normalization_desc_t *bnrm_desc, dnnl_prop_kind_t prop_kind,
2219  const dnnl_memory_desc_t *data_desc, float epsilon, unsigned flags);
2220 
2239  dnnl_batch_normalization_desc_t *bnrm_desc, dnnl_prop_kind_t prop_kind,
2240  const dnnl_memory_desc_t *diff_data_desc,
2241  const dnnl_memory_desc_t *data_desc, float epsilon, unsigned flags);
2242 
2244 
2247 
2269  dnnl_layer_normalization_desc_t *lnrm_desc, dnnl_prop_kind_t prop_kind,
2270  const dnnl_memory_desc_t *data_desc,
2271  const dnnl_memory_desc_t *stat_desc, float epsilon, unsigned flags);
2272 
2296  dnnl_layer_normalization_desc_t *lnrm_desc, dnnl_prop_kind_t prop_kind,
2297  const dnnl_memory_desc_t *diff_data_desc,
2298  const dnnl_memory_desc_t *data_desc,
2299  const dnnl_memory_desc_t *stat_desc, float epsilon, unsigned flags);
2300 
2302 
2305 
2324  dnnl_inner_product_desc_t *ip_desc, dnnl_prop_kind_t prop_kind,
2325  const dnnl_memory_desc_t *src_desc,
2326  const dnnl_memory_desc_t *weights_desc,
2327  const dnnl_memory_desc_t *bias_desc,
2328  const dnnl_memory_desc_t *dst_desc);
2329 
2343  dnnl_inner_product_desc_t *ip_desc,
2344  const dnnl_memory_desc_t *diff_src_desc,
2345  const dnnl_memory_desc_t *weights_desc,
2346  const dnnl_memory_desc_t *diff_dst_desc);
2347 
2364  dnnl_inner_product_desc_t *ip_desc, const dnnl_memory_desc_t *src_desc,
2365  const dnnl_memory_desc_t *diff_weights_desc,
2366  const dnnl_memory_desc_t *diff_bias_desc,
2367  const dnnl_memory_desc_t *diff_dst_desc);
2368 
2370 
2373 
2414  dnnl_primitive_attr_t attr, const float scale, const float shift);
2415 
2428  const_dnnl_primitive_attr_t attr, float *scale, float *shift);
2429 
2460  dnnl_primitive_attr_t attr, dnnl_dim_t count, int mask,
2461  const float *scales);
2462 
2479  const_dnnl_primitive_attr_t attr, dnnl_dim_t *count, int *mask,
2480  const float **scales);
2481 
2509  dnnl_primitive_attr_t attr, dnnl_dim_t count, int mask,
2510  const float *scales);
2511 
2528  const_dnnl_primitive_attr_t attr, dnnl_dim_t *count, int *mask,
2529  const float **scales);
2530 
2532 
2535 
2575  dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind,
2576  const dnnl_alg_kind_t activation, const dnnl_rnn_direction_t direction,
2577  const dnnl_memory_desc_t *src_layer_desc,
2578  const dnnl_memory_desc_t *src_iter_desc,
2579  const dnnl_memory_desc_t *weights_layer_desc,
2580  const dnnl_memory_desc_t *weights_iter_desc,
2581  const dnnl_memory_desc_t *bias_desc,
2582  const dnnl_memory_desc_t *dst_layer_desc,
2583  const dnnl_memory_desc_t *dst_iter_desc, unsigned flags, float alpha,
2584  float beta);
2585 
2636  dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind,
2637  const dnnl_alg_kind_t activation, const dnnl_rnn_direction_t direction,
2638  const dnnl_memory_desc_t *src_layer_desc,
2639  const dnnl_memory_desc_t *src_iter_desc,
2640  const dnnl_memory_desc_t *weights_layer_desc,
2641  const dnnl_memory_desc_t *weights_iter_desc,
2642  const dnnl_memory_desc_t *bias_desc,
2643  const dnnl_memory_desc_t *dst_layer_desc,
2644  const dnnl_memory_desc_t *dst_iter_desc,
2645  const dnnl_memory_desc_t *diff_src_layer_desc,
2646  const dnnl_memory_desc_t *diff_src_iter_desc,
2647  const dnnl_memory_desc_t *diff_weights_layer_desc,
2648  const dnnl_memory_desc_t *diff_weights_iter_desc,
2649  const dnnl_memory_desc_t *diff_bias_desc,
2650  const dnnl_memory_desc_t *diff_dst_layer_desc,
2651  const dnnl_memory_desc_t *diff_dst_iter_desc, unsigned flags,
2652  float alpha, float beta);
2653 
2698  dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction,
2699  const dnnl_memory_desc_t *src_layer_desc,
2700  const dnnl_memory_desc_t *src_iter_desc,
2701  const dnnl_memory_desc_t *src_iter_c_desc,
2702  const dnnl_memory_desc_t *weights_layer_desc,
2703  const dnnl_memory_desc_t *weights_iter_desc,
2704  const dnnl_memory_desc_t *bias_desc,
2705  const dnnl_memory_desc_t *dst_layer_desc,
2706  const dnnl_memory_desc_t *dst_iter_desc,
2707  const dnnl_memory_desc_t *dst_iter_c_desc, unsigned flags);
2708 
2755  dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction,
2756  const dnnl_memory_desc_t *src_layer_desc,
2757  const dnnl_memory_desc_t *src_iter_desc,
2758  const dnnl_memory_desc_t *src_iter_c_desc,
2759  const dnnl_memory_desc_t *weights_layer_desc,
2760  const dnnl_memory_desc_t *weights_iter_desc,
2761  const dnnl_memory_desc_t *weights_peephole_desc,
2762  const dnnl_memory_desc_t *bias_desc,
2763  const dnnl_memory_desc_t *dst_layer_desc,
2764  const dnnl_memory_desc_t *dst_iter_desc,
2765  const dnnl_memory_desc_t *dst_iter_c_desc, unsigned flags);
2766 
2817  dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction,
2818  const dnnl_memory_desc_t *src_layer_desc,
2819  const dnnl_memory_desc_t *src_iter_desc,
2820  const dnnl_memory_desc_t *src_iter_c_desc,
2821  const dnnl_memory_desc_t *weights_layer_desc,
2822  const dnnl_memory_desc_t *weights_iter_desc,
2823  const dnnl_memory_desc_t *weights_peephole_desc,
2824  const dnnl_memory_desc_t *weights_projection_desc,
2825  const dnnl_memory_desc_t *bias_desc,
2826  const dnnl_memory_desc_t *dst_layer_desc,
2827  const dnnl_memory_desc_t *dst_iter_desc,
2828  const dnnl_memory_desc_t *dst_iter_c_desc, unsigned flags);
2829 
2891  dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction,
2892  const dnnl_memory_desc_t *src_layer_desc,
2893  const dnnl_memory_desc_t *src_iter_desc,
2894  const dnnl_memory_desc_t *src_iter_c_desc,
2895  const dnnl_memory_desc_t *weights_layer_desc,
2896  const dnnl_memory_desc_t *weights_iter_desc,
2897  const dnnl_memory_desc_t *bias_desc,
2898  const dnnl_memory_desc_t *dst_layer_desc,
2899  const dnnl_memory_desc_t *dst_iter_desc,
2900  const dnnl_memory_desc_t *dst_iter_c_desc,
2901  const dnnl_memory_desc_t *diff_src_layer_desc,
2902  const dnnl_memory_desc_t *diff_src_iter_desc,
2903  const dnnl_memory_desc_t *diff_src_iter_c_desc,
2904  const dnnl_memory_desc_t *diff_weights_layer_desc,
2905  const dnnl_memory_desc_t *diff_weights_iter_desc,
2906  const dnnl_memory_desc_t *diff_bias_desc,
2907  const dnnl_memory_desc_t *diff_dst_layer_desc,
2908  const dnnl_memory_desc_t *diff_dst_iter_desc,
2909  const dnnl_memory_desc_t *diff_dst_iter_c_desc, unsigned flags);
2910 
2976  dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind,
2977  dnnl_rnn_direction_t direction,
2978  const dnnl_memory_desc_t *src_layer_desc,
2979  const dnnl_memory_desc_t *src_iter_desc,
2980  const dnnl_memory_desc_t *src_iter_c_desc,
2981  const dnnl_memory_desc_t *weights_layer_desc,
2982  const dnnl_memory_desc_t *weights_iter_desc,
2983  const dnnl_memory_desc_t *weights_peephole_desc,
2984  const dnnl_memory_desc_t *bias_desc,
2985  const dnnl_memory_desc_t *dst_layer_desc,
2986  const dnnl_memory_desc_t *dst_iter_desc,
2987  const dnnl_memory_desc_t *dst_iter_c_desc,
2988  const dnnl_memory_desc_t *diff_src_layer_desc,
2989  const dnnl_memory_desc_t *diff_src_iter_desc,
2990  const dnnl_memory_desc_t *diff_src_iter_c_desc,
2991  const dnnl_memory_desc_t *diff_weights_layer_desc,
2992  const dnnl_memory_desc_t *diff_weights_iter_desc,
2993  const dnnl_memory_desc_t *diff_weights_peephole_desc,
2994  const dnnl_memory_desc_t *diff_bias_desc,
2995  const dnnl_memory_desc_t *diff_dst_layer_desc,
2996  const dnnl_memory_desc_t *diff_dst_iter_desc,
2997  const dnnl_memory_desc_t *diff_dst_iter_c_desc, unsigned flags);
2998 
3072  dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind,
3073  dnnl_rnn_direction_t direction,
3074  const dnnl_memory_desc_t *src_layer_desc,
3075  const dnnl_memory_desc_t *src_iter_desc,
3076  const dnnl_memory_desc_t *src_iter_c_desc,
3077  const dnnl_memory_desc_t *weights_layer_desc,
3078  const dnnl_memory_desc_t *weights_iter_desc,
3079  const dnnl_memory_desc_t *weights_peephole_desc,
3080  const dnnl_memory_desc_t *weights_projection_desc,
3081  const dnnl_memory_desc_t *bias_desc,
3082  const dnnl_memory_desc_t *dst_layer_desc,
3083  const dnnl_memory_desc_t *dst_iter_desc,
3084  const dnnl_memory_desc_t *dst_iter_c_desc,
3085  const dnnl_memory_desc_t *diff_src_layer_desc,
3086  const dnnl_memory_desc_t *diff_src_iter_desc,
3087  const dnnl_memory_desc_t *diff_src_iter_c_desc,
3088  const dnnl_memory_desc_t *diff_weights_layer_desc,
3089  const dnnl_memory_desc_t *diff_weights_iter_desc,
3090  const dnnl_memory_desc_t *diff_weights_peephole_desc,
3091  const dnnl_memory_desc_t *diff_weights_projection_desc,
3092  const dnnl_memory_desc_t *diff_bias_desc,
3093  const dnnl_memory_desc_t *diff_dst_layer_desc,
3094  const dnnl_memory_desc_t *diff_dst_iter_desc,
3095  const dnnl_memory_desc_t *diff_dst_iter_c_desc, unsigned flags);
3096 
3132  dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction,
3133  const dnnl_memory_desc_t *src_layer_desc,
3134  const dnnl_memory_desc_t *src_iter_desc,
3135  const dnnl_memory_desc_t *weights_layer_desc,
3136  const dnnl_memory_desc_t *weights_iter_desc,
3137  const dnnl_memory_desc_t *bias_desc,
3138  const dnnl_memory_desc_t *dst_layer_desc,
3139  const dnnl_memory_desc_t *dst_iter_desc, unsigned flags);
3140 
3187  dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction,
3188  const dnnl_memory_desc_t *src_layer_desc,
3189  const dnnl_memory_desc_t *src_iter_desc,
3190  const dnnl_memory_desc_t *weights_layer_desc,
3191  const dnnl_memory_desc_t *weights_iter_desc,
3192  const dnnl_memory_desc_t *bias_desc,
3193  const dnnl_memory_desc_t *dst_layer_desc,
3194  const dnnl_memory_desc_t *dst_iter_desc,
3195  const dnnl_memory_desc_t *diff_src_layer_desc,
3196  const dnnl_memory_desc_t *diff_src_iter_desc,
3197  const dnnl_memory_desc_t *diff_weights_layer_desc,
3198  const dnnl_memory_desc_t *diff_weights_iter_desc,
3199  const dnnl_memory_desc_t *diff_bias_desc,
3200  const dnnl_memory_desc_t *diff_dst_layer_desc,
3201  const dnnl_memory_desc_t *diff_dst_iter_desc, unsigned flags);
3202 
3234  dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction,
3235  const dnnl_memory_desc_t *src_layer_desc,
3236  const dnnl_memory_desc_t *src_iter_desc,
3237  const dnnl_memory_desc_t *weights_layer_desc,
3238  const dnnl_memory_desc_t *weights_iter_desc,
3239  const dnnl_memory_desc_t *bias_desc,
3240  const dnnl_memory_desc_t *dst_layer_desc,
3241  const dnnl_memory_desc_t *dst_iter_desc, unsigned flags);
3242 
3289  dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind,
3290  dnnl_rnn_direction_t direction,
3291  const dnnl_memory_desc_t *src_layer_desc,
3292  const dnnl_memory_desc_t *src_iter_desc,
3293  const dnnl_memory_desc_t *weights_layer_desc,
3294  const dnnl_memory_desc_t *weights_iter_desc,
3295  const dnnl_memory_desc_t *bias_desc,
3296  const dnnl_memory_desc_t *dst_layer_desc,
3297  const dnnl_memory_desc_t *dst_iter_desc,
3298  const dnnl_memory_desc_t *diff_src_layer_desc,
3299  const dnnl_memory_desc_t *diff_src_iter_desc,
3300  const dnnl_memory_desc_t *diff_weights_layer_desc,
3301  const dnnl_memory_desc_t *diff_weights_iter_desc,
3302  const dnnl_memory_desc_t *diff_bias_desc,
3303  const dnnl_memory_desc_t *diff_dst_layer_desc,
3304  const dnnl_memory_desc_t *diff_dst_iter_desc, unsigned flags);
3305 
3307 
3310 
3323  const dnnl_memory_desc_t *src_desc,
3324  const dnnl_memory_desc_t *weights_desc,
3325  const dnnl_memory_desc_t *bias_desc,
3326  const dnnl_memory_desc_t *dst_desc);
3327 
3329 
3332 
3351  dnnl_resampling_desc_t *resampling_desc, dnnl_prop_kind_t prop_kind,
3352  dnnl_alg_kind_t alg_kind, const float *factors,
3353  const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *dst_desc);
3354 
3367  dnnl_resampling_desc_t *resampling_desc, dnnl_alg_kind_t alg_kind,
3368  const float *factors, const dnnl_memory_desc_t *diff_src_desc,
3369  const dnnl_memory_desc_t *diff_dst_desc);
3370 
3372 
3375 
3397  dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc,
3398  const dnnl_memory_desc_t *dst_desc, float p, float eps);
3399 
3401 
3403 
3406 
3411 size_t DNNL_API dnnl_engine_get_count(dnnl_engine_kind_t kind);
3412 
3422  dnnl_engine_t *engine, dnnl_engine_kind_t kind, size_t index);
3423 
3431  dnnl_engine_t engine, dnnl_engine_kind_t *kind);
3432 
3439 
3441 
3444 
3453  dnnl_stream_t *stream, dnnl_engine_t engine, unsigned flags);
3454 
3462  const_dnnl_stream_t stream, dnnl_engine_t *engine);
3463 
3470 
3477 
3479 
3482 
3491 dnnl_status_t DNNL_API dnnl_get_primitive_cache_capacity(int *capacity);
3492 
3504 dnnl_status_t DNNL_API dnnl_set_primitive_cache_capacity(int capacity);
3505 
3507 
3510 
3518 
3530 
3532 
3535 
3549 dnnl_status_t DNNL_API dnnl_set_verbose(int level);
3550 
3560 dnnl_status_t DNNL_API dnnl_set_jit_dump(int enable);
3561 
3568 const dnnl_version_t DNNL_API *dnnl_version(void);
3569 
3594 dnnl_status_t DNNL_API dnnl_set_jit_profiling_flags(unsigned flags);
3595 
3619 dnnl_status_t DNNL_API dnnl_set_jit_profiling_jitdumpdir(const char *dir);
3620 
3654 
3664 
3686 
3696 
3698 
3701 
3742 dnnl_status_t DNNL_API dnnl_sgemm(char transa, char transb, dnnl_dim_t M,
3743  dnnl_dim_t N, dnnl_dim_t K, float alpha, const float *A, dnnl_dim_t lda,
3744  const float *B, dnnl_dim_t ldb, float beta, float *C, dnnl_dim_t ldc);
3745 
3809 dnnl_status_t DNNL_API dnnl_gemm_u8s8s32(char transa, char transb, char offsetc,
3810  dnnl_dim_t M, dnnl_dim_t N, dnnl_dim_t K, float alpha, const uint8_t *A,
3811  dnnl_dim_t lda, uint8_t ao, const int8_t *B, dnnl_dim_t ldb, int8_t bo,
3812  float beta, int32_t *C, dnnl_dim_t ldc, const int32_t *co);
3813 
3877 dnnl_status_t DNNL_API dnnl_gemm_s8s8s32(char transa, char transb, char offsetc,
3878  dnnl_dim_t M, dnnl_dim_t N, dnnl_dim_t K, float alpha, const int8_t *A,
3879  dnnl_dim_t lda, int8_t ao, const int8_t *B, dnnl_dim_t ldb, int8_t bo,
3880  float beta, int32_t *C, dnnl_dim_t ldc, const int32_t *co);
3881 
3883 
3885 
3886 #ifdef __cplusplus
3887 }
3888 #endif
3889 
3890 #endif /* ONEAPI_DNNL_DNNL_H */
dnnl_status_t DNNL_API dnnl_primitive_attr_create(dnnl_primitive_attr_t *attr)
dnnl_status_t DNNL_API dnnl_post_ops_get_params_dw_k3s1p1(const_dnnl_post_ops_t post_ops, int index, dnnl_data_type_t *weights_data_type, dnnl_data_type_t *bias_data_type, dnnl_data_type_t *dst_data_type, dnnl_dim_t *count, int *mask, const float **scales)
dnnl_status_t DNNL_API dnnl_primitive_attr_set_rnn_data_qparams(dnnl_primitive_attr_t attr, const float scale, const float shift)
dnnl_status_t DNNL_API dnnl_post_ops_get_params_dw_k3s2p1(const_dnnl_post_ops_t post_ops, int index, dnnl_data_type_t *weights_data_type, dnnl_data_type_t *bias_data_type, dnnl_data_type_t *dst_data_type, dnnl_dim_t *count, int *mask, const float **scales)
dnnl_status_t DNNL_API dnnl_lstm_forward_desc_init(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *src_iter_c_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, const dnnl_memory_desc_t *dst_iter_c_desc, unsigned flags)
dnnl_status_t DNNL_API dnnl_gemm_s8s8s32(char transa, char transb, char offsetc, dnnl_dim_t M, dnnl_dim_t N, dnnl_dim_t K, float alpha, const int8_t *A, dnnl_dim_t lda, int8_t ao, const int8_t *B, dnnl_dim_t ldb, int8_t bo, float beta, int32_t *C, dnnl_dim_t ldc, const int32_t *co)
dnnl_status_t DNNL_API dnnl_primitive_desc_get_attr(const_dnnl_primitive_desc_t primitive_desc, const_dnnl_primitive_attr_t *attr)
dnnl_status_t DNNL_API dnnl_convolution_backward_weights_desc_init(dnnl_convolution_desc_t *conv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *diff_weights_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_status_t DNNL_API dnnl_gemm_u8s8s32(char transa, char transb, char offsetc, dnnl_dim_t M, dnnl_dim_t N, dnnl_dim_t K, float alpha, const uint8_t *A, dnnl_dim_t lda, uint8_t ao, const int8_t *B, dnnl_dim_t ldb, int8_t bo, float beta, int32_t *C, dnnl_dim_t ldc, const int32_t *co)
A descriptor for an RNN operation.
Definition: dnnl_types.h:2271
dnnl_primitive_kind_t
Definition: dnnl_types.h:1334
dnnl_status_t DNNL_API dnnl_post_ops_get_params_binary(const_dnnl_post_ops_t post_ops, int index, dnnl_alg_kind_t *alg_kind, const dnnl_memory_desc_t **src1_desc)
size_t DNNL_API dnnl_data_type_size(dnnl_data_type_t data_type)
dnnl_status_t DNNL_API dnnl_lstm_backward_desc_init_v2(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *src_iter_c_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *weights_peephole_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, const dnnl_memory_desc_t *dst_iter_c_desc, const dnnl_memory_desc_t *diff_src_layer_desc, const dnnl_memory_desc_t *diff_src_iter_desc, const dnnl_memory_desc_t *diff_src_iter_c_desc, const dnnl_memory_desc_t *diff_weights_layer_desc, const dnnl_memory_desc_t *diff_weights_iter_desc, const dnnl_memory_desc_t *diff_weights_peephole_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_layer_desc, const dnnl_memory_desc_t *diff_dst_iter_desc, const dnnl_memory_desc_t *diff_dst_iter_c_desc, unsigned flags)
dnnl_status_t DNNL_API dnnl_memory_desc_init_by_strides(dnnl_memory_desc_t *memory_desc, int ndims, const dnnl_dims_t dims, dnnl_data_type_t data_type, const dnnl_dims_t strides)
dnnl_status_t DNNL_API dnnl_dilated_convolution_forward_desc_init(dnnl_convolution_desc_t *conv_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 *weights_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc, const dnnl_dims_t strides, const dnnl_dims_t dilates, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_status_t DNNL_API dnnl_lrn_backward_desc_init(dnnl_lrn_desc_t *lrn_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_data_desc, const dnnl_memory_desc_t *data_desc, dnnl_dim_t local_size, float alpha, float beta, float k)
dnnl_status_t DNNL_API dnnl_layer_normalization_backward_desc_init(dnnl_layer_normalization_desc_t *lnrm_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t *diff_data_desc, const dnnl_memory_desc_t *data_desc, const dnnl_memory_desc_t *stat_desc, float epsilon, unsigned flags)
dnnl_status_t DNNL_API dnnl_primitive_desc_iterator_next(dnnl_primitive_desc_iterator_t iterator)
const void * const_dnnl_op_desc_t
A pointer to any of the operation descriptors (constant variant).
Definition: dnnl_types.h:1837
An opaque structure for primitive descriptor attributes.
dnnl_status_t DNNL_API dnnl_convolution_backward_data_desc_init(dnnl_convolution_desc_t *conv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_engine_kind_t
Kinds of engines.
Definition: dnnl_types.h:2465
dnnl_status_t DNNL_API dnnl_lstm_forward_desc_init_v3(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *src_iter_c_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *weights_peephole_desc, const dnnl_memory_desc_t *weights_projection_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, const dnnl_memory_desc_t *dst_iter_c_desc, unsigned flags)
dnnl_status_t DNNL_API dnnl_memory_destroy(dnnl_memory_t memory)
dnnl_status_t DNNL_API dnnl_memory_get_data_handle(const_dnnl_memory_t memory, void **handle)
dnnl_cpu_isa_hints_t DNNL_API dnnl_get_cpu_isa_hints(void)
dnnl_status_t DNNL_API dnnl_stream_get_engine(const_dnnl_stream_t stream, dnnl_engine_t *engine)
dnnl_status_t DNNL_API dnnl_primitive_attr_destroy(dnnl_primitive_attr_t attr)
A descriptor of a pooling operation.
Definition: dnnl_types.h:2014
dnnl_status_t DNNL_API dnnl_vanilla_rnn_backward_desc_init(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, const dnnl_alg_kind_t activation, const dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, const dnnl_memory_desc_t *diff_src_layer_desc, const dnnl_memory_desc_t *diff_src_iter_desc, const dnnl_memory_desc_t *diff_weights_layer_desc, const dnnl_memory_desc_t *diff_weights_iter_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_layer_desc, const dnnl_memory_desc_t *diff_dst_iter_desc, unsigned flags, float alpha, float beta)
dnnl_status_t DNNL_API dnnl_post_ops_get_params_eltwise(const_dnnl_post_ops_t post_ops, int index, float *scale, dnnl_alg_kind_t *alg_kind, float *alpha, float *beta)
int DNNL_API dnnl_primitive_desc_query_s32(const_dnnl_primitive_desc_t primitive_desc, dnnl_query_t what, int index)
dnnl_status_t DNNL_API dnnl_primitive_attr_get_rnn_data_qparams(const_dnnl_primitive_attr_t attr, float *scale, float *shift)
An opaque structure to describe a primitive descriptor iterator.
dnnl_status_t DNNL_API dnnl_memory_set_data_handle(dnnl_memory_t memory, void *handle)
dnnl_status_t DNNL_API dnnl_stream_create(dnnl_stream_t *stream, dnnl_engine_t engine, unsigned flags)
dnnl_status_t DNNL_API dnnl_memory_desc_permute_axes(dnnl_memory_desc_t *out_memory_desc, const dnnl_memory_desc_t *in_memory_desc, const int *permutation)
dnnl_status_t DNNL_API dnnl_primitive_desc_query(const_dnnl_primitive_desc_t primitive_desc, dnnl_query_t what, int index, void *result)
dnnl_status_t DNNL_API dnnl_memory_unmap_data(const_dnnl_memory_t memory, void *mapped_ptr)
dnnl_status_t DNNL_API dnnl_lstm_forward_desc_init_v2(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *src_iter_c_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *weights_peephole_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, const dnnl_memory_desc_t *dst_iter_c_desc, unsigned flags)
dnnl_status_t DNNL_API dnnl_gru_backward_desc_init(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, const dnnl_memory_desc_t *diff_src_layer_desc, const dnnl_memory_desc_t *diff_src_iter_desc, const dnnl_memory_desc_t *diff_weights_layer_desc, const dnnl_memory_desc_t *diff_weights_iter_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_layer_desc, const dnnl_memory_desc_t *diff_dst_iter_desc, unsigned flags)
dnnl_status_t DNNL_API dnnl_deconvolution_backward_weights_desc_init(dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *diff_weights_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_status_t DNNL_API dnnl_primitive_desc_iterator_create(dnnl_primitive_desc_iterator_t *iterator, const_dnnl_op_desc_t op_desc, const_dnnl_primitive_attr_t attr, dnnl_engine_t engine, const_dnnl_primitive_desc_t hint_forward_primitive_desc)
dnnl_status_t DNNL_API dnnl_post_ops_append_eltwise(dnnl_post_ops_t post_ops, float scale, dnnl_alg_kind_t alg_kind, float alpha, float beta)
Definition: dnnl_types.h:2379
dnnl_status_t DNNL_API dnnl_primitive_attr_get_scales(dnnl_primitive_attr_t attr, int arg, dnnl_dim_t *count, int *mask, const float **scales)
dnnl_status_t DNNL_API dnnl_set_jit_profiling_flags(unsigned flags)
dnnl_status_t DNNL_API dnnl_primitive_attr_set_output_scales(dnnl_primitive_attr_t attr, dnnl_dim_t count, int mask, const float *scales)
dnnl_query_t
Definition: dnnl_types.h:2854
A descriptor of a binary operation.
Definition: dnnl_types.h:2353
dnnl_status_t DNNL_API dnnl_gru_forward_desc_init(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, unsigned flags)
Definition: dnnl_types.h:2974
dnnl_status_t DNNL_API dnnl_primitive_attr_set_zero_points(dnnl_primitive_attr_t attr, int arg, dnnl_dim_t count, int mask, const int32_t *zero_points)
int DNNL_API dnnl_post_ops_len(const_dnnl_post_ops_t post_ops)
dnnl_status_t DNNL_API dnnl_softmax_forward_desc_init(dnnl_softmax_desc_t *softmax_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t *data_desc, int softmax_axis)
A descriptor of a convolution operation.
Definition: dnnl_types.h:1849
dnnl_status_t DNNL_API dnnl_dilated_convolution_backward_weights_desc_init(dnnl_convolution_desc_t *conv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *diff_weights_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t dilates, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_status_t DNNL_API dnnl_sum_primitive_desc_create(dnnl_primitive_desc_t *sum_primitive_desc, const dnnl_memory_desc_t *dst_desc, int n, const float *scales, const dnnl_memory_desc_t *src_descs, const_dnnl_primitive_attr_t attr, dnnl_engine_t engine)
dnnl_scratchpad_mode_t
Scratchpad mode.
Definition: dnnl_types.h:2531
dnnl_status_t DNNL_API dnnl_logsoftmax_backward_desc_init(dnnl_logsoftmax_desc_t *logsoftmax_desc, const dnnl_memory_desc_t *diff_data_desc, const dnnl_memory_desc_t *data_desc, int logsoftmax_axis)
dnnl_status_t DNNL_API dnnl_concat_primitive_desc_create(dnnl_primitive_desc_t *concat_primitive_desc, const dnnl_memory_desc_t *dst_desc, int n, int concat_dimension, const dnnl_memory_desc_t *src_descs, const_dnnl_primitive_attr_t attr, dnnl_engine_t engine)
dnnl_status_t DNNL_API dnnl_lrn_forward_desc_init(dnnl_lrn_desc_t *lrn_desc, dnnl_prop_kind_t prop_kind, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *data_desc, dnnl_dim_t local_size, float alpha, float beta, float k)
dnnl_status_t DNNL_API dnnl_shuffle_backward_desc_init(dnnl_shuffle_desc_t *shuffle_desc, const dnnl_memory_desc_t *diff_data_desc, int axis, dnnl_dim_t group_size)
dnnl_status_t DNNL_API dnnl_primitive_desc_create(dnnl_primitive_desc_t *primitive_desc, const_dnnl_op_desc_t op_desc, const_dnnl_primitive_attr_t attr, dnnl_engine_t engine, const_dnnl_primitive_desc_t hint_forward_primitive_desc)
An opaque structure to describe an engine.
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)
dnnl_status_t DNNL_API dnnl_primitive_attr_set_fpmath_mode(dnnl_primitive_attr_t attr, dnnl_fpmath_mode_t mode)
dnnl_status_t DNNL_API dnnl_reduction_desc_init(dnnl_reduction_desc_t *desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *dst_desc, float p, float eps)
size_t DNNL_API dnnl_memory_desc_get_size(const dnnl_memory_desc_t *memory_desc)
A descriptor of a element-wise operation.
Definition: dnnl_types.h:1924
dnnl_status_t DNNL_API dnnl_post_ops_get_params_sum(const_dnnl_post_ops_t post_ops, int index, float *scale)
A descriptor of a Softmax operation.
Definition: dnnl_types.h:1984
An opaque structure for a chain of post operations.
A descriptor of an inner product operation.
Definition: dnnl_types.h:2215
dnnl_rnn_direction_t
A direction of RNN primitive execution.
Definition: dnnl_types.h:2255
A descriptor of reduction operation.
Definition: dnnl_types.h:2429
dnnl_status_t DNNL_API dnnl_set_default_fpmath_mode(dnnl_fpmath_mode_t mode)
dnnl_status_t DNNL_API dnnl_memory_get_memory_desc(const_dnnl_memory_t memory, const dnnl_memory_desc_t **memory_desc)
dnnl_status_t
Status values returned by the library functions.
Definition: dnnl_types.h:39
dnnl_status_t DNNL_API dnnl_primitive_create(dnnl_primitive_t *primitive, const_dnnl_primitive_desc_t primitive_desc)
dnnl_status_t DNNL_API dnnl_post_ops_destroy(dnnl_post_ops_t post_ops)
const dnnl_memory_desc_t DNNL_API * dnnl_primitive_desc_query_md(const_dnnl_primitive_desc_t primitive_desc, dnnl_query_t what, int index)
dnnl_status_t DNNL_API dnnl_get_default_fpmath_mode(dnnl_fpmath_mode_t *mode)
int64_t dnnl_dim_t
A type to describe tensor dimension.
Definition: dnnl_types.h:1647
dnnl_status_t DNNL_API dnnl_primitive_desc_clone(dnnl_primitive_desc_t *primitive_desc, const_dnnl_primitive_desc_t existing_primitive_desc)
MaskExp< IndexExp, SrcExp, DType > mask(const Exp< IndexExp, DType, e1 > &index, const Exp< SrcExp, DType, e2 > &src)
Definition: mask.h:57
dnnl_status_t DNNL_API dnnl_lstm_backward_desc_init(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *src_iter_c_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, const dnnl_memory_desc_t *dst_iter_c_desc, const dnnl_memory_desc_t *diff_src_layer_desc, const dnnl_memory_desc_t *diff_src_iter_desc, const dnnl_memory_desc_t *diff_src_iter_c_desc, const dnnl_memory_desc_t *diff_weights_layer_desc, const dnnl_memory_desc_t *diff_weights_iter_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_layer_desc, const dnnl_memory_desc_t *diff_dst_iter_desc, const dnnl_memory_desc_t *diff_dst_iter_c_desc, unsigned flags)
dnnl_data_type_t
Data type specification.
Definition: dnnl_types.h:62
dnnl_status_t DNNL_API dnnl_engine_create(dnnl_engine_t *engine, dnnl_engine_kind_t kind, size_t index)
dnnl_status_t DNNL_API dnnl_post_ops_get_params_prelu(const_dnnl_post_ops_t post_ops, int index, int *mask)
dnnl_format_tag_t
Definition: dnnl_types.h:164
dnnl_status_t DNNL_API dnnl_memory_get_engine(const_dnnl_memory_t memory, dnnl_engine_t *engine)
dnnl_status_t DNNL_API dnnl_memory_map_data(const_dnnl_memory_t memory, void **mapped_ptr)
dnnl_status_t DNNL_API dnnl_post_ops_append_binary(dnnl_post_ops_t post_ops, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src1_desc)
dnnl_status_t DNNL_API dnnl_inner_product_backward_data_desc_init(dnnl_inner_product_desc_t *ip_desc, const dnnl_memory_desc_t *diff_src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *diff_dst_desc)
dnnl_status_t DNNL_API dnnl_primitive_attr_get_rnn_weights_projection_qparams(const_dnnl_primitive_attr_t attr, dnnl_dim_t *count, int *mask, const float **scales)
dnnl_status_t DNNL_API dnnl_lstm_backward_desc_init_v3(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *src_iter_c_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *weights_peephole_desc, const dnnl_memory_desc_t *weights_projection_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, const dnnl_memory_desc_t *dst_iter_c_desc, const dnnl_memory_desc_t *diff_src_layer_desc, const dnnl_memory_desc_t *diff_src_iter_desc, const dnnl_memory_desc_t *diff_src_iter_c_desc, const dnnl_memory_desc_t *diff_weights_layer_desc, const dnnl_memory_desc_t *diff_weights_iter_desc, const dnnl_memory_desc_t *diff_weights_peephole_desc, const dnnl_memory_desc_t *diff_weights_projection_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_layer_desc, const dnnl_memory_desc_t *diff_dst_iter_desc, const dnnl_memory_desc_t *diff_dst_iter_c_desc, unsigned flags)
Definition: dnnl_types.h:2090
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)
dnnl_status_t DNNL_API dnnl_post_ops_append_sum_v3(dnnl_post_ops_t post_ops, float scale, int32_t zero_point, dnnl_data_type_t data_type)
A descriptor of a shuffle operation.
Definition: dnnl_types.h:1902
dnnl_status_t DNNL_API dnnl_reorder_primitive_desc_create(dnnl_primitive_desc_t *reorder_primitive_desc, const dnnl_memory_desc_t *src_desc, dnnl_engine_t src_engine, const dnnl_memory_desc_t *dst_desc, dnnl_engine_t dst_engine, const_dnnl_primitive_attr_t attr)
dnnl_status_t DNNL_API dnnl_lbr_gru_backward_desc_init(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, const dnnl_memory_desc_t *diff_src_layer_desc, const dnnl_memory_desc_t *diff_src_iter_desc, const dnnl_memory_desc_t *diff_weights_layer_desc, const dnnl_memory_desc_t *diff_weights_iter_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_layer_desc, const dnnl_memory_desc_t *diff_dst_iter_desc, unsigned flags)
dnnl_status_t DNNL_API dnnl_shuffle_forward_desc_init(dnnl_shuffle_desc_t *shuffle_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t *data_desc, int axis, dnnl_dim_t group_size)
dnnl_status_t DNNL_API dnnl_memory_desc_reshape(dnnl_memory_desc_t *out_memory_desc, const dnnl_memory_desc_t *in_memory_desc, int ndims, const dnnl_dims_t dims)
dnnl_status_t DNNL_API dnnl_set_max_cpu_isa(dnnl_cpu_isa_t isa)
dnnl_status_t DNNL_API dnnl_memory_desc_init_by_tag(dnnl_memory_desc_t *memory_desc, int ndims, const dnnl_dims_t dims, dnnl_data_type_t data_type, dnnl_format_tag_t tag)
dnnl_status_t DNNL_API dnnl_eltwise_forward_desc_init(dnnl_eltwise_desc_t *eltwise_desc, dnnl_prop_kind_t prop_kind, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *data_desc, float alpha, float beta)
dnnl_status_t DNNL_API dnnl_primitive_get_primitive_desc(const_dnnl_primitive_t primitive, const_dnnl_primitive_desc_t *primitive_desc)
int DNNL_API dnnl_memory_desc_equal(const dnnl_memory_desc_t *lhs, const dnnl_memory_desc_t *rhs)
dnnl_status_t DNNL_API dnnl_post_ops_append_dw_k3s1p1(dnnl_post_ops_t post_ops, dnnl_data_type_t weights_data_type, dnnl_data_type_t bias_data_type, dnnl_data_type_t dst_data_type, dnnl_dim_t count, int mask, const float *scales)
dnnl_status_t DNNL_API dnnl_post_ops_append_dw_k3s2p1(dnnl_post_ops_t post_ops, dnnl_data_type_t weights_data_type, dnnl_data_type_t bias_data_type, dnnl_data_type_t dst_data_type, dnnl_dim_t count, int mask, const float *scales)
A descriptor of a Layer Normalization operation.
Definition: dnnl_types.h:2178
dnnl_status_t DNNL_API dnnl_prelu_forward_desc_init(dnnl_prelu_desc_t *prelu_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t *data_desc, const dnnl_memory_desc_t *weights_desc)
dnnl_status_t DNNL_API dnnl_convolution_forward_desc_init(dnnl_convolution_desc_t *conv_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 *weights_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc, const dnnl_dims_t strides, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_status_t DNNL_API dnnl_set_jit_profiling_jitdumpdir(const char *dir)
dnnl_status_t DNNL_API dnnl_primitive_destroy(dnnl_primitive_t primitive)
dnnl_cpu_isa_hints_t
CPU ISA hints flags.
Definition: dnnl_types.h:3050
dnnl_status_t DNNL_API dnnl_dilated_convolution_backward_data_desc_init(dnnl_convolution_desc_t *conv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t dilates, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_status_t DNNL_API dnnl_deconvolution_forward_desc_init(dnnl_deconvolution_desc_t *deconv_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 *weights_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc, const dnnl_dims_t strides, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_status_t DNNL_API dnnl_post_ops_append_sum(dnnl_post_ops_t post_ops, float scale)
dnnl_status_t DNNL_API dnnl_primitive_attr_get_output_scales(const_dnnl_primitive_attr_t attr, dnnl_dim_t *count, int *mask, const float **scales)
dnnl_status_t DNNL_API dnnl_binary_desc_init(dnnl_binary_desc_t *binary_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src0_desc, const dnnl_memory_desc_t *src1_desc, const dnnl_memory_desc_t *dst_desc)
dnnl_fpmath_mode_t
Floating-point math mode.
Definition: dnnl_types.h:2519
dnnl_status_t DNNL_API dnnl_set_jit_dump(int enable)
dnnl_status_t DNNL_API dnnl_memory_set_data_handle_v2(dnnl_memory_t memory, void *handle, dnnl_stream_t stream)
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)
dnnl_status_t DNNL_API dnnl_deconvolution_backward_data_desc_init(dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_cpu_isa_t DNNL_API dnnl_get_effective_cpu_isa(void)
dnnl_status_t DNNL_API dnnl_stream_wait(dnnl_stream_t stream)
dnnl_primitive_kind_t DNNL_API dnnl_post_ops_get_kind(const_dnnl_post_ops_t post_ops, int index)
dnnl_status_t DNNL_API dnnl_batch_normalization_backward_desc_init(dnnl_batch_normalization_desc_t *bnrm_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t *diff_data_desc, const dnnl_memory_desc_t *data_desc, float epsilon, unsigned flags)
dnnl_status_t DNNL_API dnnl_primitive_attr_set_scales(dnnl_primitive_attr_t attr, int arg, dnnl_dim_t count, int mask, const float *scales)
Definition: dnnl_types.h:1760
const dnnl_version_t DNNL_API * dnnl_version(void)
A descriptor of a pooling operation.
Definition: dnnl_types.h:2052
dnnl_status_t DNNL_API dnnl_prelu_backward_desc_init(dnnl_prelu_desc_t *prelu_desc, const dnnl_memory_desc_t *data_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *diff_data_desc, const dnnl_memory_desc_t *diff_weights_desc)
dnnl_status_t DNNL_API dnnl_layer_normalization_forward_desc_init(dnnl_layer_normalization_desc_t *lnrm_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t *data_desc, const dnnl_memory_desc_t *stat_desc, float epsilon, unsigned flags)
dnnl_status_t DNNL_API dnnl_engine_destroy(dnnl_engine_t engine)
dnnl_status_t DNNL_API dnnl_primitive_attr_set_rnn_weights_projection_qparams(dnnl_primitive_attr_t attr, dnnl_dim_t count, int mask, const float *scales)
dnnl_status_t DNNL_API dnnl_softmax_backward_desc_init(dnnl_softmax_desc_t *softmax_desc, const dnnl_memory_desc_t *diff_data_desc, const dnnl_memory_desc_t *data_desc, int softmax_axis)
dnnl_status_t DNNL_API dnnl_primitive_execute(const_dnnl_primitive_t primitive, dnnl_stream_t stream, int nargs, const dnnl_exec_arg_t *args)
dnnl_status_t DNNL_API dnnl_sgemm(char transa, char transb, dnnl_dim_t M, dnnl_dim_t N, dnnl_dim_t K, float alpha, const float *A, dnnl_dim_t lda, const float *B, dnnl_dim_t ldb, float beta, float *C, dnnl_dim_t ldc)
dnnl_status_t DNNL_API dnnl_primitive_attr_set_rnn_weights_qparams(dnnl_primitive_attr_t attr, dnnl_dim_t count, int mask, const float *scales)
Definition: dnnl_types.h:2815
dnnl_status_t DNNL_API dnnl_memory_create(dnnl_memory_t *memory, const dnnl_memory_desc_t *memory_desc, dnnl_engine_t engine, void *handle)
dnnl_status_t DNNL_API dnnl_set_primitive_cache_capacity(int capacity)
dnnl_status_t DNNL_API dnnl_eltwise_backward_desc_init(dnnl_eltwise_desc_t *eltwise_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_data_desc, const dnnl_memory_desc_t *data_desc, float alpha, float beta)
dnnl_status_t DNNL_API dnnl_primitive_attr_set_scratchpad_mode(dnnl_primitive_attr_t attr, dnnl_scratchpad_mode_t mode)
dnnl_status_t DNNL_API dnnl_dilated_deconvolution_backward_weights_desc_init(dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *diff_weights_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t dilates, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
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)
dnnl_status_t DNNL_API dnnl_get_primitive_cache_capacity(int *capacity)
dnnl_alg_kind_t
Kinds of algorithms.
Definition: dnnl_types.h:1388
dnnl_status_t DNNL_API dnnl_primitive_desc_destroy(dnnl_primitive_desc_t primitive_desc)
dnnl_status_t DNNL_API dnnl_post_ops_create(dnnl_post_ops_t *post_ops)
A descriptor of a Local Response Normalization (LRN) operation.
Definition: dnnl_types.h:2114
dnnl_dim_t dnnl_dims_t[DNNL_MAX_NDIMS]
A type to describe tensor dimensions.
Definition: dnnl_types.h:1650
dnnl_status_t DNNL_API dnnl_engine_get_kind(dnnl_engine_t engine, dnnl_engine_kind_t *kind)
dnnl_status_t DNNL_API dnnl_primitive_attr_clone(dnnl_primitive_attr_t *attr, const_dnnl_primitive_attr_t existing_attr)
dnnl_status_t DNNL_API dnnl_primitive_attr_get_rnn_weights_qparams(const_dnnl_primitive_attr_t attr, dnnl_dim_t *count, int *mask, const float **scales)
dnnl_status_t DNNL_API dnnl_primitive_desc_iterator_destroy(dnnl_primitive_desc_iterator_t iterator)
dnnl_status_t DNNL_API dnnl_post_ops_get_params_sum_v3(const_dnnl_post_ops_t post_ops, int index, float *scale, int32_t *zero_point, dnnl_data_type_t *data_type)
dnnl_status_t DNNL_API dnnl_logsoftmax_forward_desc_init(dnnl_logsoftmax_desc_t *logsoftmax_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t *data_desc, int logsoftmax_axis)
dnnl_status_t DNNL_API dnnl_inner_product_backward_weights_desc_init(dnnl_inner_product_desc_t *ip_desc, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *diff_weights_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_desc)
A descriptor of a Batch Normalization operation.
Definition: dnnl_types.h:2145
dnnl_status_t DNNL_API dnnl_lbr_gru_forward_desc_init(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, unsigned flags)
dnnl_status_t DNNL_API dnnl_matmul_desc_init(dnnl_matmul_desc_t *matmul_desc, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc)
dnnl_primitive_desc_t DNNL_API dnnl_primitive_desc_iterator_fetch(const_dnnl_primitive_desc_iterator_t iterator)
size_t DNNL_API dnnl_engine_get_count(dnnl_engine_kind_t kind)
An opaque structure to describe a primitive descriptor.
dnnl_status_t DNNL_API dnnl_resampling_backward_desc_init(dnnl_resampling_desc_t *resampling_desc, dnnl_alg_kind_t alg_kind, const float *factors, const dnnl_memory_desc_t *diff_src_desc, const dnnl_memory_desc_t *diff_dst_desc)
dnnl_status_t DNNL_API dnnl_post_ops_append_sum_v2(dnnl_post_ops_t post_ops, float scale, dnnl_data_type_t data_type)
dnnl_status_t DNNL_API dnnl_set_cpu_isa_hints(dnnl_cpu_isa_hints_t isa_hints)
dnnl_status_t DNNL_API dnnl_memory_desc_init_submemory(dnnl_memory_desc_t *memory_desc, const dnnl_memory_desc_t *parent_memory_desc, const dnnl_dims_t dims, const dnnl_dims_t offsets)
A descriptor of resampling operation.
Definition: dnnl_types.h:2401
dnnl_status_t DNNL_API dnnl_set_verbose(int level)
dnnl_status_t DNNL_API dnnl_primitive_attr_get_post_ops(const_dnnl_primitive_attr_t attr, const_dnnl_post_ops_t *post_ops)
dnnl_status_t DNNL_API dnnl_post_ops_append_prelu(dnnl_post_ops_t post_ops, int mask)
dnnl_status_t DNNL_API dnnl_post_ops_get_params_sum_v2(const_dnnl_post_ops_t post_ops, int index, float *scale, dnnl_data_type_t *data_type)
dnnl_prop_kind_t
Kinds of propagation.
Definition: dnnl_types.h:1307
dnnl_status_t DNNL_API dnnl_batch_normalization_forward_desc_init(dnnl_batch_normalization_desc_t *bnrm_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t *data_desc, float epsilon, unsigned flags)
dnnl_status_t DNNL_API dnnl_stream_destroy(dnnl_stream_t stream)
dnnl_status_t DNNL_API dnnl_vanilla_rnn_forward_desc_init(dnnl_rnn_desc_t *rnn_desc, dnnl_prop_kind_t prop_kind, const dnnl_alg_kind_t activation, const dnnl_rnn_direction_t direction, const dnnl_memory_desc_t *src_layer_desc, const dnnl_memory_desc_t *src_iter_desc, const dnnl_memory_desc_t *weights_layer_desc, const dnnl_memory_desc_t *weights_iter_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_layer_desc, const dnnl_memory_desc_t *dst_iter_desc, unsigned flags, float alpha, float beta)
dnnl_status_t DNNL_API dnnl_inner_product_forward_desc_init(dnnl_inner_product_desc_t *ip_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc)
dnnl_status_t DNNL_API dnnl_resampling_forward_desc_init(dnnl_resampling_desc_t *resampling_desc, dnnl_prop_kind_t prop_kind, dnnl_alg_kind_t alg_kind, const float *factors, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *dst_desc)
dnnl_status_t DNNL_API dnnl_primitive_attr_get_zero_points(const_dnnl_primitive_attr_t attr, int arg, dnnl_dim_t *count, int *mask, const int32_t **zero_points)
dnnl_status_t DNNL_API dnnl_primitive_attr_get_fpmath_mode(const_dnnl_primitive_attr_t attr, dnnl_fpmath_mode_t *mode)
dnnl_cpu_isa_t
CPU instruction set flags.
Definition: dnnl_types.h:3004
dnnl_status_t DNNL_API dnnl_dilated_deconvolution_backward_data_desc_init(dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t dilates, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)
dnnl_status_t DNNL_API dnnl_primitive_attr_set_post_ops(dnnl_primitive_attr_t attr, const_dnnl_post_ops_t post_ops)
dnnl_status_t DNNL_API dnnl_primitive_attr_get_scratchpad_mode(const_dnnl_primitive_attr_t attr, dnnl_scratchpad_mode_t *mode)
dnnl_status_t DNNL_API dnnl_dilated_deconvolution_forward_desc_init(dnnl_deconvolution_desc_t *deconv_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 *weights_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc, const dnnl_dims_t strides, const dnnl_dims_t dilates, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r)