ONE - On-device Neural Engine
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
onert::backend::cpu::ExternalContext Class Reference

#include <ExternalContext.h>

Public Member Functions

 ExternalContext ()
 
void setMaxNumThreads (int max_num_threads)
 
int32_t maxNumThreads () const
 
void initGgmlContext ()
 
ruy::Context * ruy_context () const
 

Detailed Description

Definition at line 29 of file ExternalContext.h.

Constructor & Destructor Documentation

◆ ExternalContext()

onert::backend::cpu::ExternalContext::ExternalContext ( )

Definition at line 62 of file ExternalContext.cc.

62 : _ruy_context(new ruy::Context)
63{
64 setMaxNumThreads(onert::util::getConfigInt(onert::util::config::NUM_THREADS));
65}
void setMaxNumThreads(int max_num_threads)
int getConfigInt(const std::string &key)

References onert::util::getConfigInt(), and setMaxNumThreads().

Member Function Documentation

◆ initGgmlContext()

void onert::backend::cpu::ExternalContext::initGgmlContext ( )

Definition at line 73 of file ExternalContext.cc.

74{
75 if (_ggml_context == nullptr)
76 _ggml_context = std::unique_ptr<ggml_context, decltype(&ggml_free)>(
77 ggml_init({.mem_size = 0, .mem_buffer = nullptr, .no_alloc = true}), &ggml_free);
78}

Referenced by onert::backend::cpu::ops::GatherLayer::configure().

◆ maxNumThreads()

int32_t onert::backend::cpu::ExternalContext::maxNumThreads ( ) const
inline

Definition at line 37 of file ExternalContext.h.

37{ return _max_num_threads; }

◆ ruy_context()

ruy::Context * onert::backend::cpu::ExternalContext::ruy_context ( ) const
inline

Definition at line 41 of file ExternalContext.h.

41{ return _ruy_context.get(); }

◆ setMaxNumThreads()

void onert::backend::cpu::ExternalContext::setMaxNumThreads ( int  max_num_threads)

Definition at line 67 of file ExternalContext.cc.

68{
69 _max_num_threads = max_num_threads > -1 ? max_num_threads : countPhysicalCores();
70 _ruy_context->set_max_num_threads(_max_num_threads);
71}

Referenced by ExternalContext().


The documentation for this class was generated from the following files: