Files
openvino/src/bindings/c
Sun Xiaoxia 988a8dd6a9 Xiaoxia/Optimize the streams calculation process (#15777)
* 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>
2023-03-29 18:26:27 +08:00
..

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 contribute to the OpenVINO repository

See CONTRIBUTING for details.

See also