Skip to content

Commit 740581d

Browse files
Merge branch 'releases/2024/3' into xufang/enable_CFG_for_tbb
2 parents 9860eb6 + 49400d7 commit 740581d

File tree

412 files changed

+28676
-41464
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

412 files changed

+28676
-41464
lines changed

.github/CODEOWNERS

+9-7
Original file line numberDiff line numberDiff line change
@@ -116,16 +116,18 @@
116116
# Documentation
117117
/docs/ @openvinotoolkit/openvino-docs-maintainers
118118
/docs/CMakeLists.txt @openvinotoolkit/openvino-ie-maintainers
119+
/**/*.rst @openvinotoolkit/openvino-docs-maintainers
119120
/**/*.md @openvinotoolkit/openvino-docs-maintainers
120121
/**/*.svg @openvinotoolkit/openvino-docs-maintainers
121-
/docs/MO_DG/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-mo-maintainers
122-
/docs/OV_Runtime_UG/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-maintainers
123-
/docs/IE_PLUGIN_DG/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-maintainers
124-
/docs/Extensibility_UG/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-maintainers
122+
/docs/openvino-workflow/model-preparation/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ovc-maintainers
123+
/docs/openvino-workflow/running-inference/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-maintainers
124+
/docs/openvino-extensibility/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-maintainers
125125
/docs/snippets/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-maintainers
126-
/docs/OV_Runtime_UG/supported_plugins/ARM_CPU.md @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino_contrib-arm_plugin-maintainers
127-
/docs/OV_Runtime_UG/supported_plugins/CPU.md @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-cpu-maintainers
128-
/docs/OV_Runtime_UG/supported_plugins/GPU*.md @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-gpu-maintainers
126+
/docs/articles_en/assets/snippets/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-maintainers
127+
/docs/openvino-workflow/running-inference/inference-devices-and-modes/cpu-device.rst @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-cpu-maintainers
128+
/docs/openvino-workflow/running-inference/inference-devices-and-modes/cpu-device/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-cpu-maintainers
129+
/docs/openvino-workflow/running-inference/inference-devices-and-modes/gpu-device.rst @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-gpu-maintainers
130+
/docs/openvino-workflow/running-inference/inference-devices-and-modes/gpu-device/ @openvinotoolkit/openvino-docs-maintainers @openvinotoolkit/openvino-ie-gpu-maintainers
129131

130132
# Configuration management
131133
/**/setup.py @openvinotoolkit/openvino-configuration-mgmt

.github/dockerfiles/docker_tag

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
pr-25303
1+
pr-26077

.github/workflows/code_snippets.yml

+8-1
Original file line numberDiff line numberDiff line change
@@ -46,4 +46,11 @@ jobs:
4646
run: cmake -DCMAKE_BUILD_TYPE=Release -DTHREADING=SEQ -B build
4747

4848
- name: Build snippets
49-
run: cmake --build build --target openvino_docs_snippets --parallel
49+
if: ${{ runner.os == 'Linux' || runner.os == 'macOS'}}
50+
run: cmake --build build --target openvino_docs_snippets --parallel $(nproc)
51+
52+
- name: Build snippets Windows
53+
if: ${{ runner.os == 'Windows'}}
54+
shell: pwsh
55+
run: cmake --build build --target openvino_docs_snippets --parallel $ENV:NUMBER_OF_PROCESSORS
56+

CMakeLists.txt

+3
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,9 @@ endif()
9292
if(NOT OV_LIBC_VERSION VERSION_EQUAL 0.0)
9393
message (STATUS "LIBC_VERSION .......................... " ${OV_LIBC_VERSION})
9494
endif()
95+
if(DEFINED OPENVINO_STDLIB)
96+
message (STATUS "STDLIB ................................ " ${OPENVINO_STDLIB})
97+
endif()
9598

9699
# remove file with exported targets to force its regeneration
97100
file(REMOVE "${CMAKE_BINARY_DIR}/OpenVINOTargets.cmake")

README.md

+13
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ You can ask questions and get support on:
115115
* OpenVINO channels on the [Intel DevHub Discord server](https://discord.gg/7pVRxUwdWG).
116116
* The [`openvino`](https://stackoverflow.com/questions/tagged/openvino) tag on Stack Overflow\*.
117117

118+
118119
## Additional Resources
119120

120121
* [Product Page](https://software.intel.com/content/www/us/en/develop/tools/openvino-toolkit.html)
@@ -123,6 +124,18 @@ You can ask questions and get support on:
123124
* [OpenVINO™ toolkit on Medium](https://medium.com/@openvino)
124125

125126

127+
## Telemetry
128+
129+
OpenVINO™ collects software performance and usage data for the purpose of improving OpenVINO™ tools.
130+
This data is collected directly by OpenVINO™ or through the use of Google Analytics 4.
131+
You can opt-out at any time by running the command:
132+
133+
``` bash
134+
opt_in_out --opt_out
135+
```
136+
137+
More Information is available at [OpenVINO™ Telemetry](https://docs.openvino.ai/2024/about-openvino/additional-resources/telemetry.html).
138+
126139
## License
127140

128141
OpenVINO™ Toolkit is licensed under [Apache License Version 2.0](LICENSE).

cmake/developer_package/options.cmake

+2
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ if(POLICY CMP0127)
88
cmake_policy(SET CMP0127 NEW)
99
endif()
1010

11+
unset(OV_OPTIONS CACHE)
12+
1113
macro(ov_option variable description value)
1214
option(${variable} "${description}" ${value})
1315
list(APPEND OV_OPTIONS ${variable})

cmake/developer_package/packaging/archive.cmake

+4-2
Original file line numberDiff line numberDiff line change
@@ -102,5 +102,7 @@ ov_define_component_include_rules()
102102

103103
# New in version 3.18
104104
set(CPACK_ARCHIVE_THREADS 8)
105-
# multiple packages are generated
106-
set(CPACK_ARCHIVE_COMPONENT_INSTALL ON)
105+
# multiple packages are generated by default
106+
if(NOT DEFINED CPACK_ARCHIVE_COMPONENT_INSTALL)
107+
set(CPACK_ARCHIVE_COMPONENT_INSTALL ON)
108+
endif()

cmake/developer_package/target_flags.cmake

+20-3
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,23 @@ get_property(OV_GENERATOR_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG
119119

120120
function(ov_detect_libc_type)
121121
include(CheckCXXSourceCompiles)
122+
check_cxx_source_compiles("
123+
# include <string>
124+
# ifndef _GLIBCXX_USE_CXX11_ABI
125+
# error \"GlibCXX ABI is not defined\"
126+
# endif
127+
128+
int main() {
129+
return 0;
130+
}"
131+
OPENVINO_STDLIB_GNU)
132+
133+
if(OPENVINO_STDLIB_GNU)
134+
set(OPENVINO_STDLIB "GNU" PARENT_SCOPE)
135+
else()
136+
set(OPENVINO_STDLIB "CPP" PARENT_SCOPE)
137+
endif()
138+
122139
check_cxx_source_compiles("
123140
# ifndef _GNU_SOURCE
124141
# define _GNU_SOURCE
@@ -140,9 +157,9 @@ function(ov_detect_libc_type)
140157
int main() {
141158
return 0;
142159
}"
143-
OPENVINO_MUSL_LIBC)
160+
OPENVINO_GLIBC_MUSL)
144161

145-
if(OPENVINO_MUSL_LIBC)
162+
if(OPENVINO_GLIBC_MUSL)
146163
set(OPENVINO_MUSL_LIBC ON PARENT_SCOPE)
147164
else()
148165
set(OPENVINO_GNU_LIBC ON PARENT_SCOPE)
@@ -213,7 +230,7 @@ ov_libc_version()
213230
# Detects default value for _GLIBCXX_USE_CXX11_ABI for current compiler
214231
#
215232
macro(ov_get_glibcxx_use_cxx11_abi)
216-
if(LINUX)
233+
if(LINUX AND OPENVINO_STDLIB STREQUAL "GNU")
217234
ov_get_compiler_definition("_GLIBCXX_USE_CXX11_ABI" OV_GLIBCXX_USE_CXX11_ABI)
218235
endif()
219236
endmacro()

cmake/extra_modules.cmake

+4
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,10 @@ function(_ov_register_extra_modules)
119119
add_library(${NS}::${exported_target_clean_name} ALIAS ${exported_target})
120120
endif()\n")
121121
endforeach()
122+
123+
configure_file("${OpenVINO_SOURCE_DIR}/cmake/templates/OpenVINOConfig-version.cmake.in"
124+
"${OpenVINODeveloperPackage_DIR}/OpenVINODeveloperPackageConfig-version.cmake"
125+
@ONLY)
122126
endfunction()
123127

124128
_ov_generate_fake_developer_package("openvino")

cmake/features.cmake

+2-3
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,8 @@ endif()
3434

3535
ov_dependent_option (ENABLE_INTEL_GPU "GPU OpenCL-based plugin for OpenVINO Runtime" ${ENABLE_INTEL_GPU_DEFAULT} "X86_64 OR AARCH64;NOT APPLE;NOT WINDOWS_STORE;NOT WINDOWS_PHONE" OFF)
3636

37-
if (ANDROID OR MINGW OR (CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0) OR (NOT BUILD_SHARED_LIBS AND ENABLE_INTEL_CPU))
38-
# oneDNN doesn't support old compilers and android builds for now, so we'll build GPU plugin without oneDNN
39-
# also, in case of static build CPU's and GPU's oneDNNs will conflict, so we are disabling GPU's one in this case
37+
if (ANDROID OR MINGW OR (CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0))
38+
# oneDNN doesn't support old compilers and Android builds for now, so we'll build GPU plugin without oneDNN
4039
set(ENABLE_ONEDNN_FOR_GPU_DEFAULT OFF)
4140
else()
4241
set(ENABLE_ONEDNN_FOR_GPU_DEFAULT ON)

docs/articles_en/about-openvino/compatibility-and-support.rst

+8-9
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,17 @@ Compatibility and Support
77
:hidden:
88

99
compatibility-and-support/supported-devices
10+
compatibility-and-support/supported-operations
1011
compatibility-and-support/supported-models
11-
compatibility-and-support/supported-operations-inference-devices
12-
compatibility-and-support/supported-operations-framework-frontend
1312

1413

15-
:doc:`Supported Devices <compatibility-and-support/supported-devices>` - compatibility information for supported hardware accelerators.
16-
17-
:doc:`Supported Models <compatibility-and-support/supported-models>` - a list of selected models confirmed to work with given hardware.
18-
19-
:doc:`Supported Operations <compatibility-and-support/supported-operations-inference-devices>` - a listing of framework layers supported by OpenVINO.
20-
21-
:doc:`Supported Operations <compatibility-and-support/supported-operations-framework-frontend>` - a listing of layers supported by OpenVINO inference devices.
14+
| :doc:`Supported Devices <compatibility-and-support/supported-devices>`:
15+
| compatibility information for supported hardware accelerators.
2216
17+
| :doc:`Supported Operations <compatibility-and-support/supported-operations>`:
18+
| a listing of operations supported by OpenVINO, based on device and frontend conformance.
2319
20+
| :doc:`AI Models verified for OpenVINO™ <compatibility-and-support/supported-models>`:
21+
| a list of selected models confirmed to work with Intel® Core Ultra™ Processors with the
22+
OpenVINO™ toolkit.
2423

docs/articles_en/about-openvino/compatibility-and-support/supported-devices.rst

+21-16
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
Supported Inference Devices
2-
============================
1+
Supported Devices
2+
===============================================================================================
33

44
.. meta::
55
:description: Check the list of devices used by OpenVINO to run inference
66
of deep learning models.
77

88

9-
The OpenVINO™ runtime enables you to use a selection of devices to run your
9+
The OpenVINO™ runtime enables you to use the following devices to run your
1010
deep learning models:
1111
:doc:`CPU <../../openvino-workflow/running-inference/inference-devices-and-modes/cpu-device>`,
1212
:doc:`GPU <../../openvino-workflow/running-inference/inference-devices-and-modes/gpu-device>`,
@@ -18,16 +18,20 @@ deep learning models:
1818
Beside running inference with a specific device,
1919
OpenVINO offers the option of running automated inference with the following inference modes:
2020

21-
* :doc:`Automatic Device Selection <../../openvino-workflow/running-inference/inference-devices-and-modes/auto-device-selection>` - automatically selects the best device
22-
available for the given task. It offers many additional options and optimizations, including inference on
23-
multiple devices at the same time.
24-
* :doc:`Heterogeneous Inference <../../openvino-workflow/running-inference/inference-devices-and-modes/hetero-execution>` - enables splitting inference among several devices
25-
automatically, for example, if one device doesn't support certain operations.
26-
* :doc:`(LEGACY) Multi-device Inference <./../../documentation/legacy-features/multi-device>` - executes inference on multiple devices.
27-
Currently, this mode is considered a legacy solution. Using Automatic Device Selection is advised.
28-
* :doc:`Automatic Batching <../../openvino-workflow/running-inference/inference-devices-and-modes/automatic-batching>` - automatically groups inference requests to improve
29-
device utilization.
21+
| :doc:`Automatic Device Selection <../../openvino-workflow/running-inference/inference-devices-and-modes/auto-device-selection>`:
22+
| automatically selects the best device available for the given task. It offers many
23+
additional options and optimizations, including inference on multiple devices at the
24+
same time.
25+
| :doc:`Heterogeneous Inference <../../openvino-workflow/running-inference/inference-devices-and-modes/hetero-execution>`:
26+
| enables splitting inference among several devices automatically, for example, if one device
27+
doesn't support certain operations.
3028
29+
| :doc:`Automatic Batching <../../openvino-workflow/running-inference/inference-devices-and-modes/automatic-batching>`:
30+
| automatically groups inference requests to improve device utilization.
31+
32+
| :doc:`(LEGACY) Multi-device Inference <./../../documentation/legacy-features/multi-device>`:
33+
| executes inference on multiple devices. Currently, this mode is considered a legacy
34+
solution. Using Automatic Device Selection instead is advised.
3135
3236

3337
Feature Support and API Coverage
@@ -36,16 +40,17 @@ Feature Support and API Coverage
3640
======================================================================================================================================== ======= ========== ===========
3741
Supported Feature CPU GPU NPU
3842
======================================================================================================================================== ======= ========== ===========
43+
:doc:`Automatic Device Selection <../../openvino-workflow/running-inference/inference-devices-and-modes/auto-device-selection>` Yes Yes Partial
3944
:doc:`Heterogeneous execution <../../openvino-workflow/running-inference/inference-devices-and-modes/hetero-execution>` Yes Yes No
40-
:doc:`(LEGACY) Multi-device execution <./../../documentation/legacy-features/multi-device>` Yes Yes Partial
4145
:doc:`Automatic batching <../../openvino-workflow/running-inference/inference-devices-and-modes/automatic-batching>` No Yes No
4246
:doc:`Multi-stream execution <../../openvino-workflow/running-inference/optimize-inference/optimizing-throughput>` Yes Yes No
43-
:doc:`Models caching <../../openvino-workflow/running-inference/optimize-inference/optimizing-latency/model-caching-overview>` Yes Partial Yes
47+
:doc:`Model caching <../../openvino-workflow/running-inference/optimize-inference/optimizing-latency/model-caching-overview>` Yes Partial Yes
4448
:doc:`Dynamic shapes <../../openvino-workflow/running-inference/dynamic-shapes>` Yes Partial No
4549
:doc:`Import/Export <../../documentation/openvino-ecosystem>` Yes Yes Yes
4650
:doc:`Preprocessing acceleration <../../openvino-workflow/running-inference/optimize-inference/optimize-preprocessing>` Yes Yes No
4751
:doc:`Stateful models <../../openvino-workflow/running-inference/stateful-models>` Yes Yes Yes
4852
:doc:`Extensibility <../../documentation/openvino-extensibility>` Yes Yes No
53+
:doc:`(LEGACY) Multi-device execution <./../../documentation/legacy-features/multi-device>` Yes Yes Partial
4954
======================================================================================================================================== ======= ========== ===========
5055

5156

@@ -80,10 +85,10 @@ topic (step 3 "Configure input and output").
8085

8186
.. note::
8287

83-
With OpenVINO 2024.0 release, support for GNA has been discontinued. To keep using it
88+
With the OpenVINO 2024.0 release, support for GNA has been discontinued. To keep using it
8489
in your solutions, revert to the 2023.3 (LTS) version.
8590

86-
With OpenVINO™ 2023.0 release, support has been cancelled for:
91+
With the OpenVINO™ 2023.0 release, support has been cancelled for:
8792
- Intel® Neural Compute Stick 2 powered by the Intel® Movidius™ Myriad™ X
8893
- Intel® Vision Accelerator Design with Intel® Movidius™
8994

docs/articles_en/about-openvino/compatibility-and-support/supported-models.rst

+6-8
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,12 @@ models from OpenVINO-supported frameworks may also work properly but have not be
1818
:file: ../../_static/download/supported_models.csv
1919

2020

21-
Check marks indicate models that passed inference with no errors. Empty cells indicate models
22-
that were not tested. No failing runs producing an error have been recorded.
23-
24-
In the precision column, the "optimum-intel default" label corresponds to FP32 for small models
25-
and INT8 for models greater than 1B parameters.
26-
27-
28-
| Note:
21+
| Marked cells indicate models that passed inference with no errors. Empty cells indicate
22+
models that were not tested. No failing runs producing an error have been recorded.
23+
|
24+
| In the precision column, the "optimum-intel default" label corresponds to FP32 for small models
25+
and INT8 for models greater than 1B parameters.
26+
|
2927
| The results as of June 17 2024, for OpenVINO version 2024.2.
3028
| The models come from different public model repositories, such as Pytorch Model Zoo and
3129
HuggingFace; they were executed on the designated hardware with OpenVINO either natively or

0 commit comments

Comments
 (0)