ONE - On-device Neural Engine
Loading...
Searching...
No Matches
ExternalContext.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2020 Samsung Electronics Co., Ltd. All Rights Reserved
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 __ONERT_BACKEND_CPU_EXTERNAL_CONTEXT_H__
18
#define __ONERT_BACKEND_CPU_EXTERNAL_CONTEXT_H__
19
20
#include <
util/ConfigSource.h
>
21
#include <ruy/context.h>
22
#include <ggml.h>
23
24
#include <memory>
25
26
namespace
onert
27
{
28
namespace
backend
29
{
30
namespace
cpu
31
{
32
33
class
ExternalContext
34
{
35
public
:
36
ExternalContext
();
37
38
public
:
39
void
setMaxNumThreads
(
int
max_num_threads);
40
41
int32_t
maxNumThreads
()
const
{
return
_max_num_threads; }
42
43
void
initGgmlContext
();
44
45
ruy::Context *
ruy_context
()
const
{
return
_ruy_context.get(); }
46
47
private
:
48
int32_t _max_num_threads;
49
const
std::unique_ptr<ruy::Context> _ruy_context;
50
std::unique_ptr<ggml_context,
decltype
(&ggml_free)> _ggml_context{
nullptr
, &ggml_free};
51
};
52
53
}
// namespace cpu
54
}
// namespace backend
55
}
// namespace onert
56
57
#endif
// __ONERT_BACKEND_CPU_EXTERNAL_CONTEXT_H__
ConfigSource.h
onert::backend::cpu::ExternalContext
Definition
ExternalContext.h:34
onert::backend::cpu::ExternalContext::maxNumThreads
int32_t maxNumThreads() const
Definition
ExternalContext.h:41
onert::backend::cpu::ExternalContext::setMaxNumThreads
void setMaxNumThreads(int max_num_threads)
Definition
ExternalContext.cc:71
onert::backend::cpu::ExternalContext::ExternalContext
ExternalContext()
Definition
ExternalContext.cc:66
onert::backend::cpu::ExternalContext::ruy_context
ruy::Context * ruy_context() const
Definition
ExternalContext.h:45
onert::backend::cpu::ExternalContext::initGgmlContext
void initGgmlContext()
Definition
ExternalContext.cc:77
onert
Definition
CustomKernel.cc:20
runtime
onert
backend
cpu
ExternalContext.h
Generated by
1.9.8