* add _big_core_logic_streams * modify core binding with cpu mapping table * get _cpu_ids with querying cpu_mapping_table * fix mac build issue * fix cpu func test issue * fix clang-format issue * remove getCoreOffset and getThreadStep * motify return false from cpuMapAvailable on windows * remove core binding in latency mode * add bind core on windows * add model prefer threads * modify streams calculating schedule in ApplyPerformanceHints * modify MakeDefaultMultiThreaded and Stream * add unified cpu binding with cpu_mapping on linux and windows. add GPU core binding interface. modify streams calculation scheduling * fix code style issue * modify default streams to 1 to fix ci test issue * add SetStreamtoConfig, modify getNumOfAvailableCPUCores to fix continuous call loadnetwork issue * modify code according to comments * fix build issue on macos * fix macos error * fix cputest issue * fix build issue on macos * move features about CPU to lin_system_config.cpp * fix code style * fix bebian_arm build failed issue * fix macos build issue * fix code style * fix test issue on windows * fix code style * add latency in hybrid_aware condition * add the condition used all cores in latency mode * fix code style * fix code style * add init_cpu * fix code style * fix streams=2 issue * fix multi gpu core bind issue * modify interface * fix debian arm build issue * add bind core in different socket * fix code style * fix build issue on windows * fix GPU set_executor_config sync issue * fix latency issue * fix bind_cores issue * modify model prefer on tigerlake machine * modify according to comments * fix code style * modify GPU reserve CPU interface, remove bind core on windows feater * fix code style * add 3rd type core in cpu_mapping_table * fix build issue * update test case * modify core bind behavior in latency mode * remove 3rd core type function * update format * add lock in get_task_flag * not bind core in latency mode * change model_prefer to 0 with latency mode on core machine. bind core with latency mode on core machine * remove a void thread * modify condition of create task_area * modify comments * fix according to comments * fix spelling mistake * fix according to comments * fix code style --------- Co-authored-by: Shen, Wanglei <wanglei.shen@intel.com>
OpenVINO C API
OpenVINO C API is a key part of the OpenVINO extension for C API users. This component provides C API for OpenVINO Toolkit.
flowchart LR
c_application[("C Application")]
openvino_c{{openvino::c}}
openvino{{openvino}}
style c_application fill:#427cb0
style openvino_c fill:#6c9f7f
style openvino fill:#6c9f7f
c_application-->openvino_c-->openvino
OpenVINO C API uses the common coding style rules.
Key contacts
People from the openvino-c-api-maintainers group have the rights to approve and merge PRs to the C API component. They can assist with any questions about C API component.
Components
OpenVINO C API has the following structure:
- docs contains developer documentation for OpenVINO C APIs.
- include contains all provided C API headers. Learn more.
- src contains the implementations of all C APIs.
- tests contains all tests for OpenVINO C APIs. Learn more.
Note
: Using API 2.0 is strongly recommended. Legacy API (for C) header file, source file, unit test are also included in the component, but the legacy API is no longer extended.
Tutorials
- How to integrate OpenVINO C API with Your Application
- How to wrap OpenVINO objects with C
- How to wrap OpenVINO interfaces with C
- Samples implemented by OpenVINO C API
- How to debug C API issues
- How to write unit test
How to contribute to the OpenVINO repository
See CONTRIBUTING for details.