• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /**
2  * Copyright 2021 Huawei Technologies Co., Ltd
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 #include "coder/generator/component/const_blocks/thread_pool.h"
18 
19 namespace mindspore::lite::micro {
20 const char thread_header[] = R"RAW(
21 /**
22  * Copyright 2021 Huawei Technologies Co., Ltd
23  *
24  * Licensed under the Apache License, Version 2.0 (the "License");
25  * you may not use this file except in compliance with the License.
26  * You may obtain a copy of the License at
27  *
28  * http://www.apache.org/licenses/LICENSE-2.0
29  *
30  * Unless required by applicable law or agreed to in writing, software
31  * distributed under the License is distributed on an "AS IS" BASIS,
32  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
33  * See the License for the specific language governing permissions and
34  * limitations under the License.
35  */
36 
37 #ifndef MINDSPORE_LITE_MICRO_CODER_THREAD_WRAPPER_H
38 #define MINDSPORE_LITE_MICRO_CODER_THREAD_WRAPPER_H
39 
40 #ifdef __cplusplus
41 extern "C" {
42 #endif
43 
44 int CreateThreadPool(int thread_num);
45 
46 int SetCoreAffinity(int bind_mode);
47 
48 int GetCurrentThreadNum();
49 
50 int ParallelLaunch(int (*func)(void *, int, float, float), void *content, int task_num);
51 
52 void ClearThreadPool();
53 
54 #ifdef __cplusplus
55 }
56 #endif
57 
58 #endif  // MINDSPORE_LITE_MICRO_CODER_THREAD_WRAPPER_H
59 
60 )RAW";
61 }  // namespace mindspore::lite::micro
62