Public Types | Public Member Functions | Static Public Member Functions | Data Fields
InferenceEngine::IStreamsExecutor::Config Struct Reference

Defines IStreamsExecutor configuration. More...

#include <ie_istreams_executor.hpp>

Public Types

enum  PreferredCoreType {
  ANY ,
  LITTLE ,
  BIG ,
  ROUND_ROBIN
}
 

Public Member Functions

std::vector< std::string > SupportedKeys ()
 Supported Configuration keys. More...
 
void SetConfig (const std::string &key, const std::string &value)
 Parses configuration key/value pair. More...
 
Parameter GetConfig (const std::string &key)
 Return configuration value. More...
 
 Config (std::string name="StreamsExecutor", int streams=1, int threadsPerStream=0, ThreadBindingType threadBindingType=ThreadBindingType::NONE, int threadBindingStep=1, int threadBindingOffset=0, int threads=0, PreferredCoreType threadPreferredCoreType=PreferredCoreType::ANY)
 A constructor with arguments. More...
 

Static Public Member Functions

static Config MakeDefaultMultiThreaded (const Config &initial, const bool fp_intesive=true)
 Create appropriate multithreaded configuration filing unconfigured values from initial configuration using hardware properties. More...
 

Data Fields

std::string _name
 Used by ITT to name executor threads.
 
int _streams = 1
 Number of streams.
 
int _threadsPerStream = 0
 Number of threads per stream that executes ie_parallel calls.
 
ThreadBindingType _threadBindingType = ThreadBindingType::NONE
 Thread binding to hardware resource type. No binding by default.
 
int _threadBindingStep = 1
 In case of CORES binding offset type thread binded to cores with defined step.
 
int _threadBindingOffset = 0
 In case of CORES binding offset type thread binded to cores starting from offset.
 
int _threads = 0
 Number of threads distributed between streams. Reserved. Should not be used.
 
enum InferenceEngine::IStreamsExecutor::Config::PreferredCoreType _threadPreferredCoreType = PreferredCoreType::ANY
 In case of HYBRID_AWARE hints the TBB to affinitize.
 

Detailed Description

Defines IStreamsExecutor configuration.

Constructor & Destructor Documentation

◆ Config()

InferenceEngine::IStreamsExecutor::Config::Config ( std::string  name = "StreamsExecutor",
int  streams = 1,
int  threadsPerStream = 0,
ThreadBindingType  threadBindingType = ThreadBindingType::NONE,
int  threadBindingStep = 1,
int  threadBindingOffset = 0,
int  threads = 0,
PreferredCoreType  threadPreferredCoreType = PreferredCoreType::ANY 
)
inline

A constructor with arguments.

Parameters
[in]nameThe executor name
[in]streamsNumber of streams.
[in]threadsPerStreamNumber of threads per stream that executes ie_parallel calls.
[in]threadBindingTypeThread binding to hardware resource type. No binding by default.
[in]threadBindingStepIn case of CORES binding offset type thread binded to cores with defined step.
[in]threadBindingOffsetIn case of CORES binding offset type thread binded to cores starting from offset.
[in]threadsNumber of threads distributed between streams. Reserved. Should not be used.
[in]threadPreferBigCores

Member Function Documentation

◆ GetConfig()

Parameter InferenceEngine::IStreamsExecutor::Config::GetConfig ( const std::string &  key)

Return configuration value.

Parameters
keyconfiguration key
Returns
configuration value wrapped into Parameter

◆ MakeDefaultMultiThreaded()

static Config InferenceEngine::IStreamsExecutor::Config::MakeDefaultMultiThreaded ( const Config initial,
const bool  fp_intesive = true 
)
static

Create appropriate multithreaded configuration filing unconfigured values from initial configuration using hardware properties.

Parameters
initialInital configuration
fp_intesiveadditional hint for the the (Hybrid) core-types selection logic whether the executor should be configured for floating point intensive work (as opposite to int8 intensive)
Returns
configured values

◆ SetConfig()

void InferenceEngine::IStreamsExecutor::Config::SetConfig ( const std::string &  key,
const std::string &  value 
)

Parses configuration key/value pair.

Parameters
keyconfiguration key
valueconfiguration values

◆ SupportedKeys()

std::vector<std::string> InferenceEngine::IStreamsExecutor::Config::SupportedKeys ( )

Supported Configuration keys.

Returns
vector of supported configuration keys

The documentation for this struct was generated from the following file: