mxnet
dnnl_threadpool.h
Go to the documentation of this file.
1 /*******************************************************************************
2 * Copyright 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 
17 #ifndef ONEAPI_DNNL_DNNL_THREADPOOL_H
18 #define ONEAPI_DNNL_DNNL_THREADPOOL_H
19 
20 #include "oneapi/dnnl/dnnl_config.h"
21 #include "oneapi/dnnl/dnnl_types.h"
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
29 
32 
35 
47  dnnl_stream_t *stream, dnnl_engine_t engine, void *threadpool);
48 
60  dnnl_stream_t astream, void **threadpool);
61 
65 dnnl_status_t DNNL_API dnnl_threadpool_interop_sgemm(char transa, char transb,
66  dnnl_dim_t M, dnnl_dim_t N, dnnl_dim_t K, float alpha, const float *A,
67  dnnl_dim_t lda, const float *B, dnnl_dim_t ldb, float beta, float *C,
68  dnnl_dim_t ldc, void *threadpool);
69 
74  char transb, char offsetc, dnnl_dim_t M, dnnl_dim_t N, dnnl_dim_t K,
75  float alpha, const uint8_t *A, dnnl_dim_t lda, uint8_t ao,
76  const int8_t *B, dnnl_dim_t ldb, int8_t bo, float beta, int32_t *C,
77  dnnl_dim_t ldc, const int32_t *co, void *threadpool);
78 
83  char transb, char offsetc, dnnl_dim_t M, dnnl_dim_t N, dnnl_dim_t K,
84  float alpha, const int8_t *A, dnnl_dim_t lda, int8_t ao,
85  const int8_t *B, dnnl_dim_t ldb, int8_t bo, float beta, int32_t *C,
86  dnnl_dim_t ldc, const int32_t *co, void *threadpool);
87 
89 
91 
93 
94 #ifdef __cplusplus
95 }
96 #endif
97 
98 #endif
dnnl_status_t
dnnl_status_t
Status values returned by the library functions.
Definition: dnnl_types.h:39
dnnl_engine
An opaque structure to describe an engine.
dnnl_threadpool_interop_gemm_u8s8s32
dnnl_status_t DNNL_API dnnl_threadpool_interop_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, void *threadpool)
dnnl_threadpool_interop_stream_get_threadpool
dnnl_status_t DNNL_API dnnl_threadpool_interop_stream_get_threadpool(dnnl_stream_t astream, void **threadpool)
dnnl_dim_t
int64_t dnnl_dim_t
A type to describe tensor dimension.
Definition: dnnl_types.h:1679
dnnl_threadpool_interop_sgemm
dnnl_status_t DNNL_API dnnl_threadpool_interop_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, void *threadpool)
dnnl_types.h
dnnl_threadpool_interop_gemm_s8s8s32
dnnl_status_t DNNL_API dnnl_threadpool_interop_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, void *threadpool)
dnnl_stream
dnnl_threadpool_interop_stream_create
dnnl_status_t DNNL_API dnnl_threadpool_interop_stream_create(dnnl_stream_t *stream, dnnl_engine_t engine, void *threadpool)