Functions
System configuration utilities

API to get information about the system, core processor capabilities. More...

Functions

bool InferenceEngine::checkOpenMpEnvVars (bool includeOMPNumThreads=true)
 Checks whether OpenMP environment variables are defined. More...
 
std::vector< int > InferenceEngine::getAvailableNUMANodes ()
 Returns available CPU NUMA nodes (on Linux, and Windows [only with TBB], single node is assumed on all other OSes) More...
 
int InferenceEngine::getNumberOfCPUCores ()
 Returns number of CPU physical cores on Linux/Windows (which is considered to be more performance friendly for servers) (on other OSes it simply relies on the original parallel API of choice, which usually uses the logical cores ) More...
 
bool InferenceEngine::with_cpu_x86_sse42 ()
 Checks whether CPU supports SSE 4.2 capability. More...
 
bool InferenceEngine::with_cpu_x86_avx ()
 Checks whether CPU supports AVX capability. More...
 
bool InferenceEngine::with_cpu_x86_avx2 ()
 Checks whether CPU supports AVX2 capability. More...
 
bool InferenceEngine::with_cpu_x86_avx512f ()
 Checks whether CPU supports AVX 512 capability. More...
 
bool InferenceEngine::with_cpu_x86_avx512_core ()
 Checks whether CPU supports AVX 512 capability. More...
 
bool InferenceEngine::with_cpu_x86_bfloat16 ()
 Checks whether CPU supports BFloat16 capability. More...
 

Detailed Description

API to get information about the system, core processor capabilities.

Function Documentation

◆ checkOpenMpEnvVars()

bool InferenceEngine::checkOpenMpEnvVars ( bool  includeOMPNumThreads = true)

Checks whether OpenMP environment variables are defined.

Parameters
[in]includeOMPNumThreadsIndicates if the omp number threads is included
Returns
True if any OpenMP environment variable is defined, false otherwise

◆ getAvailableNUMANodes()

std::vector<int> InferenceEngine::getAvailableNUMANodes ( )

Returns available CPU NUMA nodes (on Linux, and Windows [only with TBB], single node is assumed on all other OSes)

Returns
NUMA nodes

◆ getNumberOfCPUCores()

int InferenceEngine::getNumberOfCPUCores ( )

Returns number of CPU physical cores on Linux/Windows (which is considered to be more performance friendly for servers) (on other OSes it simply relies on the original parallel API of choice, which usually uses the logical cores )

Returns
Number of physical CPU cores.

◆ with_cpu_x86_avx()

bool InferenceEngine::with_cpu_x86_avx ( )

Checks whether CPU supports AVX capability.

Returns
True is AVX instructions are available, false otherwise

◆ with_cpu_x86_avx2()

bool InferenceEngine::with_cpu_x86_avx2 ( )

Checks whether CPU supports AVX2 capability.

Returns
True is AVX2 instructions are available, false otherwise

◆ with_cpu_x86_avx512_core()

bool InferenceEngine::with_cpu_x86_avx512_core ( )

Checks whether CPU supports AVX 512 capability.

Returns
True is AVX512F, AVX512BW, AVX512DQ instructions are available, false otherwise

◆ with_cpu_x86_avx512f()

bool InferenceEngine::with_cpu_x86_avx512f ( )

Checks whether CPU supports AVX 512 capability.

Returns
True is AVX512F (foundation) instructions are available, false otherwise

◆ with_cpu_x86_bfloat16()

bool InferenceEngine::with_cpu_x86_bfloat16 ( )

Checks whether CPU supports BFloat16 capability.

Returns
True is tAVX512_BF16 instructions are available, false otherwise

◆ with_cpu_x86_sse42()

bool InferenceEngine::with_cpu_x86_sse42 ( )

Checks whether CPU supports SSE 4.2 capability.

Returns
True is SSE 4.2 instructions are available, false otherwise