clDNN
Execution Engine
Collaboration diagram for Execution Engine:

Classes

struct  cldnn_engine_configuration
 Configuration parameters for created engine. More...
 
struct  cldnn_engine_info
 Information about the engine returned by cldnn_get_engine_info(). More...
 

Typedefs

typedef struct cldnn_engine_impl * cldnn_engine
 Engine object.
 

Enumerations

enum  cldnn_engine_type { cldnn_engine_ocl }
 Defines available engine types. More...
 

Functions

CLDNN_API uint32_t cldnn_get_engine_count (int32_t type, cldnn_status *status)
 number of available engines of the particular type
 
CLDNN_API cldnn_engine cldnn_create_engine (int32_t type, uint32_t engine_num, const cldnn_engine_configuration *configuration, cldnn_status *status)
 Create new engine of the specified type, engine_num, and configuration options. More...
 
CLDNN_API void cldnn_retain_engine (cldnn_engine engine, cldnn_status *status)
 Increment reference counter for the engine object.
 
CLDNN_API void cldnn_release_engine (cldnn_engine engine, cldnn_status *status)
 Decrement reference counter for the engine object. Deletes object when counter becomes zero.
 
CLDNN_API cldnn_engine_info cldnn_get_engine_info (cldnn_engine engine, cldnn_status *status)
 Returns engine information. See cldnn_engine_info for details.
 
CLDNN_API int32_t cldnn_get_engine_type (cldnn_engine engine, cldnn_status *status)
 Returns the cldnn_engine_type for the particular engine.
 

Detailed Description


Class Documentation

◆ cldnn_engine_configuration

struct cldnn_engine_configuration

Configuration parameters for created engine.

Definition at line 131 of file cldnn.h.

Class Members
const char * compiler_options OpenCL compiler options string.
uint32_t dump_custom_program dump the custom generated program to files
uint32_t enable_parallelisation Enables parallel execution of primitives which don't depend on each other. Disabled by default.
uint32_t enable_profiling Enable per-primitive profiling.
const char * engine_log Specifies a file to which engine log should be dumped. Null/empty values means no logging.
uint32_t meaningful_kernels_names Generate meaniful names fo OpenCL kernels.
uint32_t priority_mode Placeholder for priority mode (support of priority hints in command queue). Currently ignored.
const char * single_kernel_name If provided, runs specific layer.
const char * sources_dumps_dir Specifies a directory where sources of cldnn::program objects should be dumped. Null/empty values means no loggins.

◆ cldnn_engine_info

struct cldnn_engine_info

Information about the engine returned by cldnn_get_engine_info().

Definition at line 145 of file cldnn.h.

Class Members
uint32_t core_frequency Clock frequency in MHz.
uint32_t cores_count Number of available HW cores.
uint64_t max_alloc_mem_size Maximum size of memory object allocation in bytes.
uint64_t max_global_mem_size Maximum size of global device memory in bytes.
uint64_t max_local_mem_size Maximum size of local memory arena in bytes.
uint64_t max_work_group_size Maximum number of work-items in a work-group executing a kernel using the data parallel execution model.
uint8_t supports_fp16 Does engine support FP16.
uint8_t supports_fp16_denorms Does engine support denormalized FP16.
uint8_t supports_subgroups_short Does engine support cl_intel_subgroups_short.

Enumeration Type Documentation

◆ cldnn_engine_type

Defines available engine types.

Enumerator
cldnn_engine_ocl 

OpenCL engine.

Definition at line 125 of file cldnn.h.

Function Documentation

◆ cldnn_create_engine()

CLDNN_API cldnn_engine cldnn_create_engine ( int32_t  type,
uint32_t  engine_num,
const cldnn_engine_configuration configuration,
cldnn_status status 
)

Create new engine of the specified type, engine_num, and configuration options.

Parameters
[in]typeEngine type cldnn_engine_type. Only OCL engine is supported.
[in]engine_numEngine index. Should be 0.
[in]configurationPointer to engine configuration options.