Compare commits
417 Commits
2023.1.0
...
2023.2.0.d
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e7c1344d3c | ||
|
|
aa293c09ac | ||
|
|
8d59fcd34f | ||
|
|
3f3d89678e | ||
|
|
6de8579b1d | ||
|
|
aec4c6c843 | ||
|
|
fde054e4a6 | ||
|
|
f1b8abe55a | ||
|
|
efe54362fd | ||
|
|
10c3b60aac | ||
|
|
058b45e608 | ||
|
|
b1bf16c7cf | ||
|
|
e068cfc5a3 | ||
|
|
0e0e1b0ee6 | ||
|
|
d0ef28e541 | ||
|
|
02f5b7a7e3 | ||
|
|
b00fbd04c5 | ||
|
|
37d54bcb42 | ||
|
|
f790a3b4f2 | ||
|
|
318106d17d | ||
|
|
c4adf80ec6 | ||
|
|
e5acf880ad | ||
|
|
fc9dedfd6a | ||
|
|
e277d48535 | ||
|
|
2489356121 | ||
|
|
d6d4e3deeb | ||
|
|
194b9f5c38 | ||
|
|
5bf5e488b7 | ||
|
|
d90667c190 | ||
|
|
7204b0b78d | ||
|
|
c5843cf5d6 | ||
|
|
9dcd66c695 | ||
|
|
a800d3e4f4 | ||
|
|
1786e366a2 | ||
|
|
4a0e3fc77f | ||
|
|
69e9124eb7 | ||
|
|
c1a8380052 | ||
|
|
8558476047 | ||
|
|
228ea44743 | ||
|
|
f53d880b2c | ||
|
|
604aed1384 | ||
|
|
2c88fbf798 | ||
|
|
c67c0663fc | ||
|
|
7fe195a459 | ||
|
|
a558ebd4bc | ||
|
|
5d8687ae30 | ||
|
|
0f18d2a0ea | ||
|
|
394e58fafb | ||
|
|
631d6d3980 | ||
|
|
b3ee79520f | ||
|
|
52e57e1777 | ||
|
|
00bc4436a9 | ||
|
|
215a2f435b | ||
|
|
b6e0706961 | ||
|
|
472ad39a9d | ||
|
|
233ae78ff4 | ||
|
|
67a41b28ec | ||
|
|
e5a3500174 | ||
|
|
57df7a44b7 | ||
|
|
f926e0e392 | ||
|
|
ca344aea54 | ||
|
|
a139fb48b7 | ||
|
|
2de9df8832 | ||
|
|
35d0d92ef7 | ||
|
|
9c908f5245 | ||
|
|
068cd4473d | ||
|
|
6b5a22a656 | ||
|
|
475ad32cc4 | ||
|
|
e34f3a1fee | ||
|
|
933d9c1c0a | ||
|
|
e961ce307b | ||
|
|
9c4bc1cc2b | ||
|
|
691f5938d2 | ||
|
|
03918c2cac | ||
|
|
e34c5a09c6 | ||
|
|
6556d07c32 | ||
|
|
c7850276dd | ||
|
|
54609e7b72 | ||
|
|
10dc2d8b9b | ||
|
|
c10b45fe9e | ||
|
|
dbab89f047 | ||
|
|
6df420ed67 | ||
|
|
d90ceb93d1 | ||
|
|
df19699e3a | ||
|
|
a4cbac3dee | ||
|
|
49df8fa45e | ||
|
|
253ca8c746 | ||
|
|
e9aaf9aa1b | ||
|
|
09aece638d | ||
|
|
b7dcae3ab6 | ||
|
|
5fd16dc92e | ||
|
|
b8942b6dd6 | ||
|
|
0b8237f508 | ||
|
|
11016a9357 | ||
|
|
0247f4a9ab | ||
|
|
0edd62b96a | ||
|
|
bcb469ab19 | ||
|
|
2cd1308104 | ||
|
|
e090e37f6f | ||
|
|
68ba8873a2 | ||
|
|
2ec80439d7 | ||
|
|
5b6043069d | ||
|
|
2205f48c71 | ||
|
|
d62348337f | ||
|
|
619c4bfce1 | ||
|
|
ceab8059d1 | ||
|
|
545779f99f | ||
|
|
db395155b3 | ||
|
|
ba67db66ae | ||
|
|
18f29c02d2 | ||
|
|
73d8843da8 | ||
|
|
b3bfcfc399 | ||
|
|
c979ece791 | ||
|
|
7445a9c77b | ||
|
|
53fef5f558 | ||
|
|
35a0706dff | ||
|
|
d6ef6e253c | ||
|
|
b1b3343ffc | ||
|
|
fa667156cb | ||
|
|
1a950f9e8d | ||
|
|
16adb01810 | ||
|
|
4df4ea9b31 | ||
|
|
5ba60f845e | ||
|
|
66dd347d38 | ||
|
|
b044757d8c | ||
|
|
4ca3d51a40 | ||
|
|
2bf8d910f6 | ||
|
|
4f92676c85 | ||
|
|
f744869551 | ||
|
|
0234357869 | ||
|
|
d0213301a5 | ||
|
|
3454139931 | ||
|
|
972bb73298 | ||
|
|
7445f5bea6 | ||
|
|
5eff59a2d0 | ||
|
|
3c762240f3 | ||
|
|
4061b960f4 | ||
|
|
dcbfbf8411 | ||
|
|
1f0c98ed8c | ||
|
|
8cff0697a7 | ||
|
|
e9f4e4db65 | ||
|
|
08fb0a2722 | ||
|
|
541f2dc62f | ||
|
|
d1a8c8f914 | ||
|
|
9250d17e01 | ||
|
|
e3f1ff7f2a | ||
|
|
693c6d7a11 | ||
|
|
f3d4665f7b | ||
|
|
4af1fd087c | ||
|
|
adf7a24ec0 | ||
|
|
0675d9fd8b | ||
|
|
faa6b77247 | ||
|
|
3c1b384694 | ||
|
|
a6bc78dd0f | ||
|
|
514f9864af | ||
|
|
58546b2ecb | ||
|
|
7bb22b43b3 | ||
|
|
47fe50ca35 | ||
|
|
8e0d8dd36b | ||
|
|
016c7dea8a | ||
|
|
6a1d680f90 | ||
|
|
3be8b58d2a | ||
|
|
7becaf8494 | ||
|
|
497f42bd82 | ||
|
|
fc5696321a | ||
|
|
3e95e48309 | ||
|
|
2320329a51 | ||
|
|
e614b8f69a | ||
|
|
d0dda74fc2 | ||
|
|
7e3e1e2480 | ||
|
|
a1cc5e6692 | ||
|
|
847eb3f4f1 | ||
|
|
9f4e918ee2 | ||
|
|
3d872f14e4 | ||
|
|
fb59d0eb36 | ||
|
|
da79964bd3 | ||
|
|
f519f2990d | ||
|
|
86c3184e2f | ||
|
|
a1a56a3d29 | ||
|
|
f3de5a2fba | ||
|
|
5604566795 | ||
|
|
161ba14796 | ||
|
|
530da61a4e | ||
|
|
1d0709f533 | ||
|
|
2f4f76070f | ||
|
|
5833e7d55d | ||
|
|
51d77cb59f | ||
|
|
37f61551a3 | ||
|
|
932ba63744 | ||
|
|
8eb165021c | ||
|
|
ed230cd879 | ||
|
|
3823360238 | ||
|
|
888d4e9633 | ||
|
|
e83697ded4 | ||
|
|
815ce1c595 | ||
|
|
f0421d94a6 | ||
|
|
77d11f7dc8 | ||
|
|
d5f684d934 | ||
|
|
1ef9cc70b5 | ||
|
|
8f73cb19b1 | ||
|
|
7b59190521 | ||
|
|
79ac4a5763 | ||
|
|
d9805a8871 | ||
|
|
8124f5c435 | ||
|
|
25b1b4e26c | ||
|
|
dd05c42951 | ||
|
|
a55b5381d3 | ||
|
|
e2b553302b | ||
|
|
f9560518e3 | ||
|
|
4eb9c57424 | ||
|
|
4124851d2b | ||
|
|
252afa3b6c | ||
|
|
14e0b1fd2c | ||
|
|
63a6d4c41e | ||
|
|
cb479f4a5d | ||
|
|
bacb83f8a2 | ||
|
|
c123843d0d | ||
|
|
5644ca40f6 | ||
|
|
4f7ac430fc | ||
|
|
023a2f462a | ||
|
|
d9952b2455 | ||
|
|
94bdaea965 | ||
|
|
45cc4fdb33 | ||
|
|
7a4e765600 | ||
|
|
bd66971dd6 | ||
|
|
8723b5dd6d | ||
|
|
46d05cc820 | ||
|
|
a322b8256d | ||
|
|
4598da7a55 | ||
|
|
8d6083e08e | ||
|
|
b7758b0504 | ||
|
|
be23ac7c26 | ||
|
|
954536d2d6 | ||
|
|
dc1339d8e3 | ||
|
|
1d62f0141d | ||
|
|
8f6b30a8f9 | ||
|
|
bf5690fa7d | ||
|
|
188d53d813 | ||
|
|
77600c7701 | ||
|
|
3d679edf18 | ||
|
|
5fd327ae30 | ||
|
|
198da893d4 | ||
|
|
53414832eb | ||
|
|
1b5f428752 | ||
|
|
4eadef9e61 | ||
|
|
c3b0c531f7 | ||
|
|
75b6a24787 | ||
|
|
509e00da60 | ||
|
|
fef4d4d641 | ||
|
|
15685e0141 | ||
|
|
3677dda457 | ||
|
|
2f782b2131 | ||
|
|
2d760ba1bf | ||
|
|
8f4d72826a | ||
|
|
bd0c156a70 | ||
|
|
c46f6bf115 | ||
|
|
511f06f9ba | ||
|
|
9297bc5128 | ||
|
|
90ef7096b9 | ||
|
|
3bc38695c5 | ||
|
|
f42a036157 | ||
|
|
a84eee9127 | ||
|
|
3daf4cb3b5 | ||
|
|
1b9b9bdc1f | ||
|
|
44657183f3 | ||
|
|
00b06adee4 | ||
|
|
7173f530cc | ||
|
|
51df17912b | ||
|
|
92c6316e8e | ||
|
|
441adcc122 | ||
|
|
a4b0fe51af | ||
|
|
3c7ea04c69 | ||
|
|
b81cad6ae5 | ||
|
|
7d718fbff2 | ||
|
|
936dc051ff | ||
|
|
b8226db465 | ||
|
|
2cf8f2bc1f | ||
|
|
9715ccd992 | ||
|
|
b0d917f0cb | ||
|
|
38cad619af | ||
|
|
dd258f9607 | ||
|
|
7c751883fc | ||
|
|
05a24b1776 | ||
|
|
f617cc338e | ||
|
|
0651d57c33 | ||
|
|
d3ac00c6d2 | ||
|
|
ebe1d52e31 | ||
|
|
2d3aab33b0 | ||
|
|
2d2977ff4a | ||
|
|
1cf3fe96af | ||
|
|
120a81ff5e | ||
|
|
463ae19207 | ||
|
|
81a02c5586 | ||
|
|
6ad11108b5 | ||
|
|
9a1726a419 | ||
|
|
02d6c1cb5d | ||
|
|
38cf4764cb | ||
|
|
9c61e0c4dd | ||
|
|
8aec490128 | ||
|
|
23cad1770e | ||
|
|
b790458da6 | ||
|
|
d84fa07841 | ||
|
|
9af0f1eaae | ||
|
|
87f6e34a56 | ||
|
|
3e8c0fac1b | ||
|
|
f2167a9545 | ||
|
|
6b57360c55 | ||
|
|
9b10ef6f6f | ||
|
|
e8f1df495c | ||
|
|
36b9de1f25 | ||
|
|
49c4c922ff | ||
|
|
e3e1e8c811 | ||
|
|
84fc6fb626 | ||
|
|
f6ab1e4833 | ||
|
|
928c75623b | ||
|
|
f30afa9ad3 | ||
|
|
e6f09ac197 | ||
|
|
f9aa624099 | ||
|
|
915de21626 | ||
|
|
d32b6904bd | ||
|
|
82afb47e36 | ||
|
|
c0fb4fabce | ||
|
|
b7d73cbbe3 | ||
|
|
f306007e59 | ||
|
|
94c21b53b3 | ||
|
|
2e78eec502 | ||
|
|
29ad3e8c92 | ||
|
|
b87709a8a7 | ||
|
|
0f9734aaa7 | ||
|
|
293c672064 | ||
|
|
f6dca869b2 | ||
|
|
bcedb0bb9b | ||
|
|
cddcec8ba8 | ||
|
|
f962511a84 | ||
|
|
39b75fd213 | ||
|
|
a45e5e03c5 | ||
|
|
1bdf4f0ab9 | ||
|
|
decc2e31f3 | ||
|
|
06003f18d5 | ||
|
|
679369c707 | ||
|
|
350c4d2363 | ||
|
|
bcad953f5f | ||
|
|
20e4c629e9 | ||
|
|
c5b64e458b | ||
|
|
eef6b35bef | ||
|
|
28a5bf7b04 | ||
|
|
8df85badf8 | ||
|
|
ba6cca8740 | ||
|
|
b607c00c95 | ||
|
|
e0a75b78d1 | ||
|
|
07ca0cd426 | ||
|
|
eaeeea9c54 | ||
|
|
498731f8fd | ||
|
|
6deca48413 | ||
|
|
ce47522165 | ||
|
|
c89b9edfe7 | ||
|
|
475ce744af | ||
|
|
b77e47970d | ||
|
|
99cc3624b7 | ||
|
|
e11e8ede1b | ||
|
|
1d0d00bf22 | ||
|
|
ab900606cd | ||
|
|
22fe12fe9b | ||
|
|
6d3726024d | ||
|
|
6a628f7056 | ||
|
|
c6a02b76be | ||
|
|
982d0f43c4 | ||
|
|
25e89a754d | ||
|
|
59d58b2296 | ||
|
|
bc868a8873 | ||
|
|
dcfb6bb042 | ||
|
|
aa53394c07 | ||
|
|
3b2e263879 | ||
|
|
80b8b6fff1 | ||
|
|
128ec5452e | ||
|
|
7aa51d6775 | ||
|
|
f4cc3bf7d3 | ||
|
|
50214511e7 | ||
|
|
27bf0f9e1e | ||
|
|
4882ccde03 | ||
|
|
6eee51a6ef | ||
|
|
9a76daf94b | ||
|
|
6cd70af7c2 | ||
|
|
de65abc6b3 | ||
|
|
7e724565b5 | ||
|
|
7df8d1ca2d | ||
|
|
acbac2f560 | ||
|
|
551cb7ab1a | ||
|
|
0cc3044764 | ||
|
|
4703196f5c | ||
|
|
53c47aaa91 | ||
|
|
20bf7aec13 | ||
|
|
7c273dc2c5 | ||
|
|
90f6500871 | ||
|
|
5539d052b0 | ||
|
|
cbe744b717 | ||
|
|
19ff7fba3d | ||
|
|
61fcf3855a | ||
|
|
d55e45f677 | ||
|
|
3813b0bc55 | ||
|
|
601cfadabf | ||
|
|
3e6a3eee6d | ||
|
|
7635f89141 | ||
|
|
526d76c81f | ||
|
|
4f29e60742 | ||
|
|
24ddf1b274 | ||
|
|
ef33c2b3fd | ||
|
|
e9fdf0cac4 | ||
|
|
dc6f04f475 | ||
|
|
20bb450af2 | ||
|
|
e4bed7a31c | ||
|
|
f51f0c7a6a | ||
|
|
318009f8d5 | ||
|
|
dea2310153 | ||
|
|
a3393e535b | ||
|
|
e49b208393 | ||
|
|
75b48e9cdc |
@@ -134,6 +134,8 @@ jobs:
|
||||
python3 -m pip install -U pip cmake
|
||||
# vcpkg's tool dependencies
|
||||
sudo -E apt --assume-yes install curl zip unzip tar
|
||||
# vcpkg 'python3' port dependencies
|
||||
sudo -E apt --assume-yes install autoconf libtool autoconf-archive
|
||||
# vcpkg tree of dependencies require extra packages
|
||||
sudo -E apt --assume-yes install pkg-config linux-libc-dev
|
||||
# Install Android SDK, NDK and Tools
|
||||
|
||||
@@ -34,12 +34,6 @@ resources:
|
||||
name: openvinotoolkit/openvino_contrib
|
||||
ref: master
|
||||
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: master
|
||||
|
||||
variables:
|
||||
- group: github
|
||||
|
||||
@@ -83,7 +77,6 @@ jobs:
|
||||
BUILD_TYPE: Release
|
||||
REPO_DIR: $(Build.Repository.LocalPath)
|
||||
OPENVINO_CONTRIB_REPO_DIR: $(REPO_DIR)/../openvino_contrib
|
||||
MODELS_PATH: $(REPO_DIR)/../testdata
|
||||
WORK_DIR: $(Pipeline.Workspace)/_w
|
||||
BUILD_DIR: $(WORK_DIR)/build
|
||||
BUILD_SAMPLES_DIR: $(WORK_DIR)/build_samples
|
||||
@@ -216,13 +209,6 @@ jobs:
|
||||
echo SourceBranch: $(Build.SourceBranch)
|
||||
displayName: 'System info'
|
||||
|
||||
|
||||
# Should be after 'Install dependencies' because Git lfs is not installed
|
||||
- checkout: testdata
|
||||
clean: 'true'
|
||||
lfs: 'true'
|
||||
path: testdata
|
||||
|
||||
- task: CMake@1
|
||||
inputs:
|
||||
# CMake must get Python 3.x version by default
|
||||
@@ -368,6 +354,9 @@ jobs:
|
||||
- script: $(RUN_PREFIX) $(INSTALL_TEST_DIR)/ov_proxy_plugin_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-OVProxyTests.xml
|
||||
displayName: 'OV Proxy Plugin Tests'
|
||||
|
||||
- script: $(RUN_PREFIX) $(INSTALL_TEST_DIR)/ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-OVHeteroUnitTests.xml
|
||||
displayName: 'OV Hetero Unit Tests'
|
||||
|
||||
- script: $(RUN_PREFIX) $(INSTALL_TEST_DIR)/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-OVHeteroFuncTests.xml
|
||||
displayName: 'OV Hetero Func Tests'
|
||||
|
||||
@@ -452,7 +441,7 @@ jobs:
|
||||
--junitxml=$(INSTALL_TEST_DIR)/TEST-Pyngraph.xml \
|
||||
--ignore=$(INSTALL_TEST_DIR)/pyopenvino/tests/test_utils/test_utils.py
|
||||
displayName: 'Python API 2.0 Tests'
|
||||
|
||||
|
||||
# Skip test_onnx/test_zoo_models and test_onnx/test_backend due to long execution time
|
||||
- script: |
|
||||
python3 -m pytest -sv $(REPO_DIR)/src/frontends/onnx/tests $(PYTHON_STATIC_ARGS) \
|
||||
@@ -525,6 +514,15 @@ jobs:
|
||||
TEST_DEVICE: CPU
|
||||
displayName: 'TensorFlow 2 Layer Tests - TF FE'
|
||||
|
||||
- script: |
|
||||
set -e
|
||||
python3 -m pip install -r $(LAYER_TESTS_DIR)/requirements.txt
|
||||
$(RUN_PREFIX) python3 -m pytest $(LAYER_TESTS_DIR)/jax_tests/ -m precommit --junitxml=$(INSTALL_TEST_DIR)/TEST-jax.xmlTEST
|
||||
env:
|
||||
PYTHONPATH: $(LAYER_TESTS_DIR)
|
||||
TEST_DEVICE: CPU
|
||||
displayName: 'JAX Layer Tests - TF FE'
|
||||
|
||||
- script: |
|
||||
set -e
|
||||
python3 -m pip install -r $(LAYER_TESTS_DIR)/requirements.txt
|
||||
|
||||
@@ -183,7 +183,6 @@ jobs:
|
||||
- script: |
|
||||
set -e
|
||||
source $(BUILD_OPENVINO)/dependencies/conanbuild.sh
|
||||
# TODO: return tests building once GPU plugin migrates to Plugin API 2.0
|
||||
cmake \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DBUILD_SHARED_LIBS=OFF \
|
||||
@@ -196,7 +195,7 @@ jobs:
|
||||
-DPYTHON_MODULE_EXTENSION=$(aarch64-linux-gnu-python3-config --extension-suffix) \
|
||||
-DPYTHON_LIBRARY=/usr/lib/aarch64-linux-gnu/libc-2.31.so \
|
||||
-DPYTHON_INCLUDE_DIR=$(Agent.ToolsDirectory)/Python/$(OV_PYTHON_VERSION)/x64/include/python$(OV_PYTHON_VERSION_MAJOR_MINOR) \
|
||||
-DENABLE_DATA=OFF \
|
||||
-DENABLE_TESTS=ON \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DENABLE_SYSTEM_PROTOBUF=ON \
|
||||
-DENABLE_SYSTEM_SNAPPY=ON \
|
||||
|
||||
@@ -35,6 +35,7 @@ resources:
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: master
|
||||
|
||||
variables:
|
||||
- group: github
|
||||
|
||||
@@ -33,20 +33,11 @@ pr:
|
||||
|
||||
resources:
|
||||
repositories:
|
||||
- repository: openvino
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/openvino
|
||||
|
||||
- repository: openvino_contrib
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/openvino_contrib
|
||||
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: master
|
||||
|
||||
jobs:
|
||||
- job: CUDAPlugin_Lin
|
||||
@@ -63,7 +54,6 @@ jobs:
|
||||
HOME_DIR: $(Agent.HomeDirectory)
|
||||
REPO_DIR: $(Build.Repository.LocalPath)
|
||||
OPENVINO_REPO_DIR: $(REPO_DIR)/../openvino
|
||||
MODELS_PATH: $(REPO_DIR)/../testdata
|
||||
WORK_DIR: $(Pipeline.Workspace)/_w
|
||||
BUILD_DIR: $(WORK_DIR)/build
|
||||
BIN_DIR: $(OPENVINO_REPO_DIR)/bin/intel64/$(BUILD_TYPE)
|
||||
|
||||
@@ -28,14 +28,6 @@ pr:
|
||||
- '*/conformance/*'
|
||||
- 'tests/layer_tests/*'
|
||||
|
||||
resources:
|
||||
repositories:
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: master
|
||||
|
||||
jobs:
|
||||
- job: Lin_Debian
|
||||
# About 150% of total time
|
||||
@@ -50,7 +42,6 @@ jobs:
|
||||
VSTS_HTTP_TIMEOUT: 200
|
||||
BUILD_TYPE: Release
|
||||
REPO_DIR: $(Build.Repository.LocalPath)
|
||||
MODELS_PATH: $(REPO_DIR)/../testdata
|
||||
WORK_DIR: $(Pipeline.Workspace)/_w
|
||||
BUILD_DIR: $(WORK_DIR)/build
|
||||
BUILD_SAMPLES_DIR: $(WORK_DIR)/build_samples
|
||||
@@ -149,12 +140,6 @@ jobs:
|
||||
git clone https://github.com/google/gtest-parallel.git
|
||||
displayName: 'Install build dependencies'
|
||||
|
||||
# Should be after 'Install dependencies' because Git lfs is not installed
|
||||
- checkout: testdata
|
||||
clean: 'true'
|
||||
lfs: 'true'
|
||||
path: testdata
|
||||
|
||||
- task: CMake@1
|
||||
inputs:
|
||||
# CMake must get Python 3.x version by default
|
||||
@@ -243,7 +228,7 @@ jobs:
|
||||
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
|
||||
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
|
||||
echo "deb https://apt.repos.intel.com/openvino/2023 ubuntu20 main" | sudo tee /etc/apt/sources.list.d/intel-openvino-2023.list
|
||||
sudo apt-get update -o Dir::Etc::sourcelist=/etc/apt/sources.list.d/intel-openvino-2023.list
|
||||
sudo apt-get update
|
||||
sudo apt-get install openvino -y
|
||||
# install our local one and make sure the conflicts are resolved
|
||||
sudo apt-get install --no-install-recommends dpkg-dev -y
|
||||
@@ -284,6 +269,12 @@ jobs:
|
||||
LD_LIBRARY_PATH: $(INSTALL_TEST_DIR)
|
||||
displayName: 'OV Proxy Tests'
|
||||
|
||||
- script: |
|
||||
$(INSTALL_TEST_DIR)/ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-OVHeteroUnitTests.xml
|
||||
env:
|
||||
LD_LIBRARY_PATH: $(INSTALL_TEST_DIR)
|
||||
displayName: 'OV Hetero Unit Tests'
|
||||
|
||||
- script: |
|
||||
$(INSTALL_TEST_DIR)/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-OVHeteroFuncTests.xml
|
||||
env:
|
||||
@@ -332,15 +323,9 @@ jobs:
|
||||
displayName: 'TEMPLATE FuncTests'
|
||||
|
||||
- script: $(INSTALL_TEST_DIR)/InferenceEngineCAPITests --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-InferenceEngineCAPITests.xml
|
||||
env:
|
||||
DATA_PATH: $(MODELS_PATH)
|
||||
MODELS_PATH: $(MODELS_PATH)
|
||||
displayName: 'IE CAPITests'
|
||||
|
||||
- script: $(INSTALL_TEST_DIR)/ov_capi_test --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-ov_capi_test.xml
|
||||
env:
|
||||
DATA_PATH: $(MODELS_PATH)
|
||||
MODELS_PATH: $(MODELS_PATH)
|
||||
displayName: 'OV CAPITests'
|
||||
|
||||
# Skip test_onnx/test_zoo_models and test_onnx/test_backend due to long execution time
|
||||
@@ -373,7 +358,7 @@ jobs:
|
||||
env:
|
||||
LD_LIBRARY_PATH: $(INSTALL_TEST_DIR)
|
||||
PYTHONPATH: $(INSTALL_TEST_DIR)
|
||||
displayName: 'ONNX Frontend Python Tests'
|
||||
displayName: 'ONNX Frontend Python Tests'
|
||||
|
||||
- script: |
|
||||
set -e
|
||||
|
||||
@@ -20,7 +20,6 @@ jobs:
|
||||
# VSTS_HTTP_TIMEOUT: 200
|
||||
# BUILD_TYPE: Release
|
||||
# REPO_DIR: $(Build.Repository.LocalPath)
|
||||
# MODELS_PATH: $(REPO_DIR)/../testdata
|
||||
# WORK_DIR: $(Pipeline.Workspace)/_w
|
||||
# BUILD_DIR: $(WORK_DIR)/build
|
||||
|
||||
@@ -38,13 +37,6 @@ jobs:
|
||||
- script: git -C ~/work/openvino checkout -m $(Build.SourceVersion) && git -C ~/work/openvino submodule update --init --recursive
|
||||
displayName: checkout
|
||||
|
||||
# Should be after 'Install dependencies' because Git lfs is not installed
|
||||
# - checkout: testdata
|
||||
# clean: 'true'
|
||||
# submodules: 'true'
|
||||
# lfs: 'true'
|
||||
# path: testdata
|
||||
|
||||
- script: env -C ~/work ./configreleasenolto.sh
|
||||
displayName: CMake
|
||||
|
||||
|
||||
@@ -37,12 +37,6 @@ resources:
|
||||
name: openvinotoolkit/openvino_contrib
|
||||
ref: master
|
||||
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: master
|
||||
|
||||
variables:
|
||||
- group: github
|
||||
|
||||
@@ -61,7 +55,6 @@ jobs:
|
||||
BUILD_TYPE: Release
|
||||
REPO_DIR: $(Build.Repository.LocalPath)
|
||||
OPENVINO_CONTRIB_REPO_DIR: $(REPO_DIR)/../openvino_contrib
|
||||
MODELS_PATH: $(REPO_DIR)/../testdata
|
||||
WORK_DIR: $(Pipeline.Workspace)/_w
|
||||
BUILD_DIR: $(WORK_DIR)/build
|
||||
INSTALL_DIR: $(WORK_DIR)/install_pkg
|
||||
@@ -109,11 +102,6 @@ jobs:
|
||||
submodules: 'true'
|
||||
path: openvino_contrib
|
||||
|
||||
- checkout: testdata
|
||||
clean: 'true'
|
||||
lfs: 'true'
|
||||
path: testdata
|
||||
|
||||
- script: |
|
||||
set -e
|
||||
brew install cython automake
|
||||
@@ -189,6 +177,10 @@ jobs:
|
||||
displayName: 'OV Proxy Plugin Tests'
|
||||
enabled: 'false'
|
||||
|
||||
- script: $(SETUPVARS) && $(INSTALL_TEST_DIR)/ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-OVHeteroUnitTests.xml
|
||||
displayName: 'OV Hetero Unit Tests'
|
||||
enabled: 'false'
|
||||
|
||||
- script: $(SETUPVARS) && $(INSTALL_TEST_DIR)/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-OVHeteroFuncTests.xml
|
||||
displayName: 'OV Hetero Func Tests'
|
||||
enabled: 'false'
|
||||
@@ -215,17 +207,11 @@ jobs:
|
||||
|
||||
- script: |
|
||||
$(SETUPVARS) && $(INSTALL_TEST_DIR)/InferenceEngineCAPITests --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-InferenceEngineCAPITests.xml
|
||||
env:
|
||||
DATA_PATH: $(MODELS_PATH)
|
||||
MODELS_PATH: $(MODELS_PATH)
|
||||
displayName: 'IE CAPITests'
|
||||
enabled: 'false'
|
||||
|
||||
- script: |
|
||||
$(SETUPVARS) && $(INSTALL_TEST_DIR)/ov_capi_test --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-ov_capi_test.xml
|
||||
env:
|
||||
DATA_PATH: $(MODELS_PATH)
|
||||
MODELS_PATH: $(MODELS_PATH)
|
||||
displayName: 'IE CAPITests'
|
||||
enabled: 'false'
|
||||
|
||||
|
||||
@@ -34,12 +34,6 @@ resources:
|
||||
name: openvinotoolkit/openvino_contrib
|
||||
ref: master
|
||||
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: master
|
||||
|
||||
jobs:
|
||||
- job: Win
|
||||
strategy:
|
||||
@@ -63,7 +57,6 @@ jobs:
|
||||
BUILD_TYPE: Release
|
||||
REPO_DIR: $(Build.Repository.LocalPath)
|
||||
OPENVINO_CONTRIB_REPO_DIR: $(REPO_DIR)\..\openvino_contrib
|
||||
MODELS_PATH: $(REPO_DIR)\..\testdata
|
||||
WORK_DIR: $(Pipeline.Workspace)\_w
|
||||
BUILD_DIR: $(WORK_DIR)\build
|
||||
BUILD_SAMPLES_DIR: $(WORK_DIR)\build_samples
|
||||
@@ -130,11 +123,6 @@ jobs:
|
||||
submodules: 'true'
|
||||
path: openvino_contrib
|
||||
|
||||
- checkout: testdata
|
||||
clean: 'true'
|
||||
lfs: 'true'
|
||||
path: testdata
|
||||
|
||||
- script: |
|
||||
python -m pip install --upgrade pip
|
||||
rem For running Python API tests
|
||||
@@ -264,6 +252,9 @@ jobs:
|
||||
- script: call $(SETUPVARS) && $(INSTALL_TEST_DIR)\ov_proxy_plugin_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)\TEST-OVProxyTests.xml
|
||||
displayName: 'OV Proxy Plugin Tests'
|
||||
|
||||
- script: call $(SETUPVARS) && $(INSTALL_TEST_DIR)\ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)\TEST-OVHeteroUnitTests.xml
|
||||
displayName: 'OV Hetero Unit Tests'
|
||||
|
||||
- script: call $(SETUPVARS) && $(INSTALL_TEST_DIR)\ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)\TEST-OVHeteroFuncTests.xml
|
||||
displayName: 'OV Hetero Func Tests'
|
||||
|
||||
|
||||
@@ -35,6 +35,7 @@ resources:
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: master
|
||||
|
||||
variables:
|
||||
- group: github
|
||||
|
||||
2
.github/CODEOWNERS
vendored
2
.github/CODEOWNERS
vendored
@@ -92,6 +92,8 @@
|
||||
/tests/layer_tests/ @openvinotoolkit/openvino-tests-maintainers @openvinotoolkit/openvino-mo-maintainers
|
||||
/tests/layer_tests/pytorch_tests/ @openvinotoolkit/openvino-pytorch-frontend-maintainers
|
||||
/tests/layer_tests/tensorflow_tests @openvinotoolkit/openvino-tf-frontend-maintainers
|
||||
/tests/layer_tests/jax_tests @openvinotoolkit/openvino-tf-frontend-maintainers
|
||||
/tests/model_hub_tests @openvinotoolkit/openvino-tf-frontend-maintainers
|
||||
|
||||
# Tools:
|
||||
/tools/ @openvinotoolkit/openvino-tools-maintainers
|
||||
|
||||
15
.github/ISSUE_TEMPLATE/bug.yml
vendored
15
.github/ISSUE_TEMPLATE/bug.yml
vendored
@@ -1,5 +1,5 @@
|
||||
name: Bug Report
|
||||
description: Create a report to help us improve
|
||||
name: Bug report
|
||||
description: Help us improve OpenVINO.
|
||||
title: "[Bug]: "
|
||||
labels: ["bug", "support_request"]
|
||||
body:
|
||||
@@ -53,7 +53,7 @@ body:
|
||||
id: framework
|
||||
attributes:
|
||||
label: Framework
|
||||
description: Framework used in model optimization
|
||||
description: Framework used for model optimization
|
||||
options:
|
||||
- TensorFlow 1
|
||||
- Keras (TensorFlow 2)
|
||||
@@ -68,7 +68,7 @@ body:
|
||||
id: model_name
|
||||
attributes:
|
||||
label: Model used
|
||||
description: Please provide us the link to your model in the description
|
||||
description: Link to the model
|
||||
placeholder: ResNet50 / YOLOv4
|
||||
validations:
|
||||
required: false
|
||||
@@ -77,8 +77,7 @@ body:
|
||||
attributes:
|
||||
label: Issue description
|
||||
description: What issue are you having, and what did you expect to happen instead?
|
||||
placeholder: Please provide a detailed description of what happened
|
||||
value: "Error when performing model optimization on yolov4 model."
|
||||
placeholder: "Error when performing model optimization on yolov4 model."
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
@@ -101,9 +100,9 @@ body:
|
||||
label: Issue submission checklist
|
||||
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/intel/intel-one-mono/blob/main/CODE_OF_CONDUCT.md)
|
||||
options:
|
||||
- label: I report the issue. It's not a question
|
||||
- label: I'm reporting an issue. It's not a question.
|
||||
required: true
|
||||
- label: I checked the problem with the documentation, FAQ, open issues, Stack Overflow, etc., and have not found the solution
|
||||
- label: I checked the problem with the documentation, FAQ, open issues, Stack Overflow, etc., and have not found a solution.
|
||||
required: true
|
||||
- label: There is reproducer code and related data files such as images, videos, models, etc.
|
||||
required: true
|
||||
|
||||
8
.github/ISSUE_TEMPLATE/build.yml
vendored
8
.github/ISSUE_TEMPLATE/build.yml
vendored
@@ -1,5 +1,5 @@
|
||||
name: Build Issue Report
|
||||
description: This report is for the build/installation issue
|
||||
name: Build Issue report
|
||||
description: Report a build or installation issue.
|
||||
title: "[Build]: "
|
||||
labels: ["build", "support_request"]
|
||||
body:
|
||||
@@ -89,7 +89,7 @@ body:
|
||||
label: Issue submission checklist
|
||||
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/intel/intel-one-mono/blob/main/CODE_OF_CONDUCT.md)
|
||||
options:
|
||||
- label: I report the issue. It's not a question
|
||||
- label: I'm reporting an issue. It's not a question.
|
||||
required: true
|
||||
- label: I checked the problem with the documentation, FAQ, open issues, Stack Overflow, etc., and have not found the solution
|
||||
- label: I checked the problem with the documentation, FAQ, open issues, Stack Overflow, etc., and have not found a solution.
|
||||
required: true
|
||||
|
||||
32
.github/ISSUE_TEMPLATE/documentation.yml
vendored
Normal file
32
.github/ISSUE_TEMPLATE/documentation.yml
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
name: Documentation issue report
|
||||
description: Report an issue with Documentation.
|
||||
title: "[Docs]: "
|
||||
labels: ["docs", "support_request"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Please provide all the necessary information to expedite the response.
|
||||
- type: input
|
||||
id: doc_link
|
||||
attributes:
|
||||
label: Documentation link
|
||||
description: Please provide the link for the documentation issue
|
||||
placeholder: e.g. intel.com/content/www/us/en/developer/tools/openvino-toolkit/system-requirements.html
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Description
|
||||
description: Provide a description of the issue you noticed.
|
||||
validations:
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: terms
|
||||
attributes:
|
||||
label: Issue submission checklist
|
||||
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/intel/intel-one-mono/blob/main/CODE_OF_CONDUCT.md)
|
||||
options:
|
||||
- label: I'm reporting a documentation issue. It's not a question.
|
||||
required: true
|
||||
10
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
10
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
@@ -1,5 +1,5 @@
|
||||
name: Feature request
|
||||
description: Suggest a feature or improvement for the OpenVINO toolkit
|
||||
description: Suggest a feature or improvement for the OpenVINO toolkit.
|
||||
title: "[Feature Request]: "
|
||||
labels: ["enhancement", "feature"]
|
||||
assignees:
|
||||
@@ -9,9 +9,8 @@ body:
|
||||
id: request_description
|
||||
attributes:
|
||||
label: Request Description
|
||||
description: What is the request you would like us to improve on?
|
||||
placeholder: Please provide a detailed description of your request
|
||||
value: "To have OpenVINO support yolov8 model (with description)"
|
||||
description: What would you like us to improve on?
|
||||
placeholder: Please provide a detailed description of your request.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
@@ -19,8 +18,7 @@ body:
|
||||
attributes:
|
||||
label: Feature Use Case
|
||||
description: What is the use case of the feature you are proposing?
|
||||
placeholder: Please provide the use case where this will be useful
|
||||
value: "Recent autonomous vehicles have been using the yolov8 model to perform object segmentation."
|
||||
placeholder: What is the new feature use case? How will it be useful?
|
||||
validations:
|
||||
required: false
|
||||
- type: checkboxes
|
||||
|
||||
59
.github/ISSUE_TEMPLATE/good_first_issue.yml
vendored
Normal file
59
.github/ISSUE_TEMPLATE/good_first_issue.yml
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
name: Good First Issue
|
||||
description: Create a Good First Issue for new contributors.
|
||||
title: "[Good First Issue]: "
|
||||
labels: ["good first issue", "no_stale"]
|
||||
body:
|
||||
- type: textarea
|
||||
id: context
|
||||
attributes:
|
||||
label: Context
|
||||
description: |
|
||||
Let the contributors know what your component is responsible for,
|
||||
what's the importance of the change and why it's needed.
|
||||
Keep in mind the Good First Issue is for new contributors.
|
||||
placeholder: What is it and why is it important?
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: todo_list
|
||||
attributes:
|
||||
label: What needs to be done?
|
||||
description: |
|
||||
Be as verbose as possible, provide a TODO list if viable.
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: example_prs
|
||||
attributes:
|
||||
label: Example Pull Requests
|
||||
description: |
|
||||
Provide example Pull requests, if there are any.
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: textarea
|
||||
id: resources
|
||||
attributes:
|
||||
label: Resources
|
||||
description: |
|
||||
Any materials related to the task, such as operator specifications,
|
||||
discussions, guides.
|
||||
value: |
|
||||
- [What is OpenVINO?](https://github.com/openvinotoolkit/openvino#what-is-openvino-toolkit)
|
||||
- [Contribution guide](https://github.com/openvinotoolkit/openvino/blob/master/CONTRIBUTING.md)
|
||||
- [Blog post on contributing to OpenVINO](https://github.com/openvinotoolkit/openvino/blob/master/CONTRIBUTING.md)
|
||||
- [User documentation](https://docs.openvino.ai/)
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: contact_points
|
||||
attributes:
|
||||
label: Contact points
|
||||
description: |
|
||||
People who can be asked questions about the task.
|
||||
placeholder: GitHub users
|
||||
validations:
|
||||
required: true
|
||||
146
.github/ISSUE_TEMPLATE/performance.yml
vendored
Normal file
146
.github/ISSUE_TEMPLATE/performance.yml
vendored
Normal file
@@ -0,0 +1,146 @@
|
||||
name: Performance Issue Report
|
||||
description: This report is for the performance-related issue
|
||||
title: "[Performance]: "
|
||||
labels: ["performance", "support_request"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Please provide all the necessary information to expedite the response.
|
||||
- type: input
|
||||
id: ov_version
|
||||
attributes:
|
||||
label: OpenVINO Version
|
||||
description: OpenVINO version, branch, or tag in OpenVINO GitHub
|
||||
placeholder: 2021.4.0 LTS / Master Branch / tag 2022.3.0
|
||||
validations:
|
||||
required: false
|
||||
- type: dropdown
|
||||
id: os
|
||||
attributes:
|
||||
label: Operating System
|
||||
description: What OS are you using?
|
||||
options:
|
||||
- Ubuntu 18.04 (LTS)
|
||||
- Ubuntu 20.04 (LTS)
|
||||
- Ubuntu 22.04 (LTS)
|
||||
- Windows System
|
||||
- Red Hat Enterprise Linux 8
|
||||
- OpenSUSE
|
||||
- Android System
|
||||
- Raspbian Stretch OS
|
||||
- macOS Systems for Intel CPU
|
||||
- macOS Systems for Apple Silicon
|
||||
- WebAssembly
|
||||
- WSL2 on Windows
|
||||
- Other (Please specify in description)
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: device_use
|
||||
attributes:
|
||||
label: Device used for inference
|
||||
description: What hardware are you using for inference?
|
||||
options:
|
||||
- CPU
|
||||
- iGPU
|
||||
- dGPU
|
||||
- NPU
|
||||
validations:
|
||||
required: false
|
||||
- type: dropdown
|
||||
id: openvino_installation
|
||||
attributes:
|
||||
label: OpenVINO installation
|
||||
description: How do you install OpenVINO on your system?
|
||||
options:
|
||||
- PyPi
|
||||
- Docker
|
||||
- Build from source
|
||||
- Other virtual machines
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: openvino_api
|
||||
attributes:
|
||||
label: Programming Language
|
||||
description: What is the programming language you use in your performance test?
|
||||
options:
|
||||
- Python
|
||||
- C++
|
||||
- Other
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: architecture
|
||||
attributes:
|
||||
label: Hardware Architecture
|
||||
description: What is your hardware architecture used in this test?
|
||||
options:
|
||||
- x86 (64 bits)
|
||||
- x86 (32 bits)
|
||||
- ARM (64 bits)
|
||||
- ARM (32 bits)
|
||||
- RISC-V
|
||||
- Other (please specify in the description)
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: model_name
|
||||
attributes:
|
||||
label: Model used
|
||||
description: Link to the model
|
||||
placeholder: ResNet50 / YOLOv4
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: model_quantized
|
||||
attributes:
|
||||
label: Model quantization
|
||||
description: Is your model quantized?
|
||||
options:
|
||||
- 'Yes'
|
||||
- 'No'
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: target_platform
|
||||
attributes:
|
||||
label: Target Platform
|
||||
description: |
|
||||
You can also provide us full system log with the following command
|
||||
Windows cmd - "systeminfo"
|
||||
Linux terminal - "lscpu" and "lscpu -e"
|
||||
placeholder: Paste your full platform/system information here
|
||||
validations:
|
||||
required: false
|
||||
- type: textarea
|
||||
id: performance_description
|
||||
attributes:
|
||||
label: Performance issue description
|
||||
description: What issue are you having, and what did you expect to happen instead?
|
||||
placeholder: |
|
||||
Please provide a detailed description of what happened.
|
||||
Can the issue be reproduced using benchmark_app?
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: step_by_step
|
||||
attributes:
|
||||
label: Step-by-step reproduction
|
||||
description: How can we reproduce your issue?
|
||||
placeholder: Please provide detailed instructions on how to reproduce the issue
|
||||
validations:
|
||||
required: false
|
||||
- type: checkboxes
|
||||
id: terms
|
||||
attributes:
|
||||
label: Issue submission checklist
|
||||
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/intel/intel-one-mono/blob/main/CODE_OF_CONDUCT.md)
|
||||
options:
|
||||
- label: I'm reporting a performance issue. It's not a question.
|
||||
required: true
|
||||
- label: I checked the problem with the documentation, FAQ, open issues, Stack Overflow, etc., and have not found a solution.
|
||||
required: true
|
||||
- label: There is reproducer code and related data files such as images, videos, models, etc.
|
||||
required: true
|
||||
@@ -16,16 +16,15 @@ body:
|
||||
attributes:
|
||||
label: Pre-release feedback
|
||||
description: What is the issue or feedback on the pre-release?
|
||||
placeholder: Please describe the issue and/or feedback
|
||||
value: "Inference performance drop in OpenVINO 2022.4."
|
||||
placeholder: There is an inference performance drop in OpenVINO 2022.4.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: thoughts
|
||||
attributes:
|
||||
label: New Feature Feedback?
|
||||
label: New Feature Feedback
|
||||
description: Do you have any feedback on the new features released in the pre-release?
|
||||
placeholder: Any thoughts on the new feature are welcome
|
||||
placeholder: Any thoughts on the new features are welcome.
|
||||
validations:
|
||||
required: false
|
||||
- type: markdown
|
||||
|
||||
3
.github/dependabot.yml
vendored
3
.github/dependabot.yml
vendored
@@ -154,6 +154,7 @@ updates:
|
||||
time: "09:00"
|
||||
timezone: "Asia/Dubai"
|
||||
assignees:
|
||||
- "ilyachur"
|
||||
- "akashchi"
|
||||
- "mryzhov"
|
||||
- "ilya-lavrenov"
|
||||
open-pull-requests-limit: 3
|
||||
|
||||
3
.github/labeler.yml
vendored
3
.github/labeler.yml
vendored
@@ -17,6 +17,9 @@
|
||||
- '.ci/**/*'
|
||||
- 'Jenkinsfile'
|
||||
|
||||
'github_actions':
|
||||
- '.github/workflows/*'
|
||||
|
||||
'category: Core':
|
||||
- 'src/core/**/*'
|
||||
- 'src/common/itt/**/*'
|
||||
|
||||
4
.github/workflows/build_doc.yml
vendored
4
.github/workflows/build_doc.yml
vendored
@@ -19,7 +19,7 @@ jobs:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
lfs: true
|
||||
@@ -66,7 +66,7 @@ jobs:
|
||||
key: sphinx-docs-cache
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: Build docs
|
||||
|
||||
2
.github/workflows/check_pr_commits.yml
vendored
2
.github/workflows/check_pr_commits.yml
vendored
@@ -6,7 +6,7 @@ jobs:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: python3 -m pip install -r ./.github/github_org_control/requirements.txt
|
||||
|
||||
9
.github/workflows/code_snippets.yml
vendored
9
.github/workflows/code_snippets.yml
vendored
@@ -25,10 +25,9 @@ jobs:
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
lfs: true
|
||||
submodules: 'true'
|
||||
|
||||
- name: Install OpenCL
|
||||
uses: awalsh128/cache-apt-pkgs-action@v1.3.0
|
||||
@@ -38,10 +37,10 @@ jobs:
|
||||
version: 3.0
|
||||
|
||||
- name: CMake configure
|
||||
run: cmake -DCMAKE_BUILD_TYPE=Release -B build
|
||||
run: cmake -DCMAKE_BUILD_TYPE=Release -DTHREADING=SEQ -B build
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: Build snippets
|
||||
|
||||
12
.github/workflows/code_style.yml
vendored
12
.github/workflows/code_style.yml
vendored
@@ -11,9 +11,9 @@ jobs:
|
||||
permissions:
|
||||
pull-requests: write
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
submodules: 'true'
|
||||
|
||||
- name: Install clang-format-9
|
||||
run: |
|
||||
@@ -47,9 +47,9 @@ jobs:
|
||||
permissions:
|
||||
pull-requests: write
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
submodules: 'true'
|
||||
|
||||
- name: Install ShellCheck
|
||||
run: |
|
||||
@@ -78,9 +78,9 @@ jobs:
|
||||
NamingConventionCheck:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
submodules: 'true'
|
||||
|
||||
- name: Install Clang dependency
|
||||
run: |
|
||||
|
||||
10
.github/workflows/coverage.yml
vendored
10
.github/workflows/coverage.yml
vendored
@@ -28,9 +28,9 @@ jobs:
|
||||
max-size: 50G
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
submodules: 'true'
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
@@ -58,7 +58,7 @@ jobs:
|
||||
python3 -m pip install -r ${{ github.workspace }}/tools/mo/requirements_dev.txt
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: Build OpenVINO with CMake
|
||||
@@ -108,7 +108,7 @@ jobs:
|
||||
run: ${{ github.workspace }}/bin/intel64/Release/ov_hetero_func_tests
|
||||
|
||||
- name: Run IR frontend tests
|
||||
run: ${{ github.workspace }}/bin/intel64/Release/ov_ir_frontend_tests # --gtest_print_time=1 --gtest_output=xml:${{ github.workspace }}/testdata/TEST-IRFrontend.xml
|
||||
run: ${{ github.workspace }}/bin/intel64/Release/ov_ir_frontend_tests
|
||||
|
||||
- name: Run ONNX frontend tests
|
||||
run: ${{ github.workspace }}/bin/intel64/Release/ov_onnx_frontend_tests --gtest_filter=-*IE_GPU*
|
||||
@@ -144,6 +144,6 @@ jobs:
|
||||
lcov --capture --directory ${{ github.workspace }}/. --output-file coverage.info
|
||||
genhtml coverage.info --output-directory coverage-report
|
||||
- name: Collect coverage
|
||||
uses: codecov/codecov-action@v3
|
||||
uses: codecov/codecov-action@v4
|
||||
with:
|
||||
verbose: true
|
||||
|
||||
2
.github/workflows/dependency_review.yml
vendored
2
.github/workflows/dependency_review.yml
vendored
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Dependency Review
|
||||
uses: actions/dependency-review-action@v3
|
||||
|
||||
2
.github/workflows/files_size.yml
vendored
2
.github/workflows/files_size.yml
vendored
@@ -9,7 +9,7 @@ jobs:
|
||||
Check_Files_Size:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: git ls-tree
|
||||
run: git ls-tree -r -t -l --full-name HEAD | sort -n -r -k 4
|
||||
|
||||
276
.github/workflows/linux.yml
vendored
276
.github/workflows/linux.yml
vendored
@@ -1,5 +1,8 @@
|
||||
name: Tests on Linux (Ubuntu 22.04, Python 3.11)
|
||||
name: Tests on Linux (Ubuntu 20.04, Python 3.11)
|
||||
on:
|
||||
schedule:
|
||||
# at 00:00 on Wednesday and Saturday
|
||||
- cron: '0 0 * * 3,6'
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
@@ -29,7 +32,7 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-latest-8-cores
|
||||
runs-on: ubuntu-20.04-8-cores
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja'
|
||||
@@ -41,32 +44,22 @@ jobs:
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
SAMPLES_INSTALL_DIR: ${{ github.workspace }}/install/samples
|
||||
LAYER_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/layer_tests
|
||||
MODEL_HUB_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/model_hub_tests
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
DATA_PATH: ${{ github.workspace }}/testdata
|
||||
MODELS_PATH: ${{ github.workspace }}/testdata
|
||||
OV_TEMP: ${{ github.workspace }}/openvino_temp
|
||||
PYTHON_STATIC_ARGS: -m "not dynamic_library"
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'recursive'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: 'openvino_contrib'
|
||||
submodules: 'recursive'
|
||||
|
||||
- name: Clone testdata for C API tests
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: 'testdata'
|
||||
submodules: 'recursive'
|
||||
lfs: 'true'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
@@ -128,19 +121,12 @@ jobs:
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
verbose: 2
|
||||
key: ${{ github.job }}-linux
|
||||
key: linux-ubuntu
|
||||
restore-keys: |
|
||||
${{ github.job }}-linux
|
||||
|
||||
- name: Get tools versions
|
||||
run: |
|
||||
ninja --version || exit 1
|
||||
ccache --version || exit 1
|
||||
python3 --version || exit 1
|
||||
cmake --version || exit 1
|
||||
linux-ubuntu
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: CMake configure
|
||||
@@ -160,8 +146,6 @@ jobs:
|
||||
-DENABLE_STRICT_DEPENDENCIES=OFF \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
|
||||
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
|
||||
-DCMAKE_CXX_LINKER_LAUNCHER=ccache \
|
||||
-DCMAKE_C_LINKER_LAUNCHER=ccache \
|
||||
-DENABLE_SYSTEM_SNAPPY=ON \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
@@ -183,15 +167,24 @@ jobs:
|
||||
- name: Cmake Layer Tests
|
||||
run: cmake -GNinja -S ${{ env.OPENVINO_REPO }}/tests/layer_tests -B ${{ env.BUILD_DIR }}/layer_tests
|
||||
|
||||
- name: Cmake Model Hub Tests
|
||||
run: cmake -GNinja -S ${{ env.OPENVINO_REPO }}/tests/model_hub_tests -B ${{ env.BUILD_DIR }}/model_hub_tests
|
||||
|
||||
- name: Build Layer Tests
|
||||
run: cmake --build ${{ env.BUILD_DIR }}/layer_tests --parallel --config Release
|
||||
|
||||
- name: Build Model Hub Tests
|
||||
run: cmake --build ${{ env.BUILD_DIR }}/model_hub_tests --parallel --config Release
|
||||
|
||||
- name: Install wheel packages
|
||||
run: cmake -DCOMPONENT=python_wheels -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
|
||||
- name: Install Layer Tests
|
||||
run: cmake -DCOMPONENT=tests -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/layer_tests/cmake_install.cmake
|
||||
|
||||
- name: Install Model Hub Tests
|
||||
run: cmake -DCOMPONENT=tests -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/model_hub_tests/cmake_install.cmake
|
||||
|
||||
- name: Install python wheels
|
||||
run: python3 -m pip install openvino-dev --find-links=${{ env.INSTALL_DIR }}/tools
|
||||
|
||||
@@ -278,7 +271,7 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-20.04
|
||||
env:
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
@@ -456,6 +449,11 @@ jobs:
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_proxy_plugin_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVProxyTests.xml
|
||||
|
||||
- name: Hetero Unit Tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroUnitTests.xml
|
||||
|
||||
- name: Hetero Func Tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
@@ -474,7 +472,7 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-20.04
|
||||
env:
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
OPENVINO_CONTRIB_REPO: ${{ github.workspace }}/openvino_contrib
|
||||
@@ -482,9 +480,8 @@ jobs:
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
SAMPLES_INSTALL_DIR: ${{ github.workspace }}/install/samples
|
||||
LAYER_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/layer_tests
|
||||
MODEL_HUB_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/model_hub_tests
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
DATA_PATH: ${{ github.workspace }}/testdata
|
||||
MODELS_PATH: ${{ github.workspace }}/testdata
|
||||
OV_TEMP: ${{ github.workspace }}/openvino_temp
|
||||
PYTHON_STATIC_ARGS: -m "not dynamic_library"
|
||||
|
||||
@@ -494,10 +491,9 @@ jobs:
|
||||
mkdir -p ${{ env.INSTALL_DIR }} ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'recursive'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
@@ -590,6 +586,14 @@ jobs:
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/pyopenvino/tests/test_onnx/test_zoo_models.py \
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/pyopenvino/tests/test_onnx/test_backend.py
|
||||
|
||||
- name: Python API snippets
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
export PYTHONPATH=${{ env.INSTALL_TEST_DIR }}:${{ github.workspace }}/openvino/docs/:$PYTHONPATH
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
|
||||
python3 ${{ github.workspace }}/openvino/docs/snippets/main.py
|
||||
|
||||
- name: Model Optimizer UT
|
||||
run: |
|
||||
|
||||
@@ -617,6 +621,7 @@ jobs:
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/pytorch_tests -m precommit --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-pytorch.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow 1 Layer Tests - TF FE
|
||||
run: |
|
||||
@@ -629,6 +634,7 @@ jobs:
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_tests/ --use_new_frontend -m precommit_tf_fe --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow 2 Layer Tests - TF FE
|
||||
run: |
|
||||
@@ -640,6 +646,18 @@ jobs:
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow2_keras_tests/ --use_new_frontend -m precommit_tf_fe --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf2_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: JAX Layer Tests - TF FE
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/jax_tests/ -m precommit --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-jax.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: TensorFlow 1 Layer Tests - Legacy FE
|
||||
run: |
|
||||
@@ -659,6 +677,7 @@ jobs:
|
||||
--ir_version=11 --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf2_Activation.xml -k "sigmoid"
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow Lite Layer Tests - TFL FE
|
||||
run: |
|
||||
@@ -669,6 +688,7 @@ jobs:
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_lite_tests/ --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tfl_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: MO Python API Tests
|
||||
run: |
|
||||
@@ -679,6 +699,7 @@ jobs:
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/mo_python_api_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_mo_convert.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: Python Frontend tests
|
||||
run: |
|
||||
@@ -701,7 +722,9 @@ jobs:
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results-python
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.html
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'error'
|
||||
|
||||
CPU_Functional_Tests:
|
||||
@@ -709,10 +732,12 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-20.04-4-cores
|
||||
env:
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
PARALLEL_TEST_SCRIPT: ${{ github.workspace }}/install/tests/functional_test_utils/run_parallel.py
|
||||
PARALLEL_TEST_CACHE: ${{ github.workspace }}/install/tests/test_cache.lst
|
||||
|
||||
steps:
|
||||
- name: Create Directories
|
||||
@@ -744,15 +769,188 @@ jobs:
|
||||
tar -xzf openvino_tests.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_tests.tar.gz || exit 1
|
||||
popd
|
||||
|
||||
- name: Intel CPU plugin func tests
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
python3 -m pip install --upgrade pip
|
||||
python3 -m pip install -r ${{ env.INSTALL_TEST_DIR }}/functional_test_utils/requirements.txt
|
||||
|
||||
- name: Restore tests execution time
|
||||
uses: actions/cache/restore@v3
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-tests-functional-cpu-stamp
|
||||
|
||||
- name: Intel CPU plugin func tests (parallel)
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_cpu_func_tests --gtest_print_time=1 --gtest_filter=*smoke* --gtest_output=xml:"${{ env.INSTALL_TEST_DIR }}/TEST-CPUFuncTests.xml"
|
||||
python3 ${{ env.PARALLEL_TEST_SCRIPT }} -e ${{ env.INSTALL_TEST_DIR }}/ov_cpu_func_tests -c ${{ env.PARALLEL_TEST_CACHE }} -w ${{ env.INSTALL_TEST_DIR }} -s suite -rf 0 -- --gtest_print_time=1 --gtest_filter=*smoke*
|
||||
timeout-minutes: 25
|
||||
|
||||
- name: Save tests execution time
|
||||
uses: actions/cache/save@v3
|
||||
if: github.ref_name == 'master'
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results-functional-cpu
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/failed/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/crashed/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/hanged/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/interapted/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/disabled_tests.log
|
||||
if-no-files-found: 'error'
|
||||
|
||||
TensorFlow_Hub_Models_Tests:
|
||||
needs: Build
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ${{ github.event_name == 'schedule' && 'ubuntu-20.04-8-cores' || 'ubuntu-20.04'}}
|
||||
env:
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
MODEL_HUB_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/model_hub_tests
|
||||
|
||||
steps:
|
||||
- name: Create Directories
|
||||
run: |
|
||||
mkdir -p ${{ env.INSTALL_DIR }} ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd ${{ env.INSTALL_DIR }}
|
||||
tar -xzf openvino_package.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_package.tar.gz || exit 1
|
||||
popd
|
||||
|
||||
pushd ${{ env.INSTALL_TEST_DIR }}
|
||||
tar -xzf openvino_tests.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_tests.tar.gz || exit 1
|
||||
popd
|
||||
|
||||
- name: Install Python wheels
|
||||
run: |
|
||||
python3 -m pip install openvino --find-links=${{ env.INSTALL_DIR }}/tools
|
||||
|
||||
- name: TensorFlow Hub Tests - TF FE
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.MODEL_HUB_TESTS_INSTALL_DIR }}/tf_hub_tests/requirements.txt
|
||||
|
||||
export PYTHONPATH=${{ env.MODEL_HUB_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
python3 -m pytest ${{ env.MODEL_HUB_TESTS_INSTALL_DIR }}/tf_hub_tests/ -m ${{ env.TYPE }} --html=${{ env.INSTALL_TEST_DIR }}/TEST-tf_hub_tf_fe.html --self-contained-html
|
||||
env:
|
||||
TYPE: ${{ github.event_name == 'schedule' && 'nightly' || 'precommit'}}
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results-tensorflow-hub-models
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.html
|
||||
if-no-files-found: 'error'
|
||||
|
||||
PyTorch_Models_Tests:
|
||||
needs: Build
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ${{ github.event_name == 'schedule' && 'ubuntu-20.04-8-cores' || 'ubuntu-20.04'}}
|
||||
env:
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
MODEL_HUB_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/model_hub_tests
|
||||
|
||||
steps:
|
||||
- name: Maximize build space
|
||||
run: |
|
||||
sudo rm -rf /usr/local/lib/android # will release about 10 GB if you don't need Android
|
||||
sudo rm -rf /usr/share/dotnet # will release about 20GB if you don't need .NET
|
||||
sudo rm -rf /opt/ghc
|
||||
echo "Available storage:"
|
||||
df -h
|
||||
- name: Create Directories
|
||||
run: |
|
||||
mkdir -p ${{ env.INSTALL_DIR }} ${{ env.INSTALL_TEST_DIR }}
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd ${{ env.INSTALL_DIR }}
|
||||
tar -xzf openvino_package.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_package.tar.gz || exit 1
|
||||
popd
|
||||
pushd ${{ env.INSTALL_TEST_DIR }}
|
||||
tar -xzf openvino_tests.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_tests.tar.gz || exit 1
|
||||
popd
|
||||
- name: Install Python wheels
|
||||
run: |
|
||||
python3 -m pip install openvino --find-links=${{ env.INSTALL_DIR }}/tools
|
||||
- name: Install requirements
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.MODEL_HUB_TESTS_INSTALL_DIR }}/torch_tests/requirements.txt
|
||||
python3 -m pip install -r ${{ env.MODEL_HUB_TESTS_INSTALL_DIR }}/torch_tests/requirements_secondary.txt
|
||||
python3 -m pip cache purge
|
||||
echo "Available storage:"
|
||||
df -h
|
||||
du -h -d0 ~/.cache ~/*
|
||||
- name: PyTorch Models Tests
|
||||
run: |
|
||||
export PYTHONPATH=${{ env.MODEL_HUB_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
python3 -m pytest ${{ env.MODEL_HUB_TESTS_INSTALL_DIR }}/torch_tests/ -m ${{ env.TYPE }} --html=${{ env.INSTALL_TEST_DIR }}/TEST-torch_model_tests.html --self-contained-html -v
|
||||
env:
|
||||
TYPE: ${{ github.event_name == 'schedule' && 'nightly' || 'precommit'}}
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: Available storage after tests
|
||||
run: |
|
||||
echo "Available storage:"
|
||||
df -h
|
||||
du -h -d0 ~/.cache ~/*
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results-torch-models
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.html
|
||||
if-no-files-found: 'error'
|
||||
|
||||
173
.github/workflows/linux_android_arm64.yml
vendored
Normal file
173
.github/workflows/linux_android_arm64.yml
vendored
Normal file
@@ -0,0 +1,173 @@
|
||||
name: Linux Android ARM64 (Ubuntu 20.04, Python 3.11)
|
||||
on:
|
||||
schedule:
|
||||
# run daily at 00:00
|
||||
- cron: '0 0 * * *'
|
||||
workflow_dispatch:
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# push:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref || github.run_id }}-linux-android-arm64
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
Build:
|
||||
# TODO: remove. Temporary measure to prevent the workflow from scheduling on forks.
|
||||
if: ${{ github.repository_owner == 'openvinotoolkit' }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-20.04-8-cores
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: ccache
|
||||
BUILD_TYPE: Debug
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
VCPKG_ROOT: ${{ github.workspace }}/vcpkg
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
OV_TEMP: ${{ github.workspace }}/openvino_temp
|
||||
ANDROID_TOOLS: ${{ github.workspace }}/android_tools
|
||||
ANDROID_NDK_HOME: ${{ github.workspace }}/android_tools/ndk-bundle
|
||||
ANDROID_SDK_VERSION: 29
|
||||
ANDROID_ABI_CONFIG: arm64-v8a
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
|
||||
- name: Init submodules for non vcpkg dependencies
|
||||
run: |
|
||||
pushd ${{ env.OPENVINO_REPO }}
|
||||
git submodule update --init -- ${{ env.OPENVINO_REPO }}/src/plugins
|
||||
git submodule update --init -- ${{ env.OPENVINO_REPO }}/thirdparty/gtest
|
||||
git submodule update --init -- ${{ env.OPENVINO_REPO }}/thirdparty/open_model_zoo
|
||||
popd
|
||||
|
||||
- name: Clone VCPKG
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'microsoft/vcpkg'
|
||||
path: 'vcpkg'
|
||||
fetch-depth: '0'
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
# generic dependencies
|
||||
sudo -E apt update
|
||||
sudo -E apt --assume-yes install ccache scons default-jdk python3-pip ninja-build build-essential
|
||||
|
||||
wget https://github.com/ninja-build/ninja/releases/download/v1.10.2/ninja-linux.zip
|
||||
unzip ninja-linux.zip
|
||||
sudo cp -v ninja /usr/local/bin/
|
||||
|
||||
ln -s /usr/local/bin/ninja /usr/local/bin/ninja-build
|
||||
|
||||
# vcpkg's tool dependencies
|
||||
sudo -E apt --assume-yes install curl zip unzip tar
|
||||
|
||||
# vcpkg 'python3' port dependencies
|
||||
sudo -E apt --assume-yes install autoconf libtool autoconf-archive
|
||||
|
||||
# vcpkg tree of dependencies require extra packages
|
||||
sudo -E apt --assume-yes install pkg-config linux-libc-dev
|
||||
|
||||
# Install Android SDK, NDK and Tools
|
||||
sudo apt -y --no-install-recommends install unzip
|
||||
wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip
|
||||
unzip commandlinetools-linux-7583922_latest.zip
|
||||
echo "yes" | ./cmdline-tools/bin/sdkmanager --sdk_root=${{ env.ANDROID_TOOLS }} --install "ndk-bundle" "platform-tools" "platforms;android-${{ env.ANDROID_SDK_VERSION }}"
|
||||
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
verbose: 2
|
||||
key: ${{ github.job }}-linux-android-arm64
|
||||
restore-keys: |
|
||||
${{ github.job }}-linux-android-arm64
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: Build vcpkg
|
||||
run: |
|
||||
${{ env.VCPKG_ROOT }}/bootstrap-vcpkg.sh --disableMetrics
|
||||
# patch vcpkg default (community) toolchain to build only Release configuration
|
||||
echo "set(VCPKG_BUILD_TYPE release)" >> ${{ env.VCPKG_ROOT }}/triplets/community/arm64-android.cmake
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: CMake configure
|
||||
run: |
|
||||
cmake \
|
||||
-G Ninja \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} \
|
||||
-DVCPKG_TARGET_TRIPLET=arm64-android \
|
||||
-DVCPKG_HOST_TRIPLET=x64-linux-release \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${{ env.VCPKG_ROOT }}/scripts/buildsystems/vcpkg.cmake \
|
||||
-DVCPKG_CHAINLOAD_TOOLCHAIN_FILE=${{ env.ANDROID_NDK_HOME }}/build/cmake/android.toolchain.cmake \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON \
|
||||
-DANDROID_ABI=${{ env.ANDROID_ABI_CONFIG }} \
|
||||
-DANDROID_PLATFORM=${{ env.ANDROID_SDK_VERSION }} \
|
||||
-DENABLE_PYTHON=OFF \
|
||||
-DENABLE_SYSTEM_OPENCL=ON \
|
||||
-DENABLE_SYSTEM_PROTOBUF=ON \
|
||||
-DENABLE_SYSTEM_PUGIXML=ON \
|
||||
-DENABLE_SYSTEM_SNAPPY=ON \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DENABLE_SYSTEM_FLATBUFFERS=ON \
|
||||
-DENABLE_INTEL_GPU=ON \
|
||||
-DENABLE_TESTS=ON \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
|
||||
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
|
||||
-S ${{ env.OPENVINO_REPO }} \
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Clean ccache stats
|
||||
run: ccache --zero-stats --show-config
|
||||
|
||||
- name: Build Android ARM64
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel ${{ steps.cpu-cores.outputs.count }} --config ${{ env.BUILD_TYPE }}
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ccache --show-stats
|
||||
|
||||
- name: List binary files
|
||||
run: ls -alR ${{ env.OPENVINO_REPO }}/bin/
|
||||
200
.github/workflows/linux_arm64.yml
vendored
Normal file
200
.github/workflows/linux_arm64.yml
vendored
Normal file
@@ -0,0 +1,200 @@
|
||||
name: Linux ARM64 with Conan (Ubuntu 20.04, Python 3.11)
|
||||
on:
|
||||
schedule:
|
||||
# run daily at 00:00
|
||||
- cron: '0 0 * * *'
|
||||
workflow_dispatch:
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# push:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref || github.run_id }}-linux-arm64
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
Build:
|
||||
# TODO: remove. Temporary measure to prevent the workflow from scheduling on forks.
|
||||
if: ${{ github.repository_owner == 'openvinotoolkit' }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-20.04-8-cores
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: ccache
|
||||
BUILD_TYPE: Release
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
OV_TEMP: ${{ github.workspace }}/openvino_temp
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
|
||||
- name: Init submodules for non Conan dependencies
|
||||
run: |
|
||||
pushd ${{ env.OPENVINO_REPO }}
|
||||
git submodule update --init -- ${{ env.OPENVINO_REPO }}/src/plugins
|
||||
git submodule update --init -- ${{ env.OPENVINO_REPO }}/thirdparty/gtest
|
||||
git submodule update --init -- ${{ env.OPENVINO_REPO }}/thirdparty/open_model_zoo
|
||||
popd
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
sudo -E apt update
|
||||
# install dependencies needed to build CPU plugin for ARM
|
||||
sudo -E apt --assume-yes install scons gcc-10-aarch64-linux-gnu g++-10-aarch64-linux-gnu
|
||||
# generic dependencies
|
||||
sudo -E apt --assume-yes install cmake ccache ninja-build unzip fdupes
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
python3 -m pip install --upgrade pip
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/requirements.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/wheel/requirements-dev.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/src/compatibility/openvino/requirements-dev.txt
|
||||
|
||||
- name: Install arm64 libraries
|
||||
run: |
|
||||
echo deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal main restricted > arm64-sources.list
|
||||
echo deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal-updates main restricted >> arm64-sources.list
|
||||
echo deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal universe >> arm64-sources.list
|
||||
echo deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal-updates universe >> arm64-sources.list
|
||||
echo deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal multiverse >> arm64-sources.list
|
||||
echo deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal-updates multiverse >> arm64-sources.list
|
||||
echo deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse >> arm64-sources.list
|
||||
echo deb [arch=amd64] http://security.ubuntu.com/ubuntu/ focal-security main restricted >> arm64-sources.list
|
||||
echo deb [arch=amd64] http://security.ubuntu.com/ubuntu/ focal-security universe >> arm64-sources.list
|
||||
echo deb [arch=amd64] http://security.ubuntu.com/ubuntu/ focal-security multiverse >> arm64-sources.list
|
||||
echo deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ focal main >> arm64-sources.list
|
||||
echo deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ focal universe >> arm64-sources.list
|
||||
echo deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ focal-updates main >> arm64-sources.list
|
||||
echo deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ focal-security main >> arm64-sources.list
|
||||
sudo mv arm64-sources.list /etc/apt/sources.list.d/
|
||||
sudo -E dpkg --add-architecture arm64
|
||||
sudo -E apt-get update -o Dir::Etc::sourcelist=/etc/apt/sources.list.d/arm64-sources.list
|
||||
sudo -E apt-get install -y --no-install-recommends libpython3-dev:arm64
|
||||
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
verbose: 2
|
||||
key: ${{ github.job }}-linux-arm64
|
||||
restore-keys: |
|
||||
${{ github.job }}-linux-arm64
|
||||
|
||||
- name: Install conan and dependencies
|
||||
run: |
|
||||
|
||||
# create build directory
|
||||
mkdir -p ${{ env.BUILD_DIR }}
|
||||
|
||||
python3 -m pip install conan
|
||||
# install build profile compilers
|
||||
sudo -E apt --assume-yes install gcc g++
|
||||
# generate build profile
|
||||
conan profile detect
|
||||
# generate host profile for linux_arm64
|
||||
echo "include(default)" > ${{ env.BUILD_DIR }}/linux_arm64
|
||||
echo "[buildenv]" >> ${{ env.BUILD_DIR }}/linux_arm64
|
||||
echo "CC=aarch64-linux-gnu-gcc-10" >> ${{ env.BUILD_DIR }}/linux_arm64
|
||||
echo "CXX=aarch64-linux-gnu-g++-10" >> ${{ env.BUILD_DIR }}/linux_arm64
|
||||
# install OpenVINO dependencies
|
||||
conan install ${{ env.OPENVINO_REPO }}/conanfile.txt \
|
||||
-pr:h ${{ env.BUILD_DIR }}/linux_arm64 \
|
||||
-s:h arch=armv8 \
|
||||
-of ${{ env.BUILD_DIR }}/dependencies \
|
||||
-b missing
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: CMake configure
|
||||
run: |
|
||||
source ${{ env.BUILD_DIR }}/dependencies/conanbuild.sh
|
||||
cmake \
|
||||
-G Ninja \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DBUILD_SHARED_LIBS=OFF \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF \
|
||||
-DENABLE_CPPLINT=ON \
|
||||
-DENABLE_INTEL_GPU=ON \
|
||||
-DENABLE_PYTHON=ON \
|
||||
-DENABLE_WHEEL=ON \
|
||||
-DPYBIND11_PYTHONLIBS_OVERWRITE=OFF \
|
||||
-DPYTHON_MODULE_EXTENSION=$(aarch64-linux-gnu-python3-config --extension-suffix) \
|
||||
-DPYTHON_LIBRARY=/usr/lib/aarch64-linux-gnu/libc-2.31.so \
|
||||
-DPYTHON_INCLUDE_DIR=$(python3 -c "import sysconfig; print(sysconfig.get_path('include'))") \
|
||||
-DENABLE_TESTS=ON \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DENABLE_SYSTEM_PROTOBUF=ON \
|
||||
-DENABLE_SYSTEM_SNAPPY=ON \
|
||||
-DENABLE_SYSTEM_PUGIXML=ON \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${{ env.BUILD_DIR }}/dependencies/conan_toolchain.cmake \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
|
||||
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
|
||||
-DARM_COMPUTE_SCONS_JOBS=${{ steps.cpu-cores.outputs.count }} \
|
||||
-DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} \
|
||||
-DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} \
|
||||
-DENABLE_PYTHON_PACKAGING=ON \
|
||||
-S ${{ env.OPENVINO_REPO }} \
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
source ${{ env.BUILD_DIR }}/dependencies/deactivate_conanbuild.sh
|
||||
|
||||
- name: Clean ccache stats
|
||||
run: ccache --zero-stats --show-config
|
||||
|
||||
- name: Build OpenVINO Runtime
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel ${{ steps.cpu-cores.outputs.count }} --config ${{ env.BUILD_TYPE }}
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ccache --show-stats
|
||||
|
||||
- name: Install OpenVINO Runtime
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel ${{ steps.cpu-cores.outputs.count }} --config ${{ env.BUILD_TYPE }} --target install
|
||||
|
||||
- name: Build OpenVINO C++ samples
|
||||
run: |
|
||||
source ${{ env.BUILD_DIR }}/dependencies/conanbuild.sh
|
||||
${{ env.INSTALL_DIR }}/samples/cpp/build_samples.sh
|
||||
source ${{ env.BUILD_DIR }}/dependencies/deactivate_conanbuild.sh
|
||||
env:
|
||||
CMAKE_TOOLCHAIN_FILE: ${{ env.BUILD_DIR }}/dependencies/conan_toolchain.cmake
|
||||
140
.github/workflows/linux_conditional_compilation.yml
vendored
Normal file
140
.github/workflows/linux_conditional_compilation.yml
vendored
Normal file
@@ -0,0 +1,140 @@
|
||||
name: Linux Conditional Compilation (Ubuntu 22.04, Python 3.11)
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
# run daily at 00:00
|
||||
- cron: '0 0 * * *'
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# push:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref || github.run_id }}-linux-cc
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
Build:
|
||||
# TODO: remove. Temporary measure to prevent the workflow from scheduling on forks.
|
||||
if: ${{ github.repository_owner == 'openvinotoolkit' }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-latest-8-cores
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: ccache
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
OPENVINO_CONTRIB_REPO: ${{ github.workspace }}/openvino_contrib
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
MODELS_PATH: ${{ github.workspace }}/testdata
|
||||
OV_TEMP: ${{ github.workspace }}/openvino_temp
|
||||
PYTHON_STATIC_ARGS: -m "not dynamic_library and not template_plugin"
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone test models
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: 'testdata'
|
||||
lfs: 'true'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
sudo -E ${{ env.OPENVINO_REPO }}/install_build_dependencies.sh
|
||||
sudo -E apt update
|
||||
sudo -E apt --assume-yes install openjdk-11-jdk libbz2-dev clang unzip libpugixml-dev libtbb-dev intel-opencl-icd ocl-icd-opencl-dev opencl-headers
|
||||
|
||||
wget https://github.com/ninja-build/ninja/releases/download/v1.10.2/ninja-linux.zip
|
||||
unzip ninja-linux.zip
|
||||
sudo cp -v ninja /usr/local/bin/
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
# save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
verbose: 2
|
||||
key: linux-cc
|
||||
restore-keys: |
|
||||
linux-cc
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: CMake configure CC COLLECT
|
||||
run: |
|
||||
cmake \
|
||||
-G "Ninja Multi-Config" \
|
||||
-DENABLE_CPPLINT=OFF \
|
||||
-DENABLE_GAPI_PREPROCESSING=OFF \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF \
|
||||
-DENABLE_FASTER_BUILD=ON \
|
||||
-DENABLE_PROFILING_ITT=ON \
|
||||
-DSELECTIVE_BUILD=COLLECT \
|
||||
-S ${{ env.OPENVINO_REPO }} \
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Clean ccache stats
|
||||
run: ccache --zero-stats --show-config
|
||||
|
||||
- name: Build CC COLLECT
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel ${{ steps.cpu-cores.outputs.count }} --config Release --target openvino_intel_cpu_plugin openvino_ir_frontend benchmark_app sea_itt_lib
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ccache --show-stats
|
||||
|
||||
- name: Code usage analysis
|
||||
run: |
|
||||
python3 ${{ env.OPENVINO_REPO }}/thirdparty/itt_collector/runtool/sea_runtool.py \
|
||||
--bindir ${{ env.OPENVINO_REPO }}/bin/intel64/Release -o ${{ env.BUILD_DIR }}/itt_stat ! \
|
||||
${{ env.OPENVINO_REPO }}/bin/intel64/Release/benchmark_app -niter 1 -nireq 1 \
|
||||
-m ${{ env.MODELS_PATH }}/models/test_model/test_model_fp32.xml -d CPU
|
||||
|
||||
- name: CMake configure with CC ON
|
||||
run: cmake -DSELECTIVE_BUILD=ON -DSELECTIVE_BUILD_STAT=${{ env.BUILD_DIR }}/*.csv -S ${{ env.OPENVINO_REPO }} -B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Build with CC ON
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel ${{ steps.cpu-cores.outputs.count }} --config Release --target openvino_intel_cpu_plugin openvino_ir_frontend
|
||||
|
||||
- name: Use OpenVINO after CC
|
||||
run: |
|
||||
${{ env.OPENVINO_REPO }}/bin/intel64/Release/benchmark_app -niter 1 -nireq 1 \
|
||||
-m ${{ env.MODELS_PATH }}/models/test_model/test_model_fp32.xml -d CPU
|
||||
433
.github/workflows/linux_debian.yml
vendored
Normal file
433
.github/workflows/linux_debian.yml
vendored
Normal file
@@ -0,0 +1,433 @@
|
||||
name: Linux Debian (Ubuntu 20.04, Python 3.11)
|
||||
on:
|
||||
schedule:
|
||||
# run daily at 00:00
|
||||
- cron: '0 0 * * *'
|
||||
workflow_dispatch:
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# push:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref || github.run_id }}-linux-debian
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
Build:
|
||||
# TODO: remove. Temporary measure to prevent the workflow from scheduling on forks.
|
||||
if: ${{ github.repository_owner == 'openvinotoolkit' }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-20.04-8-cores
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_CXX_LINKER_LAUNCHER: ccache
|
||||
CMAKE_C_LINKER_LAUNCHER: ccache
|
||||
BUILD_TYPE: Release
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
LAYER_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/layer_tests
|
||||
OV_TEMP: ${{ github.workspace }}/openvino_temp
|
||||
SAMPLES_INSTALL_DIR: /usr/share/openvino/samples
|
||||
PYTHON_STATIC_ARGS: -m "not dynamic_library and not template_plugin"
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Create Directories
|
||||
run: |
|
||||
mkdir -p ${{ env.BUILD_DIR }}
|
||||
mkdir -p ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
sudo -E apt update
|
||||
sudo -E ${{ env.OPENVINO_REPO }}/install_build_dependencies.sh
|
||||
|
||||
# 'clang' is used as a default compiler
|
||||
sudo apt --assume-yes install clang
|
||||
sudo apt --assume-yes install --no-install-recommends libopencv-imgproc-dev libopencv-imgcodecs-dev
|
||||
|
||||
# Speed up build
|
||||
sudo apt -y --no-install-recommends install unzip
|
||||
wget https://github.com/ninja-build/ninja/releases/download/v1.10.2/ninja-linux.zip
|
||||
unzip ninja-linux.zip
|
||||
sudo cp -v ninja /usr/local/bin/
|
||||
|
||||
# Speed up tests
|
||||
git clone https://github.com/google/gtest-parallel.git
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
python3 -m pip install --upgrade pip
|
||||
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/wheel/requirements-dev.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/requirements.txt
|
||||
|
||||
# For running Python API tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/src/compatibility/openvino/requirements-dev.txt
|
||||
|
||||
# For running Paddle frontend unit tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/paddle/tests/requirements.txt
|
||||
|
||||
# For running ONNX frontend unit tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests/requirements.txt
|
||||
|
||||
# For running TensorFlow frontend unit tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/tensorflow/tests/requirements.txt
|
||||
|
||||
# For MO unit tests
|
||||
python3 -m pip install -U pip
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_mxnet.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_caffe.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_kaldi.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_onnx.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_tf2.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_dev.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/paddle/tests/requirements.txt
|
||||
|
||||
# for Python API tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/requirements_test.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements.txt
|
||||
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
verbose: 2
|
||||
key: ${{ github.job }}-linux-debian
|
||||
restore-keys: |
|
||||
${{ github.job }}-linux-debian
|
||||
|
||||
- name: Get tools versions
|
||||
run: |
|
||||
ninja --version
|
||||
ccache --version
|
||||
python3 --version
|
||||
cmake --version
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: CMake configure
|
||||
run: |
|
||||
cmake \
|
||||
-GNinja \
|
||||
-DENABLE_CPPLINT=OFF \
|
||||
-DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF \
|
||||
-DENABLE_PYTHON=ON \
|
||||
-DENABLE_INTEL_GNA=OFF \
|
||||
-DENABLE_TESTS=ON \
|
||||
-DENABLE_FASTER_BUILD=ON \
|
||||
-DENABLE_STRICT_DEPENDENCIES=OFF \
|
||||
-DENABLE_SYSTEM_SNAPPY=ON \
|
||||
-DENABLE_PYTHON_PACKAGING=ON \
|
||||
-DCPACK_GENERATOR=DEB \
|
||||
-S ${{ env.OPENVINO_REPO }} \
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Clean ccache stats
|
||||
run: ccache --zero-stats --show-config
|
||||
|
||||
- name: Build
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel ${{ steps.cpu-cores.outputs.count }} --config ${{ env.BUILD_TYPE }}
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ccache --show-stats
|
||||
|
||||
- name: CMake Layer Tests
|
||||
run: cmake -GNinja -S ${{ env.OPENVINO_REPO }}/tests/layer_tests -B ${{ env.BUILD_DIR }}/layer_tests
|
||||
|
||||
- name: Build Layer Tests
|
||||
run: cmake --build ${{ env.BUILD_DIR }}/layer_tests --parallel --config ${{ env.BUILD_TYPE }}
|
||||
|
||||
# to check that wheel packages tested later contain all the dependencies like TBB or pugixml
|
||||
- name: Remove debian dependencies
|
||||
run: sudo apt-get remove libtbb2 libpugixml1v5 -y
|
||||
|
||||
- name: Install wheel packages
|
||||
run: cmake -DCOMPONENT=python_wheels -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
|
||||
- name: Install Python Samples
|
||||
run: cmake -DCOMPONENT=python_samples -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
|
||||
- name: Install Layer Tests
|
||||
run: cmake -DCOMPONENT=tests -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/layer_tests/cmake_install.cmake
|
||||
|
||||
- name: Install tests
|
||||
run: cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -DCOMPONENT=tests -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
|
||||
- name: List install test files
|
||||
run: ls -alR ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Install python wheels
|
||||
run: python3 -m pip install openvino-dev --find-links=${{ env.INSTALL_DIR }}/tools
|
||||
|
||||
- name: Build Debian packages
|
||||
run: |
|
||||
sudo apt-get install libtbb-dev libpugixml-dev -y
|
||||
cmake --build ${{ env.BUILD_DIR }} --config ${{ env.BUILD_TYPE }} --target package --parallel
|
||||
|
||||
- name: Install Debian packages
|
||||
run: |
|
||||
pushd ${{ env.BUILD_DIR }}
|
||||
# install debian packages from previous release
|
||||
sudo apt-get -y update
|
||||
sudo apt-get install --no-install-recommends gnupg wget -y
|
||||
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
|
||||
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
|
||||
echo "deb https://apt.repos.intel.com/openvino/2023 ubuntu20 main" | sudo tee /etc/apt/sources.list.d/intel-openvino-2023.list
|
||||
sudo apt-get update
|
||||
sudo apt-get install openvino -y
|
||||
# install our local one and make sure the conflicts are resolved
|
||||
sudo apt-get install --no-install-recommends dpkg-dev -y
|
||||
rm -r _CPack_Packages
|
||||
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
|
||||
echo "deb [trusted=yes] file:${{ env.BUILD_DIR }} ./" | sudo tee /etc/apt/sources.list.d/openvino-local.list
|
||||
sudo apt-get update
|
||||
sudo apt-get install openvino -y
|
||||
popd
|
||||
|
||||
- name: List install files
|
||||
run: ls -alR ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Build cpp samples - gcc
|
||||
run: ${{ env.SAMPLES_INSTALL_DIR }}/cpp/build_samples.sh -i ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Build c samples
|
||||
run: ${{ env.SAMPLES_INSTALL_DIR }}/c/build_samples.sh -i ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: OpenVINO Core Unit Tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_core_unit_tests --gtest_print_time=1 --gtest_filter=-*IE_GPU* \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVCoreUT.xml
|
||||
|
||||
- name: Proxy Plugin Tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_proxy_plugin_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVProxyTests.xml
|
||||
|
||||
- name: Hetero Unit Tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroUnitTests.xml
|
||||
|
||||
- name: Hetero Func Tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroFuncTests.xml
|
||||
|
||||
- name: ONNX frontend tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_onnx_frontend_tests --gtest_print_time=1 --gtest_filter=-*IE_GPU*:*FrontEndLoadFromTest.testLoadFromTwoStreams*:*FrontEndLoadFromTest.testLoadFromTwoFiles* \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ONNXFrontend.xml
|
||||
|
||||
- name: TensorFlow frontend tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_frontend_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowFrontend.xml
|
||||
|
||||
# Disabled in Azure: https://github.com/openvinotoolkit/openvino/blob/master/.ci/azure/linux.yml#L403
|
||||
# - name: PaddlePaddle frontend tests
|
||||
# run: |
|
||||
# ${{ env.INSTALL_TEST_DIR }}/paddle_tests --gtest_print_time=1 --gtest_filter=*smoke* \
|
||||
# --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-PaddleTests.xml
|
||||
|
||||
- name: TensorFlow Common tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_common_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowCommonFrontend.xml
|
||||
|
||||
- name: TensorFlow Lite frontend tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_lite_frontend_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowLiteFrontend.xml
|
||||
|
||||
- name: Snippets func tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_snippets_func_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-SnippetsFuncTests.xml
|
||||
|
||||
- name: CPU plugin unit tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_cpu_unit_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-CPUUnitTests.xml
|
||||
|
||||
- name: AUTO UT
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_auto_unit_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_unit_tests.xml
|
||||
|
||||
- name: Template plugin tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_template_func_tests --gtest_print_time=1 \
|
||||
--gtest_filter=*smoke* \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TemplateFuncTests.xml
|
||||
|
||||
- name: Inference Engine C API tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/InferenceEngineCAPITests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-InferenceEngineCAPITests.xml
|
||||
|
||||
- name: OpenVINO C API tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_capi_test --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OpenVINOCAPITests.xml
|
||||
|
||||
- name: nGraph and IE Python Bindings Tests
|
||||
run: |
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/pyngraph ${{ env.PYTHON_STATIC_ARGS }} \
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-Pyngraph.xml \
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/pyngraph/tests/test_onnx/test_zoo_models.py \
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/pyngraph/tests/test_onnx/test_backend.py
|
||||
|
||||
- name: Python API 2.0 Tests
|
||||
run: |
|
||||
# For python imports to import pybind_mock_frontend
|
||||
export PYTHONPATH=${{ env.INSTALL_TEST_DIR }}:${{ env.OPENVINO_REPO }}/tools/mo:$PYTHONPATH
|
||||
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
|
||||
python3 -m pytest -sv ${{ env.INSTALL_TEST_DIR }}/pyopenvino \
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-Pyngraph.xml \
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/pyopenvino/tests/test_utils/test_utils.py
|
||||
|
||||
- name: ONNX Frontend Python Tests
|
||||
run: |
|
||||
# For python imports to import pybind_mock_frontend
|
||||
export PYTHONPATH=${{ env.INSTALL_TEST_DIR }}:${{ env.OPENVINO_REPO }}/tools/mo:$PYTHONPATH
|
||||
|
||||
export LD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$LD_LIBRARY_PATH
|
||||
|
||||
python3 -m pytest -sv ${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests \
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-ONNX-FE-PYTHON.xml \
|
||||
--ignore=${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests/test_python/test_zoo_models.py \
|
||||
--ignore=${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests/test_python/test_backend.py
|
||||
|
||||
- name: Model Optimizer UT
|
||||
run: |
|
||||
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.OPENVINO_REPO }}/tools/ovc/:${{ env.LAYER_TESTS_INSTALL_DIR }}:${{ env.INSTALL_TEST_DIR }}:${{ env.INSTALL_DIR }}/python/python3.11:$PYTHONPATH
|
||||
|
||||
# Need to be reinstalled to have correct numpy version
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_mxnet.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_caffe.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_kaldi.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_onnx.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_tf2.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_dev.txt
|
||||
|
||||
python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/mo/unit_tests \
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-ModelOptimizer.xml
|
||||
|
||||
# run not all smoke filter to save time in post-commit
|
||||
- name: CPU FuncTests
|
||||
run: ${{ env.INSTALL_TEST_DIR }}/ov_cpu_func_tests --gtest_filter=*OVCLass*:*CoreThreadingTests* --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_cpu_func_tests.xml
|
||||
|
||||
- name: CMake Samples Tests
|
||||
run: cmake -GNinja -S ${{ env.OPENVINO_REPO }}/tests/samples_tests -B ${{ env.BUILD_DIR }}/samples_tests
|
||||
|
||||
- name: Install Samples Tests
|
||||
run: cmake -DCOMPONENT=tests -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/samples_tests/cmake_install.cmake
|
||||
|
||||
- name: Samples Smoke Tests
|
||||
run: |
|
||||
python3 -m pip install --ignore-installed PyYAML -r ${{ env.INSTALL_TEST_DIR }}/smoke_tests/requirements.txt
|
||||
|
||||
export LD_LIBRARY_PATH=${{ env.IE_APP_PATH }}:$LD_LIBRARY_PATH
|
||||
|
||||
python3 -m pytest -sv ${{ env.INSTALL_TEST_DIR }}/smoke_tests -k "not GNA" \
|
||||
--env_conf ${{ env.INSTALL_TEST_DIR }}/smoke_tests/env_config.yml \
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-SamplesSmokeTests.xml
|
||||
env:
|
||||
IE_APP_PATH: ${{ env.INSTALL_DIR }}/samples_bin
|
||||
IE_APP_PYTHON_PATH: ${{ env.INSTALL_DIR }}/share/openvino/samples/python
|
||||
LD_LIBRARY_PATH: ${{ env.INSTALL_DIR }}/samples_bin
|
||||
SHARE: ${{ env.INSTALL_TEST_DIR }}/smoke_tests/samples_smoke_tests_data
|
||||
WORKSPACE: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: TensorFlow 1 Layer Tests - Legacy FE
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_tests/test_tf_Roll.py --ir_version=10 --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf_Roll.xml
|
||||
|
||||
- name: TensorFlow Lite Layer Tests - TFL FE
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
# Need to be reinstalled to have correct numpy version
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_caffe.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_kaldi.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_onnx.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_tf2.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_dev.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_mxnet.txt
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_lite_tests/ --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tfl_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'error'
|
||||
182
.github/workflows/linux_onnxruntime.yml
vendored
Normal file
182
.github/workflows/linux_onnxruntime.yml
vendored
Normal file
@@ -0,0 +1,182 @@
|
||||
name: Linux ONNX Runtime (Ubuntu 20.04, Python 3.11)
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
# run daily at 00:00
|
||||
- cron: '0 0 * * *'
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# push:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref || github.run_id }}-linux-onnx-runtime
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
Build:
|
||||
# TODO: remove. Temporary measure to prevent the workflow from scheduling on forks.
|
||||
if: ${{ github.repository_owner == 'openvinotoolkit' }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-20.04-8-cores
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_CXX_LINKER_LAUNCHER: ccache
|
||||
CMAKE_C_LINKER_LAUNCHER: ccache
|
||||
BUILD_TYPE: Release
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
ONNX_RUNTIME_REPO: ${{ github.workspace }}/onnxruntime
|
||||
ONNX_RUNTIME_UTILS: ${{ github.workspace }}/openvino/.ci/azure/ci_utils/onnxruntime
|
||||
ONNX_RUNTIME_BUILD_DIR: ${{ github.workspace }}/onnxruntime/build
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
INSTALL_DIR: ${{ github.workspace }}/install/openvino
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone ONNX Runtime
|
||||
run: |
|
||||
branch=`tr -s '\n ' < ${{ env.ONNX_RUNTIME_UTILS }}/version`
|
||||
git clone --branch $branch --single-branch --recursive https://github.com/microsoft/onnxruntime.git ${{ env.ONNX_RUNTIME_REPO }}
|
||||
|
||||
- name: Create Directories
|
||||
run: |
|
||||
mkdir -p ${{ env.BUILD_DIR }}
|
||||
mkdir -p ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
sudo -E ${{ env.OPENVINO_REPO }}/install_build_dependencies.sh
|
||||
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
verbose: 2
|
||||
key: ${{ github.job }}-linux-onnx-runtime
|
||||
restore-keys: |
|
||||
${{ github.job }}-linux-onnx-runtime
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: CMake configure
|
||||
run: |
|
||||
cmake \
|
||||
-GNinja \
|
||||
-DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF \
|
||||
-DENABLE_INTEL_GNA=OFF \
|
||||
-DENABLE_INTEL_GPU=OFF \
|
||||
-DENABLE_CPPLINT=OFF \
|
||||
-DENABLE_PROFILING_ITT=OFF \
|
||||
-DENABLE_SAMPLES=OFF \
|
||||
-DENABLE_OV_TF_FRONTEND=OFF \
|
||||
-DENABLE_OV_TF_LITE=OFF \
|
||||
-DENABLE_OV_PADDLE_FRONTEND=OFF \
|
||||
-DENABLE_OV_PYTORCH_FRONTEND=OFF \
|
||||
-S ${{ env.OPENVINO_REPO }} \
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Clean ccache stats
|
||||
run: ccache --zero-stats --show-config
|
||||
|
||||
- name: Build
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel ${{ steps.cpu-cores.outputs.count }} --config ${{ env.BUILD_TYPE }}
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ccache --show-stats
|
||||
|
||||
- name: Install OpenVINO
|
||||
run: cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
|
||||
- name: Build Lin ONNX Runtime
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
|
||||
${{ env.ONNX_RUNTIME_REPO }}/build.sh \
|
||||
--config RelWithDebInfo \
|
||||
--use_openvino CPU_FP32 \
|
||||
--build_shared_lib \
|
||||
--parallel \
|
||||
--skip_tests \
|
||||
--compile_no_warning_as_error \
|
||||
--build_dir ${{ env.ONNX_RUNTIME_BUILD_DIR }}
|
||||
env:
|
||||
CXXFLAGS: "-Wno-error=deprecated-declarations"
|
||||
|
||||
- name: Run onnxruntime_test_all
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
skip_tests=$(tr -s '\n ' ':' < ${{ env.ONNX_RUNTIME_UTILS }}/skip_tests)
|
||||
./onnxruntime_test_all --gtest_filter=-$skip_tests
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo
|
||||
|
||||
- name: Run onnxruntime_shared_lib_test
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
./onnxruntime_shared_lib_test --gtest_filter=-CApiTest.test_custom_op_openvino_wrapper_library
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo
|
||||
|
||||
- name: Run onnxruntime_global_thread_pools_test
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
./onnxruntime_global_thread_pools_test
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo
|
||||
|
||||
- name: Run onnxruntime_api_tests_without_env
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
./onnxruntime_api_tests_without_env
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo
|
||||
|
||||
- name: Run pytorch-converted tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
./onnx_test_runner "${{ env.ONNX_RUNTIME_REPO }}/cmake/external/onnx/onnx/backend/test/data/pytorch-converted"
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo
|
||||
|
||||
- name: Run pytorch-operator tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
./onnx_test_runner "${{ env.ONNX_RUNTIME_REPO }}/cmake/external/onnx/onnx/backend/test/data/pytorch-operator"
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo
|
||||
5
.github/workflows/mo.yml
vendored
5
.github/workflows/mo.yml
vendored
@@ -20,9 +20,8 @@ jobs:
|
||||
Pylint-UT:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: Clone OpenVINO
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v4
|
||||
|
||||
6
.github/workflows/py_checks.yml
vendored
6
.github/workflows/py_checks.yml
vendored
@@ -24,10 +24,8 @@ jobs:
|
||||
linters:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Code checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v4
|
||||
|
||||
36
.github/workflows/windows.yml
vendored
36
.github/workflows/windows.yml
vendored
@@ -36,8 +36,6 @@ env:
|
||||
SAMPLES_INSTALL_DIR: "${{ github.workspace }}\\install\\samples"
|
||||
LAYER_TESTS_INSTALL_DIR: "${{ github.workspace }}\\install\\tests\\layer_tests"
|
||||
BUILD_DIR: "${{ github.workspace }}\\build"
|
||||
DATA_PATH: "${{ github.workspace }}\\testdata"
|
||||
MODELS_PATH: "${{ github.workspace }}\\testdata"
|
||||
OV_TEMP: "${{ github.workspace }}\\openvino_temp"
|
||||
PYTHON_STATIC_ARGS: -m "not dynamic_library and not template_plugin"
|
||||
VCVARSPATH: "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Auxiliary\\Build\\vcvarsall.bat"
|
||||
@@ -50,25 +48,16 @@ jobs:
|
||||
runs-on: windows-latest-8-cores
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'recursive'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: 'openvino_contrib'
|
||||
submodules: 'recursive'
|
||||
|
||||
- name: Clone testdata for C API tests
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: 'testdata'
|
||||
submodules: 'recursive'
|
||||
lfs: 'true'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
@@ -122,7 +111,7 @@ jobs:
|
||||
#
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- uses: ilammy/msvc-dev-cmd@v1
|
||||
@@ -265,8 +254,6 @@ jobs:
|
||||
SAMPLES_INSTALL_DIR: "${{ github.workspace }}\\install\\samples"
|
||||
LAYER_TESTS_INSTALL_DIR: "${{ github.workspace }}\\install\\tests\\layer_tests"
|
||||
BUILD_DIR: "${{ github.workspace }}\\build"
|
||||
DATA_PATH: "${{ github.workspace }}\\testdata"
|
||||
MODELS_PATH: "${{ github.workspace }}\\testdata"
|
||||
PYTHON_STATIC_ARGS: -m "not dynamic_library and not template_plugin"
|
||||
|
||||
steps:
|
||||
@@ -303,17 +290,9 @@ jobs:
|
||||
ls "${{ env.INSTALL_TEST_DIR }}"
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'recursive'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: 'openvino_contrib'
|
||||
submodules: 'recursive'
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
@@ -645,6 +624,11 @@ jobs:
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_proxy_plugin_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVProxyTests.xml
|
||||
|
||||
- name: Hetero Unit Tests
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroUnitTests.xml
|
||||
|
||||
- name: Hetero Func Tests
|
||||
shell: cmd
|
||||
run: |
|
||||
|
||||
168
.github/workflows/windows_conditional_compilation.yml
vendored
Normal file
168
.github/workflows/windows_conditional_compilation.yml
vendored
Normal file
@@ -0,0 +1,168 @@
|
||||
name: Tests on Windows Conditional Compilation (VS 2022, Python 3.11)
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
# run daily at 00:00
|
||||
- cron: '0 0 * * *'
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# push:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.head_ref || github.run_id }}-windows-cc
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: sccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: sccache
|
||||
OPENVINO_REPO: "${{ github.workspace }}\\openvino"
|
||||
OPENVINO_CONTRIB_REPO: "${{ github.workspace }}\\openvino_contrib"
|
||||
INSTALL_DIR: "${{ github.workspace }}\\install_pkg"
|
||||
INSTALL_TEST_DIR: "${{ github.workspace }}\\install\\tests"
|
||||
SAMPLES_INSTALL_DIR: "${{ github.workspace }}\\install\\samples"
|
||||
LAYER_TESTS_INSTALL_DIR: "${{ github.workspace }}\\install\\tests\\layer_tests"
|
||||
BUILD_DIR: "${{ github.workspace }}\\build"
|
||||
BUILD_DIR_2: "${{ github.workspace }}\\build_s"
|
||||
MODELS_PATH: "${{ github.workspace }}\\testdata"
|
||||
OV_TEMP: "${{ github.workspace }}\\openvino_temp"
|
||||
BUILD_TYPE: "Release"
|
||||
PYTHON_STATIC_ARGS: -m "not dynamic_library and not template_plugin"
|
||||
VCVARSPATH: "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Auxiliary\\Build\\vcvarsall.bat"
|
||||
|
||||
jobs:
|
||||
Build:
|
||||
# TODO: remove. Temporary measure to prevent the workflow from scheduling on forks.
|
||||
if: ${{ github.repository_owner == 'openvinotoolkit' }}
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: windows-latest-8-cores
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone test models
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: 'testdata'
|
||||
lfs: 'true'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
choco install --no-progress ninja
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- uses: ilammy/msvc-dev-cmd@v1
|
||||
|
||||
- name: Setup sccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
variant: sccache
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
key: ${{ github.job }}-windows-cc
|
||||
restore-keys: |
|
||||
${{ github.job }}-windows-cc
|
||||
|
||||
- name: CMake CC COLLECT
|
||||
run: |
|
||||
& "${{ env.VCVARSPATH }}" x64 && cmake -G Ninja `
|
||||
-DENABLE_CPPLINT=OFF `
|
||||
-DENABLE_GAPI_PREPROCESSING=OFF `
|
||||
-DENABLE_PLUGINS_XML=ON `
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF `
|
||||
-DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} `
|
||||
-DENABLE_PROFILING_ITT=ON `
|
||||
-DSELECTIVE_BUILD=COLLECT `
|
||||
-S ${{ env.OPENVINO_REPO }} `
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Build CC COLLECT
|
||||
run: |
|
||||
& "${{ env.VCVARSPATH }}" x64 && cmake --build ${{ env.BUILD_DIR }} --parallel ${{ steps.cpu-cores.outputs.count }} --config ${{ env.BUILD_TYPE }} `
|
||||
--target openvino_intel_cpu_plugin openvino_ir_frontend benchmark_app sea_itt_lib
|
||||
|
||||
- name: List bin files
|
||||
shell: cmd
|
||||
run: dir ${{ env.OPENVINO_REPO }}\bin\ /s
|
||||
|
||||
- name: Code usage analysis
|
||||
shell: cmd
|
||||
working-directory: ${{ env.OPENVINO_REPO }}
|
||||
run: |
|
||||
set path=%path%;${{ env.OPENVINO_REPO }}\temp\tbb\bin
|
||||
call "${{ env.VCVARSPATH }}" && python thirdparty\itt_collector\runtool\sea_runtool.py --bindir ${{ env.OPENVINO_REPO }}\bin\intel64\${{ env.BUILD_TYPE }} -o ${{ env.BUILD_DIR }}\itt_stat ! ${{ env.OPENVINO_REPO }}\bin\intel64\${{ env.BUILD_TYPE }}\benchmark_app.exe -niter 1 -nireq 1 -m ${{ env.MODELS_PATH }}\models\test_model\test_model_fp32.xml -d CPU
|
||||
|
||||
- name: List csv files
|
||||
shell: cmd
|
||||
run: dir ${{ env.BUILD_DIR }}\*.csv /s /p
|
||||
|
||||
- name: CMake CC ON
|
||||
run: |
|
||||
& "${{ env.VCVARSPATH }}" x64 && cmake -G "Visual Studio 17 2022" `
|
||||
-DVERBOSE_BUILD=ON `
|
||||
-DENABLE_CPPLINT=OFF `
|
||||
-DENABLE_GAPI_PREPROCESSING=OFF `
|
||||
-DENABLE_PROFILING_ITT=OFF `
|
||||
-DSELECTIVE_BUILD=ON `
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF `
|
||||
-DSELECTIVE_BUILD_STAT=${{ env.BUILD_DIR }}\*.csv `
|
||||
-S ${{ env.OPENVINO_REPO }} `
|
||||
-B ${{ env.BUILD_DIR_2 }}
|
||||
|
||||
- name: Build CC ON
|
||||
run: |
|
||||
& "${{ env.VCVARSPATH }}" x64 && cmake --build ${{ env.BUILD_DIR_2 }} --parallel ${{ steps.cpu-cores.outputs.count }} --config ${{ env.BUILD_TYPE }} `
|
||||
--target openvino_intel_cpu_plugin openvino_ir_frontend benchmark_app
|
||||
|
||||
- name: List bin files ON
|
||||
shell: cmd
|
||||
run: dir ${{ env.OPENVINO_REPO }}\bin\ /s
|
||||
|
||||
- name: Check conditional_compilation_gen.h header
|
||||
shell: cmd
|
||||
run: type ${{ env.BUILD_DIR_2 }}\src\common\conditional_compilation\conditional_compilation_gen.h
|
||||
|
||||
- name: Use OpenVINO after CC
|
||||
shell: cmd
|
||||
run: |
|
||||
set path=%path%;${{ env.OPENVINO_REPO }}\temp\tbb\bin
|
||||
${{ env.OPENVINO_REPO }}\bin\intel64\${{ env.BUILD_TYPE }}\benchmark_app.exe -niter 1 -nireq 1 -m ${{ env.MODELS_PATH }}\models\test_model\test_model_fp32.xml -d CPU
|
||||
@@ -47,6 +47,7 @@ message (STATUS "CMAKE_GENERATOR ....................... " ${CMAKE_GENERATOR})
|
||||
message (STATUS "CPACK_GENERATOR ....................... " ${CPACK_GENERATOR})
|
||||
message (STATUS "CMAKE_C_COMPILER_ID ................... " ${CMAKE_C_COMPILER_ID})
|
||||
message (STATUS "CMAKE_CXX_COMPILER_ID ................. " ${CMAKE_CXX_COMPILER_ID})
|
||||
message (STATUS "CMAKE_CXX_STANDARD .................... " ${CMAKE_CXX_STANDARD})
|
||||
if(OV_GENERATOR_MULTI_CONFIG)
|
||||
string(REPLACE ";" " " config_types "${CMAKE_CONFIGURATION_TYPES}")
|
||||
message (STATUS "CMAKE_CONFIGURATION_TYPES ............. " ${config_types})
|
||||
@@ -105,8 +106,6 @@ function(openvino_developer_export_targets)
|
||||
if(TARGET "${target_name}")
|
||||
get_target_property(original_name ${target_name} ALIASED_TARGET)
|
||||
if(TARGET "${original_name}")
|
||||
message(STATUS "The name ${target_name} is an ALIAS for ${original_name}. "
|
||||
"It will be exported to the OpenVINODeveloperPackage with the original name.")
|
||||
list(REMOVE_ITEM ${EXPORT_COMPONENT} ${target_name})
|
||||
list(APPEND ${EXPORT_COMPONENT} ${original_name})
|
||||
endif()
|
||||
|
||||
119
CONTRIBUTING.md
119
CONTRIBUTING.md
@@ -1,53 +1,88 @@
|
||||
# How to contribute to the OpenVINO repository
|
||||
# Contributing to OpenVINO
|
||||
|
||||
We welcome community contributions to OpenVINO™. Please read the following guide to learn how to find ideas for contribution, follow best practices for pull requests, and test your changes with our established checks.
|
||||
## How to contribute to the OpenVINO project
|
||||
|
||||
OpenVINO™ is always looking for opportunities to improve and your contributions
|
||||
play a big role in this process. There are several ways you can make the
|
||||
product better:
|
||||
|
||||
|
||||
## Before you start contributing you should
|
||||
### Provide Feedback
|
||||
|
||||
- Make sure you agree to contribute your code under [OpenVINO™ (Apache 2.0) license](https://github.com/openvinotoolkit/openvino/blob/master/LICENSE).
|
||||
- Decide what you’re going to contribute. If you are not sure what you want to work on, check out [Contributions Welcome](https://github.com/openvinotoolkit/openvino/issues/17502). See if there isn't anyone already working on the subject you choose, in which case you may still contribute, providing support and suggestions for the given issue or pull request.
|
||||
- If you are going to fix a bug, check if it still exists. You can do it by building the latest master branch and making sure that the error is still reproducible there. We do not fix bugs that only affect older non-LTS releases like 2020.2, for example (see more details about our [branching strategy](https://github.com/openvinotoolkit/openvino/wiki/Branches)).
|
||||
* **Report bugs / issues**
|
||||
If you experience faulty behavior in OpenVINO or its components, you can
|
||||
[create a new issue](https://github.com/openvinotoolkit/openvino/issues)
|
||||
in the GitHub issue tracker.
|
||||
|
||||
* **Propose new features / improvements**
|
||||
If you have a suggestion for improving OpenVINO or want to share your ideas, you can open a new
|
||||
[GitHub Discussion](https://github.com/openvinotoolkit/openvino/discussions).
|
||||
If your idea is already well defined, you can also create a
|
||||
[Feature Request Issue](https://github.com/openvinotoolkit/openvino/issues/new?assignees=octocat&labels=enhancement%2Cfeature&projects=&template=feature_request.yml&title=%5BFeature+Request%5D%3A+)
|
||||
In both cases, provide a detailed description, including use cases, benefits, and potential challenges.
|
||||
If your points are especially well aligned with the product vision, they will be included in the
|
||||
[development roadmap](./ROADMAP.md).
|
||||
User feedback is crucial for OpenVINO development and even if your input is not immediately prioritized,
|
||||
it may be used at a later time or undertaken by the community, regardless of the official roadmap.
|
||||
|
||||
|
||||
### Contribute Code Changes
|
||||
|
||||
* **Fix Bugs or Develop New Features**
|
||||
If you want to help improving OpenVINO, choose one of the issues reported in
|
||||
[GitHub Issue Tracker](https://github.com/openvinotoolkit/openvino/issues) and
|
||||
[create a Pull Request](./CONTRIBUTING_PR.md) addressing it. Consider one of the
|
||||
tasks listed as [first-time contributions](https://github.com/openvinotoolkit/openvino/issues/17502).
|
||||
If the feature you want to develop is more complex or not well defined by the reporter,
|
||||
it is always a good idea to [discuss it](https://github.com/openvinotoolkit/openvino/discussions)
|
||||
with OpenVINO developers first. Before creating a new PR, check if nobody is already
|
||||
working on it. In such a case, you may still help, having aligned with the other developer.
|
||||
|
||||
Importantly, always check if the change hasn't been implemented before you start working on it!
|
||||
You can build OpenVINO using the latest master branch and make sure that it still needs your
|
||||
changes. Also, do not address issues that only affect older non-LTS releases, like 2022.2.
|
||||
|
||||
* **Develop a New Device Plugin**
|
||||
Since the market of computing devices is constantly evolving, OpenVINO is always open to extending
|
||||
its support for new hardware. If you want to run inference on a device that is currently not supported,
|
||||
you can see how to develop a new plugin for it in the
|
||||
[Plugin Developer Guide](https://docs.openvino.ai/canonical/openvino_docs_ie_plugin_dg_overview.html).
|
||||
|
||||
|
||||
### Improve documentation
|
||||
|
||||
* **OpenVINO developer documentation** is contained entirely in this repository, under the
|
||||
[./docs/dev](https://github.com/openvinotoolkit/openvino/tree/master/docs/dev) folder.
|
||||
|
||||
* **User documentation** is built from several sources and published at
|
||||
[docs.openvino.ai](docs.openvino.ai), which is the recommended place for reading
|
||||
these documents. Use the files maintained in this repository only for editing purposes.
|
||||
|
||||
* The easiest way to help with documentation is to review it and provide feedback on the
|
||||
existing articles. Whether you notice a mistake, see the possibility of improving the text,
|
||||
or think more information should be added, you can reach out to any of the documentation
|
||||
contributors to discuss the potential changes.
|
||||
|
||||
You can also create a Pull Request directly, following the [editor's guide](./docs/CONTRIBUTING_DOCS.md).
|
||||
|
||||
|
||||
## "Fork & Pull Request model" for code contribution
|
||||
### Promote and Support OpenVINO
|
||||
|
||||
### [](https://github.com/openvinotoolkit/openvino/blob/master/CONTRIBUTING.md#the-instruction-in-brief)The instruction in brief
|
||||
* **Popularize OpenVINO**
|
||||
Articles, tutorials, blog posts, demos, videos, and any other involvement
|
||||
in the OpenVINO community is always a welcome contribution. If you discuss
|
||||
or present OpenVINO on various social platforms, you are raising awareness
|
||||
of the product among A.I. enthusiasts and enabling other people to discover
|
||||
the toolkit. Feel free to reach out to OpenVINO developers if you need help
|
||||
with making such community-based content.
|
||||
|
||||
- Register at GitHub. Create your fork of the OpenVINO™ repository [https://github.com/openvinotoolkit/openvino](https://github.com/openvinotoolkit/openvino) (see [https://help.github.com/articles/fork-a-repo](https://help.github.com/articles/fork-a-repo) for details).
|
||||
- Install Git.
|
||||
- Set your user name and email address in Git configuration according to the GitHub account (see [First-Time-Git-Setup](https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup) for details).
|
||||
- Choose a task for yourself. It may be a bugfix or an entirely new piece of code.
|
||||
- Choose a base branch for your work. More details about branches and policies are here: [Branches](https://github.com/openvinotoolkit/openvino/wiki/Branches)
|
||||
- Clone your fork to your computer.
|
||||
- Create a new branch (give it a meaningful name) from the base branch of your choice.
|
||||
- Modify / add the code, following our [Coding Style Guide](./docs/dev/coding_style.md).
|
||||
- If you want to add a new sample, please have a look at the [Guide for contributing to C++/C/Python IE samples](https://github.com/openvinotoolkit/openvino/wiki/SampleContribute)
|
||||
- If you want to contribute to the documentation and want to add a new guide, follow that instruction [Documentation guidelines](https://github.com/openvinotoolkit/openvino/wiki/CodingStyleGuideLinesDocumentation)
|
||||
- Run testsuite locally:
|
||||
- execute each test binary from the artifacts directory, e.g. `<source dir>/bin/intel64/Release/ieFuncTests`
|
||||
- When you are done, make sure that your branch is up to date with latest state of the branch you want to contribute to (e.g. `git fetch upstream && git merge upstream/master`). If so, push your branch to your GitHub fork and create a pull request from your branch to the base branch (see [using-pull-requests](https://help.github.com/articles/using-pull-requests) for details).
|
||||
|
||||
## Making a good pull request
|
||||
|
||||
Following these guidelines will increase the likelihood of your pull request being accepted:
|
||||
|
||||
- One PR – one issue.
|
||||
- Build perfectly on your local system.
|
||||
- Choose the right base branch, based on our [Branch Guidelines](https://github.com/openvinotoolkit/openvino/wiki/Branches).
|
||||
- Follow the [Coding Style Guide](./docs/dev/coding_style.md) for your code.
|
||||
- Document your contribution, if you decide it may benefit OpenVINO users. You may do it yourself by editing the files in the "docs" directory or contact someone working with documentation to provide them with the right information.
|
||||
- Cover your changes with test.
|
||||
- Add the license statement at the top of new files [C++ example](https://github.com/openvinotoolkit/openvino/blob/master/samples/cpp/classification_sample_async/main.cpp#L1-L2), [Python example](https://github.com/openvinotoolkit/openvino/blob/master/samples/python/hello_classification/hello_classification.py#L3-L4).
|
||||
- Add proper information to the PR: a meaningful title, the reason why you made the commit, and a link to the issue page, if it exists.
|
||||
- Remove changes unrelated to the PR.
|
||||
- If it is still WIP and you want to check CI test results early, use a _Draft_ PR.
|
||||
- Submit your PR and become an OpenVINO™ contributor!
|
||||
* **Help Other Community Members**
|
||||
If you are an experienced OpenVINO user and want to help, you can always
|
||||
share your expertise with the community. Check GitHub Discussions and
|
||||
Issues to see if you can help someone.
|
||||
|
||||
|
||||
## Testing and merging pull requests
|
||||
## License
|
||||
|
||||
Your pull request will be automatically tested by OpenVINO™'s precommit (testing statuses are automatically reported as "green" or "red" circles in precommit steps on the PR page). If any builders fail, you need to fix the issues before the PR can be merged. If you push any changes to your branch on GitHub the tests will re-run automatically. No need to close pull request and open a new one!
|
||||
|
||||
|
||||
When an assigned reviewer accepts the pull request and the pre-commit is "green", the review status is set to "Approved", which informs OpenVINO™ maintainers that they can merge your pull request.
|
||||
By contributing to the OpenVINO project, you agree that your contributions will be
|
||||
licensed under the terms stated in the [LICENSE](./LICENSE.md) file.
|
||||
|
||||
111
CONTRIBUTING_DOCS.md
Normal file
111
CONTRIBUTING_DOCS.md
Normal file
@@ -0,0 +1,111 @@
|
||||
# OpenVINO Documentation Guide
|
||||
|
||||
## Basic article structure
|
||||
|
||||
OpenVINO documentation is built using Sphinx and the reStructuredText formatting.
|
||||
That means the basic formatting rules need to be used:
|
||||
|
||||
|
||||
### White Spaces
|
||||
|
||||
OpenVINO documentation is developed to be easily readable in both html and
|
||||
reStructuredText. Here are some suggestions on how to make it render nicely
|
||||
and improve document clarity.
|
||||
|
||||
### Headings (including the article title)
|
||||
|
||||
They are made by "underscoring" text with punctuation marks (at least as
|
||||
many marks as letters in the underscored header). We use the following convention:
|
||||
|
||||
```
|
||||
H1
|
||||
====================
|
||||
|
||||
H2
|
||||
####################
|
||||
|
||||
H3
|
||||
++++++++++++++++++++
|
||||
|
||||
H4
|
||||
--------------------
|
||||
|
||||
H5
|
||||
....................
|
||||
```
|
||||
|
||||
### Line length
|
||||
|
||||
In programming, a limit of 80 characters per line is a common BKM. It may also apply
|
||||
to reading natural languages fairly well. For this reason, we aim at lines of around
|
||||
70 to 100 characters long. The limit is not a strict rule but rather a guideline to
|
||||
follow in most cases. The breaks will not translate to html, and rightly so, but will
|
||||
make reading and editing documents in GitHub or an editor much easier.
|
||||
|
||||
### Tables
|
||||
|
||||
Tables may be difficult to implement well in websites. For example, longer portions
|
||||
of text, like descriptions, may render them difficult to read (e.g. improper cell
|
||||
widths or heights). Complex tables may also be difficult to read in source files.
|
||||
To prevent that, check the [table directive documentation](https://www.sphinx-doc.org/en/master/usage/restructuredtext/directives.html#table-directives)
|
||||
and see our custom directives. Use the following guidelines for easier editing:
|
||||
|
||||
* For very big and complex data sets: use a list instead of a table or remove
|
||||
the problematic content from the table and implement it differently.
|
||||
* For very big and complex data sets that need to use tables: use an external
|
||||
file (e.g. PDF) and link to it.
|
||||
* For medium tables that look bad in source (e.g. due to long lines of text),
|
||||
use the reStructuredText list table format.
|
||||
* For medium and small tables, use the reStructuredText grid or simple table formats.
|
||||
|
||||
|
||||
## Cross-linking
|
||||
|
||||
There are several directives Sphinx uses for linking, each has its purpose and format.
|
||||
Follow these guidelines for consistent results:
|
||||
|
||||
* Avoid absolute references to internal documents as much as possible (link to source, not html).
|
||||
* Note that sphinx uses the "back-tick" character and not the "inverted-comma" => ` vs. '
|
||||
* When a file path starts at the same directory is used, put "./" at its beginning.
|
||||
* Always add a space before the opening angle bracket ("<") for target files.
|
||||
|
||||
Use the following formatting for different links:
|
||||
|
||||
* link to an external page / file
|
||||
* `` `text <url> `__ ``
|
||||
* use a double underscore for consistency
|
||||
|
||||
* link to an internal documentation page / file
|
||||
* `` :doc:`a docs page <relative file path>` ``
|
||||
* Link to an rst or md file within our documentation, so that it renders properly in html
|
||||
|
||||
* link to a header on the same page
|
||||
* `` 'a header in the same article <this-is-section-header-title>`__ ``
|
||||
* anchors are created automatically for all existing headers
|
||||
* such anchor looks like the header, with minor adjustments:
|
||||
* all letters are lower case,
|
||||
* remove all special glyphs, like brackets,
|
||||
* replace spaces with hyphens
|
||||
|
||||
* Create an anchor in an article
|
||||
* `` .. _anchor-in-the target-article:: ``
|
||||
* put it before the header to which you want to link
|
||||
* See the rules for naming anchors / labels at the bottom of this article
|
||||
|
||||
* link to an anchor on a different page in our documentation
|
||||
* `` :ref:`the created anchor <anchor-in-the target-article>` ``
|
||||
* link to the anchor using just its name
|
||||
|
||||
|
||||
* anchors / labels
|
||||
|
||||
Read about anchors
|
||||
|
||||
Sphinx uses labels to create html anchors, which can be linked to from anywhere in documentation.
|
||||
Although they may be put at the top of any article to make linking to it very easy, we do not use
|
||||
this approach. Every label definition starts with an underscore, the underscore is not used in links.
|
||||
|
||||
Most importantly, every label needs to be globally unique. It means that it is always a good
|
||||
practice to start their labels with a clear identifier of the article they reside in.
|
||||
|
||||
|
||||
63
CONTRIBUTING_PR.md
Normal file
63
CONTRIBUTING_PR.md
Normal file
@@ -0,0 +1,63 @@
|
||||
# How to Prepare a Good PR
|
||||
|
||||
OpenVINO is an open-source project and you can contribute to its code directly.
|
||||
To do so, follow these guidelines for creating Pull Requests, so that your
|
||||
changes get the highest chance of being merged.
|
||||
|
||||
|
||||
## General Rules of a Good Pull Request
|
||||
|
||||
* Create your own fork of the repository and use it to create PRs.
|
||||
Avoid creating change branches in the main repository.
|
||||
* Choose a proper branch for your work and create your own branch based on it.
|
||||
* Give your branches, commits, and Pull Requests meaningful names and descriptions.
|
||||
It helps to track changes later. If your changes cover a particular component,
|
||||
you can indicate it in the PR name as a prefix, for example: ``[DOCS] PR name``.
|
||||
* Follow the [OpenVINO code style guide](https://github.com/openvinotoolkit/openvino/blob/master/docs/dev/coding_style.md).
|
||||
* Make your PRs small - each PR should address one issue. Remove all changes
|
||||
unrelated to the PR.
|
||||
* Document your contribution! If your changes may impact how the user works with
|
||||
OpenVINO, provide the information in proper articles. You can do it yourself,
|
||||
or contact one of OpenVINO documentation contributors to work together on
|
||||
developing the right content.
|
||||
* For Work In Progress, or checking test results early, use a Draft PR.
|
||||
|
||||
|
||||
## Ensure Change Quality
|
||||
|
||||
Your pull request will be automatically tested by OpenVINO™'s pre-commit and marked
|
||||
as "green" if it is ready for merging. If any builders fail, the status is "red,"
|
||||
you need to fix the issues listed in console logs. Any change to the PR branch will
|
||||
automatically trigger the checks, so you don't need to recreate the PR, Just wait
|
||||
for the updated results.
|
||||
|
||||
Regardless of the automated tests, you should ensure the quality of your changes:
|
||||
|
||||
* Test your changes locally:
|
||||
* Make sure to double-check your code.
|
||||
* Run tests locally to identify and fix potential issues (execute test binaries
|
||||
from the artifacts directory, e.g. ``<source dir>/bin/intel64/Release/ieFuncTests``)
|
||||
* Before creating a PR, make sure that your branch is up to date with the latest
|
||||
state of the branch you want to contribute to (e.g. git fetch upstream && git
|
||||
merge upstream/master).
|
||||
|
||||
|
||||
## Branching Policy
|
||||
|
||||
* The "master" branch is used for development and constitutes the base for each new release.
|
||||
* Each OpenVINO release has its own branch: ``releases/<year>/<release number>``.
|
||||
* The final release each year is considered a Long Term Support version,
|
||||
which means it remains active.
|
||||
* Contributions are accepted only by active branches, which are:
|
||||
* the "master" branch for future releases,
|
||||
* the most recently published version for fixes,
|
||||
* LTS versions (for two years from their release dates).
|
||||
|
||||
|
||||
## Need Additional Help? Check these Articles
|
||||
|
||||
* [How to create a fork](https://help.github.com/articles/fork-a-rep)
|
||||
* [Install Git](https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup)
|
||||
* If you want to add a new sample, please have a look at the Guide for contributing
|
||||
to C++/C/Python IE samples and add the license statement at the top of new files for
|
||||
C++ example, Python example.
|
||||
31
README.md
31
README.md
@@ -5,7 +5,7 @@
|
||||
[](https://anaconda.org/conda-forge/openvino)
|
||||
[](https://formulae.brew.sh/formula/openvino)
|
||||
|
||||
[](https://pepy.tech/project/openvino)
|
||||
[](https://pepy.tech/project/openvino)
|
||||
[](https://anaconda.org/conda-forge/openvino/files)
|
||||
[](https://formulae.brew.sh/formula/openvino)
|
||||
</div>
|
||||
@@ -68,24 +68,24 @@ The OpenVINO™ Runtime can infer models on different hardware devices. This sec
|
||||
<tbody>
|
||||
<tr>
|
||||
<td rowspan=2>CPU</td>
|
||||
<td> <a href="https://docs.openvino.ai/2023.0/openvino_docs_OV_UG_supported_plugins_CPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-c-p-u">Intel CPU</a></tb>
|
||||
<td> <a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_CPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-c-p-u">Intel CPU</a></tb>
|
||||
<td><b><i><a href="./src/plugins/intel_cpu">openvino_intel_cpu_plugin</a></i></b></td>
|
||||
<td>Intel Xeon with Intel® Advanced Vector Extensions 2 (Intel® AVX2), Intel® Advanced Vector Extensions 512 (Intel® AVX-512), and AVX512_BF16, Intel Core Processors with Intel AVX2, Intel Atom Processors with Intel® Streaming SIMD Extensions (Intel® SSE)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> <a href="https://docs.openvino.ai/2023.0/openvino_docs_OV_UG_supported_plugins_CPU.html">ARM CPU</a></tb>
|
||||
<td> <a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_CPU.html">ARM CPU</a></tb>
|
||||
<td><b><i><a href="https://github.com/openvinotoolkit/openvino_contrib/tree/master/modules/arm_plugin">openvino_arm_cpu_plugin</a></i></b></td>
|
||||
<td>Raspberry Pi™ 4 Model B, Apple® Mac mini with M1 chip, NVIDIA® Jetson Nano™, Android™ devices
|
||||
</tr>
|
||||
<tr>
|
||||
<td>GPU</td>
|
||||
<td><a href="https://docs.openvino.ai/2023.0/openvino_docs_OV_UG_supported_plugins_GPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-g-p-u">Intel GPU</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_GPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-g-p-u">Intel GPU</a></td>
|
||||
<td><b><i><a href="./src/plugins/intel_gpu">openvino_intel_gpu_plugin</a></i></b></td>
|
||||
<td>Intel Processor Graphics, including Intel HD Graphics and Intel Iris Graphics</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>GNA</td>
|
||||
<td><a href="https://docs.openvino.ai/2023.0/openvino_docs_OV_UG_supported_plugins_GNA.html#doxid-openvino-docs-o-v-u-g-supported-plugins-g-n-a">Intel GNA</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_GNA.html#doxid-openvino-docs-o-v-u-g-supported-plugins-g-n-a">Intel GNA</a></td>
|
||||
<td><b><i><a href="./src/plugins/intel_gna">openvino_intel_gna_plugin</a></i></b></td>
|
||||
<td>Intel Speech Enabling Developer Kit, Amazon Alexa* Premium Far-Field Developer Kit, Intel Pentium Silver J5005 Processor, Intel Pentium Silver N5000 Processor, Intel Celeron J4005 Processor, Intel Celeron J4105 Processor, Intel Celeron Processor N4100, Intel Celeron Processor N4000, Intel Core i3-8121U Processor, Intel Core i7-1065G7 Processor, Intel Core i7-1060G7 Processor, Intel Core i5-1035G4 Processor, Intel Core i5-1035G7 Processor, Intel Core i5-1035G1 Processor, Intel Core i5-1030G7 Processor, Intel Core i5-1030G4 Processor, Intel Core i3-1005G1 Processor, Intel Core i3-1000G1 Processor, Intel Core i3-1000G4 Processor</td>
|
||||
</tr>
|
||||
@@ -103,22 +103,22 @@ OpenVINO™ Toolkit also contains several plugins which simplify loading models
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><a href="https://docs.openvino.ai/2023.0/openvino_docs_IE_DG_supported_plugins_AUTO.html#doxid-openvino-docs-i-e-d-g-supported-plugins-a-u-t-o">Auto</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_AUTO.html">Auto</a></td>
|
||||
<td><b><i><a href="./src/plugins/auto">openvino_auto_plugin</a></i></b></td>
|
||||
<td>Auto plugin enables selecting Intel device for inference automatically</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://docs.openvino.ai/2023.0/openvino_docs_OV_UG_Automatic_Batching.html">Auto Batch</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_Automatic_Batching.html">Auto Batch</a></td>
|
||||
<td><b><i><a href="./src/plugins/auto_batch">openvino_auto_batch_plugin</a></i></b></td>
|
||||
<td>Auto batch plugin performs on-the-fly automatic batching (i.e. grouping inference requests together) to improve device utilization, with no programming effort from the user</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://docs.openvino.ai/2023.0/openvino_docs_OV_UG_Hetero_execution.html#doxid-openvino-docs-o-v-u-g-hetero-execution">Hetero</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_Hetero_execution.html#doxid-openvino-docs-o-v-u-g-hetero-execution">Hetero</a></td>
|
||||
<td><b><i><a href="./src/plugins/hetero">openvino_hetero_plugin</a></i></b></td>
|
||||
<td>Heterogeneous execution enables automatic inference splitting between several devices</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://docs.openvino.ai/2023.0/openvino_docs_OV_UG_Running_on_multiple_devices.html#doxid-openvino-docs-o-v-u-g-running-on-multiple-devices">Multi</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_Running_on_multiple_devices.html#doxid-openvino-docs-o-v-u-g-running-on-multiple-devices">Multi</a></td>
|
||||
<td><b><i><a href="./src/plugins/auto">openvino_auto_plugin</a></i></b></td>
|
||||
<td>Multi plugin enables simultaneous inference of the same model on several devices in parallel</td>
|
||||
</tr>
|
||||
@@ -155,10 +155,9 @@ The list of OpenVINO tutorials:
|
||||
## System requirements
|
||||
|
||||
The system requirements vary depending on platform and are available on dedicated pages:
|
||||
- [Linux](https://docs.openvino.ai/2023.0/openvino_docs_install_guides_installing_openvino_linux_header.html)
|
||||
- [Windows](https://docs.openvino.ai/2023.0/openvino_docs_install_guides_installing_openvino_windows_header.html)
|
||||
- [macOS](https://docs.openvino.ai/2023.0/openvino_docs_install_guides_installing_openvino_macos_header.html)
|
||||
- [Raspbian](https://docs.openvino.ai/2023.0/openvino_docs_install_guides_installing_openvino_raspbian.html)
|
||||
- [Linux](https://docs.openvino.ai/2023.1/openvino_docs_install_guides_installing_openvino_linux_header.html)
|
||||
- [Windows](https://docs.openvino.ai/2023.1/openvino_docs_install_guides_installing_openvino_windows_header.html)
|
||||
- [macOS](https://docs.openvino.ai/2023.1/openvino_docs_install_guides_installing_openvino_macos_header.html)
|
||||
|
||||
## How to build
|
||||
|
||||
@@ -196,7 +195,7 @@ Report questions, issues and suggestions, using:
|
||||
\* Other names and brands may be claimed as the property of others.
|
||||
|
||||
[Open Model Zoo]:https://github.com/openvinotoolkit/open_model_zoo
|
||||
[OpenVINO™ Runtime]:https://docs.openvino.ai/2023.0/openvino_docs_OV_UG_OV_Runtime_User_Guide.html
|
||||
[Model Optimizer]:https://docs.openvino.ai/2023.0/openvino_docs_MO_DG_Deep_Learning_Model_Optimizer_DevGuide.html
|
||||
[Post-Training Optimization Tool]:https://docs.openvino.ai/2023.0/pot_introduction.html
|
||||
[OpenVINO™ Runtime]:https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_OV_Runtime_User_Guide.html
|
||||
[Model Optimizer]:https://docs.openvino.ai/2023.1/openvino_docs_MO_DG_Deep_Learning_Model_Optimizer_DevGuide.html
|
||||
[Post-Training Optimization Tool]:https://docs.openvino.ai/2023.1/pot_introduction.html
|
||||
[Samples]:https://github.com/openvinotoolkit/openvino/tree/master/samples
|
||||
|
||||
@@ -7,22 +7,6 @@ cmake_policy(SET CMP0054 NEW)
|
||||
# TODO: fix it, outside of source dir MO cannot find TBB dependency
|
||||
set_temp_directory(TEMP "${CMAKE_SOURCE_DIR}")
|
||||
|
||||
if(ENABLE_SAME_BRANCH_FOR_MODELS)
|
||||
branchName(MODELS_BRANCH)
|
||||
else()
|
||||
set(MODELS_BRANCH "master")
|
||||
endif()
|
||||
|
||||
if(ENABLE_DATA)
|
||||
add_models_repo(${ENABLE_DATA} "data:https://github.com/openvinotoolkit/testdata.git")
|
||||
set(MODELS_PATH "${TEMP}/models/src/data")
|
||||
set(DATA_PATH "${MODELS_PATH}")
|
||||
endif()
|
||||
|
||||
message(STATUS "MODELS_PATH=" ${MODELS_PATH})
|
||||
|
||||
fetch_models_and_validation_set()
|
||||
|
||||
## Intel OMP package
|
||||
if(THREADING STREQUAL "OMP")
|
||||
reset_deps_cache(OMP)
|
||||
@@ -116,10 +100,10 @@ function(ov_download_tbb)
|
||||
elseif(LINUX AND X86_64 AND OV_GLIBC_VERSION VERSION_GREATER_EQUAL 2.17)
|
||||
# build oneTBB 2021.2.1 with gcc 4.8 (glibc 2.17)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_LIN "oneapi-tbb-2021.2.1-lin-canary.tgz"
|
||||
ARCHIVE_LIN "oneapi-tbb-2021.2.3-lin.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "3a2c2ec79b3cce7e6a2484754ba6f029fa968db2eefc6659540792b7db8fea0c"
|
||||
SHA256 "f3f2edd8e7875b02220f11ab5b201411d5af6822e525e8da5444b4a666514e8b"
|
||||
USE_NEW_LOCATION TRUE)
|
||||
elseif(YOCTO_AARCH64)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
|
||||
@@ -255,7 +255,7 @@ get_linux_name(LINUX_OS_NAME)
|
||||
|
||||
# macro to mark target as conditionally compiled
|
||||
|
||||
function(ie_mark_target_as_cc TARGET_NAME)
|
||||
function(ov_mark_target_as_cc TARGET_NAME)
|
||||
set(cc_library openvino::conditional_compilation)
|
||||
if(TARGET IE::conditional_compilation)
|
||||
set(cc_library IE::conditional_compilation)
|
||||
@@ -275,8 +275,9 @@ function(ie_mark_target_as_cc TARGET_NAME)
|
||||
add_dependencies(${TARGET_NAME} conditional_compilation_gen)
|
||||
endfunction()
|
||||
|
||||
function(ov_mark_target_as_cc)
|
||||
ie_mark_target_as_cc(${ARGN})
|
||||
function(ie_mark_target_as_cc TARGET_NAME)
|
||||
message(WARNING "This function is deprecated. Please use ov_mark_target_as_cc(TARGET_NAME) instead.")
|
||||
ov_mark_target_as_cc(${TARGET_NAME})
|
||||
endfunction()
|
||||
|
||||
include(python_requirements)
|
||||
|
||||
@@ -120,7 +120,7 @@ function(addIeTarget)
|
||||
endif()
|
||||
if (ARG_ADD_CLANG_FORMAT)
|
||||
# code style
|
||||
add_clang_format_target(${ARG_NAME}_clang FOR_TARGETS ${ARG_NAME})
|
||||
ov_add_clang_format_target(${ARG_NAME}_clang FOR_TARGETS ${ARG_NAME})
|
||||
endif()
|
||||
if (ARG_DEVELOPER_PACKAGE)
|
||||
# developer package
|
||||
|
||||
@@ -193,6 +193,11 @@ endfunction()
|
||||
#
|
||||
# ie_add_api_validator_post_build_step(TARGET <name>)
|
||||
#
|
||||
macro(ie_add_api_validator_post_build_step)
|
||||
macro(ov_add_api_validator_post_build_step)
|
||||
_ov_add_api_validator_post_build_step(${ARGV})
|
||||
endmacro()
|
||||
|
||||
macro(ie_add_api_validator_post_build_step)
|
||||
message(WARNING "ie_add_api_validator_post_build_step is deprecated, use ov_add_api_validator_post_build_step instead")
|
||||
_ov_add_api_validator_post_build_step(${ARGV})
|
||||
endmacro()
|
||||
|
||||
@@ -32,10 +32,10 @@ if(ENABLE_CLANG_FORMAT AND NOT TARGET clang_format_check_all)
|
||||
endif()
|
||||
|
||||
#
|
||||
# add_clang_format_target(FOR_TARGETS <target1 target2 ...> | FOR_SOURCES <source1 source2 ...>
|
||||
# [EXCLUDE_PATTERNS <pattern1 pattern2 ...>])
|
||||
# ov_add_clang_format_target(FOR_TARGETS <target1 target2 ...> | FOR_SOURCES <source1 source2 ...>
|
||||
# [EXCLUDE_PATTERNS <pattern1 pattern2 ...>])
|
||||
#
|
||||
function(add_clang_format_target TARGET_NAME)
|
||||
function(ov_add_clang_format_target TARGET_NAME)
|
||||
if(NOT ENABLE_CLANG_FORMAT)
|
||||
return()
|
||||
endif()
|
||||
@@ -130,3 +130,8 @@ function(add_clang_format_target TARGET_NAME)
|
||||
add_dependencies(clang_format_check_all ${TARGET_NAME})
|
||||
add_dependencies(clang_format_fix_all ${TARGET_NAME}_fix)
|
||||
endfunction()
|
||||
|
||||
function(add_clang_format_target)
|
||||
message(WARNING "add_clang_format_target is deprecated, use ov_add_clang_format_target instead")
|
||||
ov_add_clang_format_target(${ARGV})
|
||||
endfunction()
|
||||
|
||||
@@ -33,6 +33,7 @@ macro(ov_disable_deprecated_warnings)
|
||||
endmacro()
|
||||
|
||||
macro(disable_deprecated_warnings)
|
||||
message(WARNING "disable_deprecated_warnings is deprecated, use ov_disable_deprecated_warnings instead")
|
||||
ov_disable_deprecated_warnings()
|
||||
endmacro()
|
||||
|
||||
@@ -218,24 +219,26 @@ endfunction()
|
||||
# Enables Link Time Optimization compilation
|
||||
#
|
||||
macro(ie_enable_lto)
|
||||
message(WARNING "ie_add_compiler_flags is deprecated, set INTERPROCEDURAL_OPTIMIZATION_RELEASE target property instead")
|
||||
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION_RELEASE ON)
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# ie_add_compiler_flags(<flag1 [flag2 flag3 ...>])
|
||||
# ov_add_compiler_flags(<flag1 [flag2 flag3 ...>])
|
||||
#
|
||||
# Adds compiler flags to C / C++ sources
|
||||
#
|
||||
macro(ie_add_compiler_flags)
|
||||
macro(ov_add_compiler_flags)
|
||||
foreach(flag ${ARGN})
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
function(ov_add_compiler_flags)
|
||||
ie_add_compiler_flags(${ARGN})
|
||||
endfunction()
|
||||
macro(ie_add_compiler_flags)
|
||||
message(WARNING "ie_add_compiler_flags is deprecated, use ov_add_compiler_flags instead")
|
||||
ov_add_compiler_flags(${ARGN})
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# ov_force_include(<target> <PUBLIC | PRIVATE | INTERFACE> <header file>)
|
||||
@@ -267,11 +270,11 @@ function(ov_abi_free_target target)
|
||||
endfunction()
|
||||
|
||||
#
|
||||
# ie_python_minimal_api(<target>)
|
||||
# ov_python_minimal_api(<target>)
|
||||
#
|
||||
# Set options to use only Python Limited API
|
||||
#
|
||||
function(ie_python_minimal_api target)
|
||||
function(ov_python_minimal_api target)
|
||||
# pybind11 uses a lot of API which is not a part of minimal python API subset
|
||||
# Ref 1: https://docs.python.org/3.11/c-api/stable.html
|
||||
# Ref 2: https://github.com/pybind/pybind11/issues/1755
|
||||
@@ -301,7 +304,7 @@ if(NOT DEFINED CMAKE_CXX_STANDARD)
|
||||
endif()
|
||||
|
||||
if(ENABLE_COVERAGE)
|
||||
ie_add_compiler_flags(--coverage)
|
||||
ov_add_compiler_flags(--coverage)
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
|
||||
endif()
|
||||
|
||||
@@ -313,9 +316,9 @@ set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)
|
||||
|
||||
if(CMAKE_CL_64)
|
||||
# Default char Type Is unsigned
|
||||
# ie_add_compiler_flags(/J)
|
||||
# ov_add_compiler_flags(/J)
|
||||
elseif(CMAKE_COMPILER_IS_GNUCXX OR OV_COMPILER_IS_CLANG)
|
||||
ie_add_compiler_flags(-fsigned-char)
|
||||
ov_add_compiler_flags(-fsigned-char)
|
||||
endif()
|
||||
|
||||
file(RELATIVE_PATH OV_RELATIVE_BIN_PATH ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR})
|
||||
@@ -335,22 +338,22 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
# Common options / warnings enabled
|
||||
#
|
||||
|
||||
ie_add_compiler_flags(/D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS)
|
||||
ov_add_compiler_flags(/D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS)
|
||||
# no asynchronous structured exception handling
|
||||
ie_add_compiler_flags(/EHsc)
|
||||
ov_add_compiler_flags(/EHsc)
|
||||
# Allows the compiler to package individual functions in the form of packaged functions (COMDATs).
|
||||
ie_add_compiler_flags(/Gy)
|
||||
ov_add_compiler_flags(/Gy)
|
||||
# This option helps ensure the fewest possible hard-to-find code defects. Similar to -Wall on GNU / Clang
|
||||
ie_add_compiler_flags(/W3)
|
||||
ov_add_compiler_flags(/W3)
|
||||
|
||||
# Increase Number of Sections in .Obj file
|
||||
ie_add_compiler_flags(/bigobj)
|
||||
ov_add_compiler_flags(/bigobj)
|
||||
# Build with multiple processes
|
||||
ie_add_compiler_flags(/MP)
|
||||
ov_add_compiler_flags(/MP)
|
||||
|
||||
if(AARCH64 AND NOT MSVC_VERSION LESS 1930)
|
||||
# otherwise, _ARM64_EXTENDED_INTRINSICS is defined, which defines 'mvn' macro
|
||||
ie_add_compiler_flags(/D_ARM64_DISTINCT_NEON_TYPES)
|
||||
ov_add_compiler_flags(/D_ARM64_DISTINCT_NEON_TYPES)
|
||||
endif()
|
||||
|
||||
# Handle Large Addresses
|
||||
@@ -362,7 +365,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
|
||||
if(CMAKE_COMPILE_WARNING_AS_ERROR)
|
||||
if(CMAKE_VERSION VERSION_LESS 3.24)
|
||||
ie_add_compiler_flags(/WX)
|
||||
ov_add_compiler_flags(/WX)
|
||||
endif()
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /WX")
|
||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /WX")
|
||||
@@ -374,9 +377,9 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
#
|
||||
|
||||
# C4251 needs to have dll-interface to be used by clients of class
|
||||
ie_add_compiler_flags(/wd4251)
|
||||
ov_add_compiler_flags(/wd4251)
|
||||
# C4275 non dll-interface class used as base for dll-interface class
|
||||
ie_add_compiler_flags(/wd4275)
|
||||
ov_add_compiler_flags(/wd4275)
|
||||
|
||||
# Enable __FILE__ trim, use path with forward and backward slash as directory separator
|
||||
add_compile_options(
|
||||
@@ -400,7 +403,7 @@ elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Intel" AND WIN32)
|
||||
#
|
||||
|
||||
if(CMAKE_COMPILE_WARNING_AS_ERROR AND CMAKE_VERSION VERSION_LESS 3.24)
|
||||
ie_add_compiler_flags(/Qdiag-warning:47,1740,1786)
|
||||
ov_add_compiler_flags(/Qdiag-warning:47,1740,1786)
|
||||
endif()
|
||||
|
||||
#
|
||||
@@ -408,40 +411,40 @@ elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Intel" AND WIN32)
|
||||
#
|
||||
|
||||
# 161: unrecognized pragma
|
||||
ie_add_compiler_flags(/Qdiag-disable:161)
|
||||
ov_add_compiler_flags(/Qdiag-disable:161)
|
||||
# 177: variable was declared but never referenced
|
||||
ie_add_compiler_flags(/Qdiag-disable:177)
|
||||
ov_add_compiler_flags(/Qdiag-disable:177)
|
||||
# 556: not matched type of assigned function pointer
|
||||
ie_add_compiler_flags(/Qdiag-disable:556)
|
||||
ov_add_compiler_flags(/Qdiag-disable:556)
|
||||
# 1744: field of class type without a DLL interface used in a class with a DLL interface
|
||||
ie_add_compiler_flags(/Qdiag-disable:1744)
|
||||
ov_add_compiler_flags(/Qdiag-disable:1744)
|
||||
# 1879: unimplemented pragma ignored
|
||||
ie_add_compiler_flags(/Qdiag-disable:1879)
|
||||
ov_add_compiler_flags(/Qdiag-disable:1879)
|
||||
# 2586: decorated name length exceeded, name was truncated
|
||||
ie_add_compiler_flags(/Qdiag-disable:2586)
|
||||
ov_add_compiler_flags(/Qdiag-disable:2586)
|
||||
# 2651: attribute does not apply to any entity
|
||||
ie_add_compiler_flags(/Qdiag-disable:2651)
|
||||
ov_add_compiler_flags(/Qdiag-disable:2651)
|
||||
# 3180: unrecognized OpenMP pragma
|
||||
ie_add_compiler_flags(/Qdiag-disable:3180)
|
||||
ov_add_compiler_flags(/Qdiag-disable:3180)
|
||||
# 11075: To get full report use -Qopt-report:4 -Qopt-report-phase ipo
|
||||
ie_add_compiler_flags(/Qdiag-disable:11075)
|
||||
ov_add_compiler_flags(/Qdiag-disable:11075)
|
||||
# 15335: was not vectorized: vectorization possible but seems inefficient.
|
||||
# Use vector always directive or /Qvec-threshold0 to override
|
||||
ie_add_compiler_flags(/Qdiag-disable:15335)
|
||||
ov_add_compiler_flags(/Qdiag-disable:15335)
|
||||
else()
|
||||
#
|
||||
# Common enabled warnings
|
||||
#
|
||||
|
||||
# allow linker eliminating the unused code and data from the final executable
|
||||
ie_add_compiler_flags(-ffunction-sections -fdata-sections)
|
||||
ov_add_compiler_flags(-ffunction-sections -fdata-sections)
|
||||
# emits text showing the command-line option controlling a diagnostic
|
||||
ie_add_compiler_flags(-fdiagnostics-show-option)
|
||||
ov_add_compiler_flags(-fdiagnostics-show-option)
|
||||
|
||||
# This enables all the warnings about constructions that some users consider questionable, and that are easy to avoid
|
||||
ie_add_compiler_flags(-Wall)
|
||||
ov_add_compiler_flags(-Wall)
|
||||
# Warn if an undefined identifier is evaluated in an #if directive. Such identifiers are replaced with zero.
|
||||
ie_add_compiler_flags(-Wundef)
|
||||
ov_add_compiler_flags(-Wundef)
|
||||
|
||||
# To guarantee OpenVINO can be used with gcc versions 7 through 12
|
||||
# - https://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect-Options.html
|
||||
@@ -468,7 +471,7 @@ else()
|
||||
#
|
||||
|
||||
if(CMAKE_COMPILE_WARNING_AS_ERROR AND CMAKE_VERSION VERSION_LESS 3.24)
|
||||
ie_add_compiler_flags(-Werror)
|
||||
ov_add_compiler_flags(-Werror)
|
||||
endif()
|
||||
|
||||
#
|
||||
@@ -477,7 +480,7 @@ else()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
|
||||
# 177: function "XXX" was declared but never referenced
|
||||
ie_add_compiler_flags(-diag-disable=remark,177,2196)
|
||||
ov_add_compiler_flags(-diag-disable=remark,177,2196)
|
||||
endif()
|
||||
|
||||
#
|
||||
@@ -493,8 +496,8 @@ else()
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s ERROR_ON_MISSING_LIBRARIES=1 -s ERROR_ON_UNDEFINED_SYMBOLS=1")
|
||||
# set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s USE_PTHREADS=1 -s PTHREAD_POOL_SIZE=4")
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s ALLOW_MEMORY_GROWTH=1")
|
||||
ie_add_compiler_flags(-sDISABLE_EXCEPTION_CATCHING=0)
|
||||
# ie_add_compiler_flags(-sUSE_PTHREADS=1)
|
||||
ov_add_compiler_flags(-sDISABLE_EXCEPTION_CATCHING=0)
|
||||
# ov_add_compiler_flags(-sUSE_PTHREADS=1)
|
||||
else()
|
||||
set(exclude_libs "-Wl,--exclude-libs,ALL")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--gc-sections ${exclude_libs}")
|
||||
@@ -507,7 +510,6 @@ else()
|
||||
endif()
|
||||
|
||||
add_compile_definitions(
|
||||
|
||||
# Defines to trim check of __FILE__ macro in case if not done by compiler.
|
||||
OV_NATIVE_PARENT_PROJECT_ROOT_DIR="${OV_NATIVE_PARENT_PROJECT_ROOT_DIR}")
|
||||
|
||||
@@ -519,11 +521,11 @@ endif()
|
||||
check_cxx_compiler_flag("-Wunused-but-set-variable" UNUSED_BUT_SET_VARIABLE_SUPPORTED)
|
||||
|
||||
#
|
||||
# link_system_libraries(target <PUBLIC | PRIVATE | INTERFACE> <lib1 [lib2 lib3 ...]>)
|
||||
# ov_link_system_libraries(target <PUBLIC | PRIVATE | INTERFACE> <lib1 [lib2 lib3 ...]>)
|
||||
#
|
||||
# Links provided libraries and include their INTERFACE_INCLUDE_DIRECTORIES as SYSTEM
|
||||
#
|
||||
function(link_system_libraries TARGET_NAME)
|
||||
function(ov_link_system_libraries TARGET_NAME)
|
||||
set(MODE PRIVATE)
|
||||
|
||||
foreach(arg IN LISTS ARGN)
|
||||
|
||||
@@ -136,6 +136,8 @@ function (RESOLVE_DEPENDENCY NAME_OF_CMAKE_VAR)
|
||||
endfunction(RESOLVE_DEPENDENCY)
|
||||
|
||||
function (resolve_model_dependency network archive network_model_path)
|
||||
message(WARNING "DEPRECATED: 'resolve_model_dependency' must not be used")
|
||||
|
||||
RESOLVE_DEPENDENCY(${network_model_path}
|
||||
ARCHIVE "models_archives/${archive}"
|
||||
TARGET_PATH "${MODELS_PATH}/${network}")
|
||||
|
||||
@@ -4,23 +4,23 @@
|
||||
|
||||
include(CMakeParseArguments)
|
||||
|
||||
function(ie_faster_build TARGET_NAME)
|
||||
function(ov_build_target_faster TARGET_NAME)
|
||||
if(NOT ENABLE_FASTER_BUILD)
|
||||
return()
|
||||
endif()
|
||||
|
||||
cmake_parse_arguments(IE_FASTER_BUILD "UNITY" "" "PCH" ${ARGN})
|
||||
cmake_parse_arguments(FASTER_BUILD "UNITY" "" "PCH" ${ARGN})
|
||||
|
||||
if(IE_FASTER_BUILD_UNITY)
|
||||
set_target_properties(${TARGET_NAME}
|
||||
PROPERTIES
|
||||
UNITY_BUILD ON
|
||||
)
|
||||
if(FASTER_BUILD_UNITY)
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES UNITY_BUILD ON)
|
||||
endif()
|
||||
|
||||
if(IE_FASTER_BUILD_PCH)
|
||||
target_precompile_headers(${TARGET_NAME}
|
||||
${IE_FASTER_BUILD_PCH}
|
||||
)
|
||||
if(FASTER_BUILD_PCH)
|
||||
target_precompile_headers(${TARGET_NAME} ${FASTER_BUILD_PCH})
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(ie_faster_build)
|
||||
message(WARNING "ie_faster_build is deprecated, use ov_build_target_faster instead")
|
||||
ov_build_target_faster(${ARGV})
|
||||
endfunction()
|
||||
|
||||
@@ -18,7 +18,7 @@ else()
|
||||
ie_option(USE_BUILD_TYPE_SUBFOLDER "Create dedicated sub-folder per build type for output binaries" ON)
|
||||
endif()
|
||||
|
||||
if(CI_BUILD_NUMBER)
|
||||
if(DEFINED ENV{CI_BUILD_NUMBER} AND NOT (WIN32 OR CMAKE_CROSSCOMPILING))
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR_DEFAULT ON)
|
||||
else()
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR_DEFAULT OFF)
|
||||
|
||||
@@ -183,6 +183,11 @@ macro(ov_add_frontend)
|
||||
"-Dget_api_version=get_api_version_${OV_FRONTEND_NAME}")
|
||||
endif()
|
||||
|
||||
# remove -Wmissing-declarations warning, because of frontends implementation specific
|
||||
if(CMAKE_COMPILER_IS_GNUCXX OR OV_COMPILER_IS_CLANG)
|
||||
target_compile_options(${TARGET_NAME} PRIVATE -Wno-missing-declarations)
|
||||
endif()
|
||||
|
||||
target_include_directories(${TARGET_NAME}
|
||||
PUBLIC
|
||||
$<BUILD_INTERFACE:${${TARGET_NAME}_INCLUDE_DIR}>
|
||||
@@ -219,11 +224,11 @@ macro(ov_add_frontend)
|
||||
set(protobuf_target_name "protobuf::${protobuf_target_name}")
|
||||
endif()
|
||||
|
||||
link_system_libraries(${TARGET_NAME} PRIVATE ${protobuf_target_name})
|
||||
ov_link_system_libraries(${TARGET_NAME} PRIVATE ${protobuf_target_name})
|
||||
|
||||
# protobuf generated code emits -Wsuggest-override error
|
||||
if(SUGGEST_OVERRIDE_SUPPORTED)
|
||||
target_compile_options(${TARGET_NAME} PRIVATE -Wno-suggest-override)
|
||||
target_compile_options(${TARGET_NAME} PRIVATE $<$<COMPILE_LANGUAGE:CXX>:-Wno-suggest-override>)
|
||||
endif()
|
||||
|
||||
# install protobuf if it is not installed yet
|
||||
@@ -242,8 +247,8 @@ macro(ov_add_frontend)
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${flatbuffers_INCLUDE_DIRECTORIES})
|
||||
endif()
|
||||
|
||||
add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME}
|
||||
EXCLUDE_PATTERNS ${PROTO_SRCS} ${PROTO_HDRS} ${proto_files} ${flatbuffers_schema_files})
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME}
|
||||
EXCLUDE_PATTERNS ${PROTO_SRCS} ${PROTO_HDRS} ${proto_files} ${flatbuffers_schema_files})
|
||||
|
||||
# enable LTO
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES
|
||||
@@ -263,7 +268,7 @@ macro(ov_add_frontend)
|
||||
add_dependencies(ov_frontends ${TARGET_NAME})
|
||||
|
||||
# must be called after all target_link_libraries
|
||||
ie_add_api_validator_post_build_step(TARGET ${TARGET_NAME})
|
||||
ov_add_api_validator_post_build_step(TARGET ${TARGET_NAME})
|
||||
|
||||
# since frontends are user-facing component which can be linked against,
|
||||
# then we need to mark it to be CXX ABI free
|
||||
@@ -284,8 +289,7 @@ macro(ov_add_frontend)
|
||||
|
||||
if(OV_FRONTEND_LINKABLE_FRONTEND)
|
||||
set(export_set EXPORT OpenVINOTargets)
|
||||
set(archive_dest ARCHIVE DESTINATION ${OV_CPACK_ARCHIVEDIR}
|
||||
COMPONENT ${lib_component})
|
||||
set(archive_dest ARCHIVE DESTINATION ${OV_CPACK_ARCHIVEDIR} COMPONENT ${lib_component})
|
||||
set(namelink NAMELINK_COMPONENT ${dev_component})
|
||||
else()
|
||||
set(namelink NAMELINK_SKIP)
|
||||
@@ -295,6 +299,12 @@ macro(ov_add_frontend)
|
||||
${archive_dest}
|
||||
LIBRARY DESTINATION ${OV_CPACK_LIBRARYDIR} COMPONENT ${lib_component}
|
||||
${namelink})
|
||||
|
||||
# export to build tree
|
||||
if(OV_FRONTEND_LINKABLE_FRONTEND)
|
||||
export(TARGETS ${TARGET_NAME} NAMESPACE openvino::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/OpenVINOTargets.cmake")
|
||||
endif()
|
||||
else()
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
endif()
|
||||
@@ -306,9 +316,8 @@ macro(ov_add_frontend)
|
||||
COMPONENT ${dev_component}
|
||||
FILES_MATCHING PATTERN "*.hpp")
|
||||
|
||||
# public target name
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES EXPORT_NAME frontend::${OV_FRONTEND_NAME})
|
||||
export(TARGETS ${TARGET_NAME} NAMESPACE openvino::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/OpenVINOTargets.cmake")
|
||||
endif()
|
||||
else()
|
||||
# skipped frontend has to be installed in static libraries case
|
||||
|
||||
@@ -2,14 +2,12 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
if(ENABLE_DATA)
|
||||
find_package(Git REQUIRED)
|
||||
endif()
|
||||
|
||||
set(MODELS_LST "")
|
||||
set(MODELS_LST_TO_FETCH "")
|
||||
|
||||
function (add_models_repo add_to_fetcher model_name)
|
||||
message(WARNING "DEPRECATED: 'add_models_repo' must not be used")
|
||||
|
||||
list(LENGTH ARGV add_models_args)
|
||||
if (add_models_args EQUAL 3)
|
||||
list(GET ARGV 2 branch_name)
|
||||
@@ -28,6 +26,8 @@ function (add_models_repo add_to_fetcher model_name)
|
||||
endfunction()
|
||||
|
||||
function(add_lfs_repo name prefix url tag)
|
||||
message(WARNING "DEPRECATED: 'add_lfs_repo' must not be used")
|
||||
|
||||
if(TARGET ${name})
|
||||
return()
|
||||
endif()
|
||||
@@ -44,6 +44,8 @@ function(add_lfs_repo name prefix url tag)
|
||||
INSTALL_COMMAND ""
|
||||
LOG_DOWNLOAD ON)
|
||||
|
||||
find_package(Git REQUIRED)
|
||||
|
||||
execute_process(
|
||||
COMMAND ${GIT_EXECUTABLE} lfs install --local --force
|
||||
WORKING_DIRECTORY ${prefix}/src/${name}
|
||||
@@ -59,6 +61,8 @@ function(add_lfs_repo name prefix url tag)
|
||||
endfunction()
|
||||
|
||||
function (fetch_models_and_validation_set)
|
||||
message(WARNING "DEPRECATED: 'fetch_models_and_validation_set' must not be used")
|
||||
|
||||
foreach(loop_var ${MODELS_LST_TO_FETCH})
|
||||
string(REPLACE ":" ";" MODEL_CONFIG_LST ${loop_var})
|
||||
|
||||
|
||||
@@ -24,21 +24,24 @@ macro(ov_archive_cpack_set_dirs)
|
||||
set(OV_CPACK_DEVREQDIR tools)
|
||||
set(OV_CPACK_PYTHONDIR python)
|
||||
|
||||
if(USE_BUILD_TYPE_SUBFOLDER)
|
||||
set(build_type ${CMAKE_BUILD_TYPE})
|
||||
else()
|
||||
set(build_type $<CONFIG>)
|
||||
endif()
|
||||
|
||||
if(WIN32)
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/bin/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_WHEEL_RUNTIMEDIR runtime/bin/${ARCH_FOLDER}/Release)
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/bin/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
elseif(APPLE)
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_WHEEL_RUNTIMEDIR runtime/lib/${ARCH_FOLDER}/Release)
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
else()
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER})
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/lib/${ARCH_FOLDER})
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER})
|
||||
set(OV_WHEEL_RUNTIMEDIR ${OV_CPACK_RUNTIMEDIR})
|
||||
endif()
|
||||
set(OV_CPACK_PLUGINSDIR ${OV_CPACK_RUNTIMEDIR})
|
||||
|
||||
|
||||
@@ -19,7 +19,6 @@ macro(ov_common_libraries_cpack_set_dirs)
|
||||
else()
|
||||
set(OV_CPACK_RUNTIMEDIR ${CMAKE_INSTALL_LIBDIR})
|
||||
endif()
|
||||
set(OV_WHEEL_RUNTIMEDIR ${OV_CPACK_RUNTIMEDIR})
|
||||
set(OV_CPACK_ARCHIVEDIR ${CMAKE_INSTALL_LIBDIR})
|
||||
if(CPACK_GENERATOR MATCHES "^(CONAN|VCPKG)$")
|
||||
set(OV_CPACK_IE_CMAKEDIR ${CMAKE_INSTALL_DATADIR}/openvino)
|
||||
@@ -84,7 +83,11 @@ macro(ov_define_component_include_rules)
|
||||
unset(OV_CPACK_COMP_CORE_DEV_EXCLUDE_ALL)
|
||||
set(OV_CPACK_COMP_CORE_C_DEV_EXCLUDE_ALL ${OV_CPACK_COMP_CORE_DEV_EXCLUDE_ALL})
|
||||
# licensing
|
||||
set(OV_CPACK_COMP_LICENSING_EXCLUDE_ALL EXCLUDE_FROM_ALL)
|
||||
if(CPACK_GENERATOR STREQUAL "CONAN")
|
||||
unset(OV_CPACK_COMP_LICENSING_EXCLUDE_ALL)
|
||||
else()
|
||||
set(OV_CPACK_COMP_LICENSING_EXCLUDE_ALL EXCLUDE_FROM_ALL)
|
||||
endif()
|
||||
# samples
|
||||
set(OV_CPACK_COMP_CPP_SAMPLES_EXCLUDE_ALL EXCLUDE_FROM_ALL)
|
||||
set(OV_CPACK_COMP_C_SAMPLES_EXCLUDE_ALL ${OV_CPACK_COMP_CPP_SAMPLES_EXCLUDE_ALL})
|
||||
|
||||
@@ -24,7 +24,6 @@ macro(ov_debian_cpack_set_dirs)
|
||||
endif()
|
||||
endif()
|
||||
set(OV_CPACK_LIBRARYDIR ${OV_CPACK_RUNTIMEDIR})
|
||||
set(OV_WHEEL_RUNTIMEDIR ${OV_CPACK_RUNTIMEDIR})
|
||||
set(OV_CPACK_ARCHIVEDIR ${OV_CPACK_RUNTIMEDIR})
|
||||
set(OV_CPACK_PLUGINSDIR ${OV_CPACK_RUNTIMEDIR}/openvino-${OpenVINO_VERSION})
|
||||
set(OV_CPACK_IE_CMAKEDIR ${OV_CPACK_RUNTIMEDIR}/cmake/inferenceengine${OpenVINO_VERSION})
|
||||
|
||||
@@ -63,21 +63,24 @@ macro(ov_archive_cpack_set_dirs)
|
||||
set(OV_CPACK_DEVREQDIR tools)
|
||||
set(OV_CPACK_PYTHONDIR python)
|
||||
|
||||
if(USE_BUILD_TYPE_SUBFOLDER)
|
||||
set(build_type ${CMAKE_BUILD_TYPE})
|
||||
else()
|
||||
set(build_type $<CONFIG>)
|
||||
endif()
|
||||
|
||||
if(WIN32)
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/bin/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_WHEEL_RUNTIMEDIR runtime/bin/${ARCH_FOLDER}/Release)
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/bin/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
elseif(APPLE)
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/$<CONFIG>)
|
||||
set(OV_WHEEL_RUNTIMEDIR runtime/lib/${ARCH_FOLDER}/Release)
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
else()
|
||||
set(OV_CPACK_LIBRARYDIR runtime/lib/${ARCH_FOLDER})
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/lib/${ARCH_FOLDER})
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER})
|
||||
set(OV_WHEEL_RUNTIMEDIR ${OV_CPACK_RUNTIMEDIR})
|
||||
endif()
|
||||
set(OV_CPACK_PLUGINSDIR ${OV_CPACK_RUNTIMEDIR})
|
||||
|
||||
|
||||
@@ -24,6 +24,10 @@ macro(ov_install_static_lib target comp)
|
||||
|
||||
install(TARGETS ${target} EXPORT OpenVINOTargets
|
||||
ARCHIVE DESTINATION ${OV_CPACK_ARCHIVEDIR} COMPONENT ${comp} ${ARGN})
|
||||
|
||||
# export to local tree to build against static build tree
|
||||
export(TARGETS ${target} NAMESPACE openvino::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/OpenVINOTargets.cmake")
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
|
||||
@@ -15,7 +15,6 @@ macro(ov_rpm_cpack_set_dirs)
|
||||
set(OV_CPACK_INCLUDEDIR ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
set(OV_CPACK_LIBRARYDIR ${CMAKE_INSTALL_LIBDIR})
|
||||
set(OV_CPACK_RUNTIMEDIR ${CMAKE_INSTALL_LIBDIR})
|
||||
set(OV_WHEEL_RUNTIMEDIR ${OV_CPACK_RUNTIMEDIR})
|
||||
set(OV_CPACK_ARCHIVEDIR ${CMAKE_INSTALL_LIBDIR})
|
||||
set(OV_CPACK_PLUGINSDIR ${CMAKE_INSTALL_LIBDIR}/openvino-${OpenVINO_VERSION})
|
||||
set(OV_CPACK_IE_CMAKEDIR ${CMAKE_INSTALL_LIBDIR}/cmake/inferenceengine${OpenVINO_VERSION})
|
||||
|
||||
@@ -103,7 +103,7 @@ function(ov_add_plugin)
|
||||
endforeach()
|
||||
|
||||
if (OV_PLUGIN_ADD_CLANG_FORMAT)
|
||||
add_clang_format_target(${OV_PLUGIN_NAME}_clang FOR_SOURCES ${OV_PLUGIN_SOURCES})
|
||||
ov_add_clang_format_target(${OV_PLUGIN_NAME}_clang FOR_SOURCES ${OV_PLUGIN_SOURCES})
|
||||
else()
|
||||
add_cpplint_target(${OV_PLUGIN_NAME}_cpplint FOR_TARGETS ${OV_PLUGIN_NAME} CUSTOM_FILTERS ${custom_filter})
|
||||
endif()
|
||||
@@ -117,6 +117,10 @@ function(ov_add_plugin)
|
||||
# install rules
|
||||
if(NOT OV_PLUGIN_SKIP_INSTALL OR NOT BUILD_SHARED_LIBS)
|
||||
string(TOLOWER "${OV_PLUGIN_DEVICE_NAME}" install_component)
|
||||
if(NOT BUILD_SHARED_LIBS)
|
||||
# in case of static libs everything is installed to 'core'
|
||||
set(install_component ${OV_CPACK_COMP_CORE})
|
||||
endif()
|
||||
|
||||
if(OV_PLUGIN_PSEUDO_DEVICE)
|
||||
set(plugin_hidden HIDDEN)
|
||||
@@ -358,7 +362,7 @@ function(ov_generate_plugins_hpp)
|
||||
"${plugins_hpp_in}"
|
||||
"${IEDevScripts_DIR}/plugins/create_plugins_hpp.cmake"
|
||||
COMMENT
|
||||
"Generate ov_plugins.hpp for build"
|
||||
"Generate ov_plugins.hpp"
|
||||
VERBATIM)
|
||||
|
||||
# for some reason dependency on source files does not work
|
||||
|
||||
@@ -39,7 +39,6 @@ function(ie_shellcheck_process)
|
||||
continue()
|
||||
endif()
|
||||
|
||||
get_filename_component(dir_name "${script}" DIRECTORY)
|
||||
string(REPLACE "${IE_SHELLCHECK_DIRECTORY}" "${CMAKE_BINARY_DIR}/shellcheck" output_file ${script})
|
||||
set(output_file "${output_file}.txt")
|
||||
get_filename_component(script_name "${script}" NAME)
|
||||
|
||||
@@ -5,6 +5,9 @@
|
||||
function(ie_generate_dev_package_config)
|
||||
# dummy check that OpenCV is here
|
||||
find_package(OpenCV QUIET)
|
||||
if(OpenCV_VERSION VERSION_LESS 3.0)
|
||||
set(OpenCV_FOUND OFF)
|
||||
endif()
|
||||
|
||||
foreach(component IN LISTS openvino_export_components)
|
||||
# export all targets with prefix and use them during extra modules build
|
||||
@@ -37,6 +40,9 @@ endfunction()
|
||||
function(ov_generate_dev_package_config)
|
||||
# dummy check that OpenCV is here
|
||||
find_package(OpenCV QUIET)
|
||||
if(OpenCV_VERSION VERSION_LESS 3.0)
|
||||
set(OpenCV_FOUND OFF)
|
||||
endif()
|
||||
|
||||
foreach(component IN LISTS openvino_export_components)
|
||||
# filter out targets which are installed by OpenVINOConfig.cmake static build case
|
||||
@@ -126,12 +132,6 @@ endif()\n")
|
||||
ov_dev_package_no_errors()
|
||||
ov_deprecated_no_errors()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
# 'argument': conversion from 'size_t' to 'int', possible loss of data
|
||||
ie_add_compiler_flags(/wd4267)
|
||||
ie_add_compiler_flags(/wd4244)
|
||||
endif()
|
||||
|
||||
# add each extra module
|
||||
foreach(module_path IN LISTS extra_modules)
|
||||
if(module_path)
|
||||
|
||||
@@ -23,7 +23,7 @@ endif()
|
||||
|
||||
ie_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)
|
||||
|
||||
if (ANDROID OR (CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0) OR NOT BUILD_SHARED_LIBS)
|
||||
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))
|
||||
# oneDNN doesn't support old compilers and android builds for now, so we'll build GPU plugin without oneDNN
|
||||
# also, in case of static build CPU's and GPU's oneDNNs will conflict, so we are disabling GPU's one in this case
|
||||
set(ENABLE_ONEDNN_FOR_GPU_DEFAULT OFF)
|
||||
@@ -84,6 +84,7 @@ else()
|
||||
endif()
|
||||
|
||||
ie_dependent_option (ENABLE_TBBBIND_2_5 "Enable TBBBind_2_5 static usage in OpenVINO runtime" ${ENABLE_TBBBIND_2_5_DEFAULT} "THREADING MATCHES TBB; NOT APPLE" OFF)
|
||||
ie_dependent_option (ENABLE_TBB_RELEASE_ONLY "Only Release TBB libraries are linked to the OpenVINO Runtime binaries" ON "THREADING MATCHES TBB;LINUX" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_INTEL_GNA "GNA support for OpenVINO Runtime" ON
|
||||
"NOT APPLE;NOT ANDROID;X86_64;CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 5.4" OFF)
|
||||
@@ -104,16 +105,12 @@ ie_dependent_option (ENABLE_PLUGINS_XML "Generate plugins.xml configuration file
|
||||
|
||||
ie_dependent_option (GAPI_TEST_PERF "if GAPI unit tests should examine performance" OFF "ENABLE_TESTS;ENABLE_GAPI_PREPROCESSING" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_DATA "fetch models from testdata repo" ON "ENABLE_FUNCTIONAL_TESTS;NOT ANDROID" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_FUNCTIONAL_TESTS "functional tests" ON "ENABLE_TESTS" OFF)
|
||||
|
||||
ie_option (ENABLE_SAMPLES "console samples are part of OpenVINO Runtime package" ON)
|
||||
|
||||
set(OPENVINO_EXTRA_MODULES "" CACHE STRING "Extra paths for extra modules to include into OpenVINO build")
|
||||
|
||||
ie_dependent_option(ENABLE_TBB_RELEASE_ONLY "Only Release TBB libraries are linked to the OpenVINO Runtime binaries" ON "THREADING MATCHES TBB;LINUX" OFF)
|
||||
|
||||
find_host_package(PythonInterp 3 QUIET)
|
||||
ie_option(ENABLE_OV_ONNX_FRONTEND "Enable ONNX FrontEnd" ${PYTHONINTERP_FOUND})
|
||||
ie_option(ENABLE_OV_PADDLE_FRONTEND "Enable PaddlePaddle FrontEnd" ON)
|
||||
@@ -176,7 +173,6 @@ ie_dependent_option (ENABLE_SYSTEM_PROTOBUF "Enables use of system Protobuf" OFF
|
||||
ie_dependent_option (ENABLE_SYSTEM_SNAPPY "Enables use of system version of Snappy" OFF
|
||||
"ENABLE_SNAPPY_COMPRESSION" OFF)
|
||||
|
||||
# temporary option until we enable this by default when review python API distribution
|
||||
ie_dependent_option (ENABLE_PYTHON_PACKAGING "Enables packaging of Python API in APT / YUM" OFF
|
||||
"ENABLE_PYTHON;UNIX" OFF)
|
||||
|
||||
|
||||
@@ -90,7 +90,8 @@ macro(ov_cpack_settings)
|
||||
# - 2022.1.1, 2022.2 do not have debian packages enabled, distributed only as archives
|
||||
# - 2022.3 is the first release where Debian updated packages are introduced, others 2022.3.X are LTS
|
||||
2022.3.0 2022.3.1 2022.3.2 2022.3.3 2022.3.4 2022.3.5
|
||||
2023.0.0 2023.0.1
|
||||
2023.0.0 2023.0.1 2023.0.2 2023.0.3
|
||||
2023.1.0
|
||||
)
|
||||
|
||||
#
|
||||
|
||||
@@ -76,7 +76,8 @@ macro(ov_cpack_settings)
|
||||
# - 2022.1.1, 2022.2 do not have rpm packages enabled, distributed only as archives
|
||||
# - 2022.3 is the first release where RPM updated packages are introduced, others 2022.3.X are LTS
|
||||
2022.3.0 2022.3.1 2022.3.2 2022.3.3 2022.3.4 2022.3.5
|
||||
2023.0.0 2023.0.1
|
||||
2023.0.0 2023.0.1 2023.0.2 2023.0.3
|
||||
2023.1.0
|
||||
)
|
||||
|
||||
find_host_program(rpmlint_PROGRAM NAMES rpmlint DOC "Path to rpmlint")
|
||||
|
||||
@@ -49,10 +49,8 @@ if(ENABLE_SAMPLES)
|
||||
set_and_check(gflags_DIR "@gflags_BINARY_DIR@")
|
||||
endif()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
endif()
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
|
||||
#
|
||||
# Content
|
||||
|
||||
@@ -223,6 +223,10 @@ macro(_ov_find_tbb)
|
||||
PATHS ${_tbb_bind_dir}
|
||||
NO_CMAKE_FIND_ROOT_PATH
|
||||
NO_DEFAULT_PATH)
|
||||
if(TARGET TBBbind::tbbbind_2_5)
|
||||
# To solve https://cmake.org/cmake/help/latest/policy/CMP0111.html warnings
|
||||
set_property(TARGET TBBbind::tbbbind_2_5 PROPERTY IMPORTED_CONFIGURATIONS RELEASE DEBUG)
|
||||
endif()
|
||||
unset(_tbb_bind_dir)
|
||||
endif()
|
||||
unset(install_tbbbind)
|
||||
@@ -343,11 +347,15 @@ endmacro()
|
||||
macro(_ov_find_intel_cpu_dependencies)
|
||||
set(_OV_ENABLE_CPU_ACL "@DNNL_USE_ACL@")
|
||||
if(_OV_ENABLE_CPU_ACL)
|
||||
set(_ov_in_install_tree "@PACKAGE_ARM_COMPUTE_LIB_DIR@")
|
||||
set(_ov_in_install_tree "@PACKAGE_OPENVINO_LIB_DIR@")
|
||||
if(_ov_in_install_tree)
|
||||
set_and_check(ARM_COMPUTE_LIB_DIR "@PACKAGE_ARM_COMPUTE_LIB_DIR@")
|
||||
set_and_check(ARM_COMPUTE_LIB_DIR "@PACKAGE_OPENVINO_LIB_DIR@")
|
||||
set(ACL_DIR "${CMAKE_CURRENT_LIST_DIR}")
|
||||
else()
|
||||
if(NOT TARGET arm_compute::arm_compute)
|
||||
# for case when build tree is used separately, e.g. OpenVINODeveloperPackageConfig.cmake
|
||||
set_and_check(ARM_COMPUTE_LIB_DIR "@PACKAGE_CMAKE_ARCHIVE_OUTPUT_DIRECTORY@")
|
||||
endif()
|
||||
set_and_check(ACL_DIR "@PACKAGE_FIND_ACL_PATH@")
|
||||
endif()
|
||||
|
||||
@@ -363,16 +371,50 @@ macro(_ov_find_intel_gpu_dependencies)
|
||||
set(_OV_ENABLE_INTEL_GPU "@ENABLE_INTEL_GPU@")
|
||||
set(_OV_ENABLE_SYSTEM_OPENCL "@ENABLE_SYSTEM_OPENCL@")
|
||||
if(_OV_ENABLE_INTEL_GPU AND _OV_ENABLE_SYSTEM_OPENCL)
|
||||
set(_OV_OpenCLICDLoader_FOUND "@OpenCLICDLoader_FOUND@")
|
||||
if(_OV_OpenCLICDLoader_FOUND)
|
||||
_ov_find_dependency(OpenCLICDLoader)
|
||||
else()
|
||||
_ov_find_dependency(OpenCL)
|
||||
endif()
|
||||
unset(_OV_OpenCLICDLoader_FOUND)
|
||||
_ov_find_dependency(OpenCL)
|
||||
endif()
|
||||
unset(_OV_ENABLE_INTEL_GPU)
|
||||
unset(_OV_ENABLE_SYSTEM_OPENCL)
|
||||
|
||||
set(_OV_ENABLE_ONEDNN_FOR_GPU "@ENABLE_ONEDNN_FOR_GPU@")
|
||||
if(_OV_ENABLE_ONEDNN_FOR_GPU AND NOT TARGET onednn_gpu_tgt)
|
||||
set(_OV_DNNL_GPU_LIBRARY_NAME "@DNNL_GPU_LIBRARY_NAME@")
|
||||
|
||||
set(_ov_in_install_tree "@PACKAGE_OPENVINO_LIB_DIR@")
|
||||
if(_ov_in_install_tree)
|
||||
set(onednn_gpu_lib "${CMAKE_STATIC_LIBRARY_PREFIX}${_OV_DNNL_GPU_LIBRARY_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
set_and_check(onednn_gpu_lib_root "@PACKAGE_OPENVINO_LIB_DIR@")
|
||||
if(WIN32)
|
||||
if(OV_GENERATOR_MULTI_CONFIG)
|
||||
set(extra_args PATH_SUFFIXES ${CMAKE_CONFIGURATION_TYPES})
|
||||
else()
|
||||
set(extra_args PATH_SUFFIXES ${CMAKE_BUILD_TYPE})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
find_library(onednn_gpu_lib_path
|
||||
NAMES ${_OV_DNNL_GPU_LIBRARY_NAME}
|
||||
PATHS ${onednn_gpu_lib_root}
|
||||
${extra_args})
|
||||
|
||||
if(NOT onednn_gpu_lib_path)
|
||||
message(FATAL_ERROR "Internal error: failed to find '${_OV_DNNL_GPU_LIBRARY_NAME}' in '${onednn_gpu_lib_root}'")
|
||||
endif()
|
||||
|
||||
unset(extra_args)
|
||||
unset(onednn_gpu_lib)
|
||||
else()
|
||||
set_and_check(onednn_gpu_lib_path "@PACKAGE_ONEDNN_GPU_LIB_PATH@")
|
||||
endif()
|
||||
|
||||
set_target_properties(openvino::onednn_gpu_tgt PROPERTIES
|
||||
INTERFACE_LINK_LIBRARIES "${onednn_gpu_lib_path}")
|
||||
|
||||
unset(onednn_gpu_lib_path)
|
||||
unset(_ov_in_install_tree)
|
||||
unset(_OV_DNNL_GPU_LIBRARY_NAME)
|
||||
endif()
|
||||
unset(_OV_ENABLE_ONEDNN_FOR_GPU)
|
||||
endmacro()
|
||||
|
||||
macro(_ov_find_intel_gna_dependencies)
|
||||
@@ -455,6 +497,7 @@ set(_OV_ENABLE_OPENVINO_BUILD_SHARED "@BUILD_SHARED_LIBS@")
|
||||
|
||||
if(NOT TARGET openvino)
|
||||
set(_ov_as_external_package ON)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/OpenVINOTargets.cmake")
|
||||
endif()
|
||||
|
||||
if(NOT _OV_ENABLE_OPENVINO_BUILD_SHARED)
|
||||
@@ -487,8 +530,6 @@ set(_ov_imported_libs openvino::runtime openvino::runtime::c
|
||||
openvino::frontend::pytorch openvino::frontend::tensorflow_lite)
|
||||
|
||||
if(_ov_as_external_package)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/OpenVINOTargets.cmake")
|
||||
|
||||
foreach(target IN LISTS _ov_imported_libs)
|
||||
if(TARGET ${target})
|
||||
get_target_property(imported_configs ${target} IMPORTED_CONFIGURATIONS)
|
||||
|
||||
@@ -54,10 +54,8 @@ if(ENABLE_SAMPLES)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
endif()
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
|
||||
#
|
||||
# Content
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
pc_path=${pcfiledir}
|
||||
prefix=${pc_path}/@PKGCONFIG_OpenVINO_PREFIX@
|
||||
|
||||
exec_prefix=${prefix}/@OV_WHEEL_RUNTIMEDIR@
|
||||
exec_prefix=${prefix}/@OV_CPACK_RUNTIMEDIR@
|
||||
libdir=${exec_prefix}
|
||||
|
||||
include_prefix=${prefix}/@OV_CPACK_INCLUDEDIR@
|
||||
|
||||
@@ -8,7 +8,7 @@ if(ENABLE_OV_ONNX_FRONTEND)
|
||||
# if requirements are not installed automatically, we need to checks whether they are here
|
||||
ov_check_pip_packages(REQUIREMENTS_FILE "${OpenVINO_SOURCE_DIR}/src/frontends/onnx/tests/requirements.txt"
|
||||
RESULT_VAR onnx_FOUND
|
||||
WARNING_MESSAGE "ONNX frontend tests will be skipped"
|
||||
WARNING_MESSAGE "ONNX testing models weren't generated, some tests will fail due .onnx models not found"
|
||||
MESSAGE_MODE WARNING)
|
||||
endif()
|
||||
|
||||
|
||||
@@ -37,6 +37,8 @@ macro(ov_set_msvc_runtime var value)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
# ade
|
||||
ov_set_msvc_runtime(BUILD_WITH_STATIC_CRT ${use_static_runtime})
|
||||
# static TBBBind_2_5 is built with dynamic CRT runtime
|
||||
ov_set_msvc_runtime(ENABLE_TBBBIND_2_5 ${use_dynamic_runtime})
|
||||
# ONNX
|
||||
|
||||
40
conan.lock
Normal file
40
conan.lock
Normal file
@@ -0,0 +1,40 @@
|
||||
{
|
||||
"version": "0.5",
|
||||
"requires": [
|
||||
"zlib/1.2.13#97d5730b529b4224045fe7090592d4c1%1692672717.049",
|
||||
"xbyak/6.73#250bc3bc73379f90f255876c1c00a4cd%1691853024.351",
|
||||
"snappy/1.1.10#916523630083f6d855cb2977de8eefb6%1689780661.062",
|
||||
"rapidjson/cci.20220822#8ca51918340f3a21127822258e95ec0f%1663194355.698",
|
||||
"pybind11/2.10.4#dd44c80a5ed6a2ef11194380daae1248%1682692198.909",
|
||||
"pugixml/1.13#f615c1fcec55122b2e177d17061276e7%1691917296.869",
|
||||
"protobuf/3.21.12#d9f5f4e3b86552552dda4c0a2e928eeb%1685218275.69",
|
||||
"opencl-icd-loader/2023.04.17#5f73dd9f0c023d416a7f162e320b9c77%1692732261.088",
|
||||
"opencl-headers/2023.04.17#3d98f2d12a67c2400de6f11d5335b5a6%1683936272.16",
|
||||
"opencl-clhpp-headers/2023.04.17#7c62fcc7ac2559d4839150d2ebaac5c8%1685450803.672",
|
||||
"onnx/1.14.1#d95f4e64bedf3dc6898253847ac69005%1693130309.828",
|
||||
"onetbb/2021.10.0#cbb2fc43088070b48f6e4339bc8fa0e1%1693812561.235",
|
||||
"nlohmann_json/3.11.2#a35423bb6e1eb8f931423557e282c7ed%1666619820.488",
|
||||
"ittapi/3.24.0#9246125f13e7686dee2b0c992b71db94%1682969872.743",
|
||||
"hwloc/2.9.2#1c63e2eccac57048ae226e6c946ebf0e%1688677682.002",
|
||||
"gflags/2.2.2#48d1262ffac8d30c3224befb8275a533%1676224985.343",
|
||||
"flatbuffers/23.5.26#b153646f6546daab4c7326970b6cd89c%1685838458.449",
|
||||
"ade/0.1.2c#8c03c130df6dc35186b38ba73a40a71d%1694253992.577"
|
||||
],
|
||||
"build_requires": [
|
||||
"zlib/1.2.13#97d5730b529b4224045fe7090592d4c1%1692672717.049",
|
||||
"protobuf/3.21.12#d9f5f4e3b86552552dda4c0a2e928eeb%1685218275.69",
|
||||
"protobuf/3.21.9#515ceb0a1653cf84363d9968b812d6be%1678364058.993",
|
||||
"pkgconf/1.9.5#743ca0d41d35a84b1f89af337ddaa1a0%1688570267.802",
|
||||
"patchelf/0.13#0eaada8970834919c3ce14355afe7fac%1680534241.341",
|
||||
"ninja/1.11.1#77587f8c8318662ac8e5a7867eb4be21%1684431244.21",
|
||||
"meson/1.0.0#15586c0ac6f682805875ef903dbe7ee2%1673885561.647",
|
||||
"m4/1.4.19#c1c4b1ee919e34630bb9b50046253d3c%1676610086.39",
|
||||
"libtool/2.4.6#9ee8efc04c2e106e7fba13bb1e477617%1677509454.345",
|
||||
"gnu-config/cci.20210814#15c3bf7dfdb743977b84d0321534ad90%1681250000.747",
|
||||
"flatbuffers/23.5.26#b153646f6546daab4c7326970b6cd89c%1685838458.449",
|
||||
"cmake/3.27.4#a7e78418b024dccacccc887f049f47ed%1693515860.005",
|
||||
"automake/1.16.5#058bda3e21c36c9aa8425daf3c1faf50%1688481772.751",
|
||||
"autoconf/2.71#53be95d228b2dcb30dc199cb84262d8f%1693395343.513"
|
||||
],
|
||||
"python_requires": []
|
||||
}
|
||||
@@ -1,29 +1,30 @@
|
||||
[requires]
|
||||
ade/0.1.2a
|
||||
ade/0.1.2c
|
||||
onetbb/[>=2021.2.1]
|
||||
pugixml/[>=1.10]
|
||||
protobuf/3.21.9
|
||||
protobuf/3.21.12
|
||||
ittapi/[>=3.23.0]
|
||||
zlib/[>=1.2.8]
|
||||
opencl-icd-loader/2023.04.17
|
||||
opencl-clhpp-headers/2023.04.17
|
||||
opencl-headers/2023.04.17
|
||||
opencl-icd-loader/[>=2023.04.17]
|
||||
rapidjson/[>=1.1.0]
|
||||
xbyak/[>=6.62]
|
||||
snappy/[>=1.1.7]
|
||||
gflags/2.2.2
|
||||
onnx/1.13.1
|
||||
onnx/1.14.1
|
||||
nlohmann_json/[>=3.1.1]
|
||||
pybind11/[>=2.10.1]
|
||||
flatbuffers/[>=22.9.24]
|
||||
|
||||
[tool_requires]
|
||||
cmake/[>=3.15]
|
||||
cmake/[>=3.20]
|
||||
pkgconf/1.9.5
|
||||
patchelf/[>=0.12]
|
||||
protobuf/3.21.9
|
||||
flatbuffers/[>=22.9.24]
|
||||
|
||||
[options]
|
||||
protobuf/*:lite=True
|
||||
protobuf/*:shared=False
|
||||
flatbuffers/*:header_only=True
|
||||
|
||||
[generators]
|
||||
|
||||
327
cspell.json
327
cspell.json
@@ -4,80 +4,407 @@
|
||||
"dictionaryDefinitions": [],
|
||||
"dictionaries": [],
|
||||
"words": [
|
||||
"aarch64",
|
||||
"acdadcfa",
|
||||
"acea",
|
||||
"abmrd",
|
||||
"acfb",
|
||||
"acosh",
|
||||
"Acosh",
|
||||
"adfcd",
|
||||
"addcmul",
|
||||
"addif",
|
||||
"addmm",
|
||||
"aeaa",
|
||||
"agem",
|
||||
"agew",
|
||||
"armeabi",
|
||||
"armhf",
|
||||
"artefacts",
|
||||
"ARTEFACTS",
|
||||
"Asinh",
|
||||
"asynch",
|
||||
"Atanh",
|
||||
"autodoc",
|
||||
"Autograd",
|
||||
"autoplugin",
|
||||
"AUTOPLUGIN",
|
||||
"autoremove",
|
||||
"autosummary",
|
||||
"bace",
|
||||
"Backprop",
|
||||
"bblayers",
|
||||
"Beautif",
|
||||
"Bilat",
|
||||
"bindir",
|
||||
"bitbake",
|
||||
"BFYX",
|
||||
"BFXY",
|
||||
"bkgr",
|
||||
"brctl",
|
||||
"Bucketize",
|
||||
"BUILDDIR",
|
||||
"buildtools",
|
||||
"buildsystems",
|
||||
"BYXF",
|
||||
"bvalue",
|
||||
"bvlc",
|
||||
"caffe",
|
||||
"caffemodel",
|
||||
"camvid",
|
||||
"cbba",
|
||||
"cbcd",
|
||||
"cdad",
|
||||
"cdrom",
|
||||
"chrpath",
|
||||
"classov",
|
||||
"cldnn",
|
||||
"clumber",
|
||||
"codepath",
|
||||
"codepaths",
|
||||
"coeffs",
|
||||
"concat",
|
||||
"Concat",
|
||||
"Conts",
|
||||
"constexpr",
|
||||
"consts",
|
||||
"Consts",
|
||||
"conv",
|
||||
"Convolutional",
|
||||
"CPPLINT",
|
||||
"cpplint",
|
||||
"crbegin",
|
||||
"crend",
|
||||
"ctest",
|
||||
"ctput",
|
||||
"CVAT",
|
||||
"cython",
|
||||
"dadb",
|
||||
"DANDROID",
|
||||
"DARM",
|
||||
"Datumaro",
|
||||
"datumaro",
|
||||
"DBUILD",
|
||||
"DCMAKE",
|
||||
"ddepth",
|
||||
"Depthwise",
|
||||
"dearmor",
|
||||
"devicesupport",
|
||||
"dequantization",
|
||||
"Dequantization",
|
||||
"deeplabv",
|
||||
"deeced",
|
||||
"DENABLE",
|
||||
"delif",
|
||||
"denormal",
|
||||
"DENORMAL",
|
||||
"denormalized",
|
||||
"Detectron",
|
||||
"Dequantize",
|
||||
"devel",
|
||||
"devtoolset",
|
||||
"dgpu",
|
||||
"diffstat",
|
||||
"dldt",
|
||||
"dlstreamer",
|
||||
"dkms",
|
||||
"Dockerfiles",
|
||||
"DOPENVINO",
|
||||
"downscript",
|
||||
"doxid",
|
||||
"doxygen",
|
||||
"Doxygen",
|
||||
"doxygensnippet",
|
||||
"DTHREADING",
|
||||
"dpkg",
|
||||
"DPYTHON",
|
||||
"DSELECTIVE",
|
||||
"dylib",
|
||||
"DWORD",
|
||||
"efficientdet",
|
||||
"Efficientdet",
|
||||
"Einsum",
|
||||
"Elems",
|
||||
"Elementwise",
|
||||
"elementwise",
|
||||
"Eltwise",
|
||||
"endsphinxdirective",
|
||||
"enumov",
|
||||
"emcmake",
|
||||
"emmake",
|
||||
"emod",
|
||||
"emom",
|
||||
"emow",
|
||||
"Emscripten",
|
||||
"emscripten",
|
||||
"emsdk",
|
||||
"epel",
|
||||
"ERRORLEVEL",
|
||||
"evolutionally",
|
||||
"executionpolicy",
|
||||
"fafe",
|
||||
"fdupes",
|
||||
"flatbuffers",
|
||||
"FLATBUFFERS",
|
||||
"frontends",
|
||||
"Frontends",
|
||||
"FYXB",
|
||||
"gaddb",
|
||||
"GAPI",
|
||||
"gapi",
|
||||
"Gaussed",
|
||||
"gcompoundkernel",
|
||||
"gcomputation",
|
||||
"GCPU",
|
||||
"gcpukernel",
|
||||
"Gelu",
|
||||
"GELU",
|
||||
"Geti",
|
||||
"getitem",
|
||||
"gimg",
|
||||
"gitee",
|
||||
"gflags",
|
||||
"globbing",
|
||||
"gmmlib",
|
||||
"GNAs",
|
||||
"gmock",
|
||||
"gnueabihf",
|
||||
"googlenet",
|
||||
"gpgcheck",
|
||||
"gpgkey",
|
||||
"graphviz",
|
||||
"Graphviz",
|
||||
"groupov",
|
||||
"gtest",
|
||||
"hardtanh",
|
||||
"hashfile",
|
||||
"HDDL",
|
||||
"HKLM",
|
||||
"HOSTTOOLS",
|
||||
"Hotspots",
|
||||
"hotspots",
|
||||
"hostnet",
|
||||
"hwloc",
|
||||
"hwquote",
|
||||
"idbf",
|
||||
"IDFT",
|
||||
"iigd",
|
||||
"ifdef",
|
||||
"ifdown",
|
||||
"ifup",
|
||||
"imgproc",
|
||||
"imshow",
|
||||
"inet",
|
||||
"INTEGRITYCHECK",
|
||||
"ILSVRC",
|
||||
"inferenced",
|
||||
"Informations",
|
||||
"insmod",
|
||||
"intelocl",
|
||||
"INTERPROCEDURAL",
|
||||
"INSTALLDIR",
|
||||
"IRDFT",
|
||||
"jemalloc",
|
||||
"kaldi",
|
||||
"Keras",
|
||||
"keypress",
|
||||
"keyrings",
|
||||
"Khronos",
|
||||
"KROIs",
|
||||
"Landm",
|
||||
"landm",
|
||||
"Latency",
|
||||
"Lcov",
|
||||
"ldconfig",
|
||||
"libc",
|
||||
"libopencl",
|
||||
"libopencv",
|
||||
"libpython",
|
||||
"libtbb",
|
||||
"libtbbbind",
|
||||
"libtpm",
|
||||
"libvirtd",
|
||||
"linmac",
|
||||
"Liskov",
|
||||
"lowlatency",
|
||||
"LTSC",
|
||||
"LSTM",
|
||||
"makefiles",
|
||||
"malloc",
|
||||
"memleaks",
|
||||
"manylinux",
|
||||
"maxdepth",
|
||||
"miktext",
|
||||
"Mish",
|
||||
"mklink",
|
||||
"mmap",
|
||||
"mobilenet",
|
||||
"Mobilenet",
|
||||
"monodepth",
|
||||
"mozallowfullscreen",
|
||||
"msallowfullscreen",
|
||||
"MSVC",
|
||||
"msvc",
|
||||
"Multiclass",
|
||||
"muxed",
|
||||
"mxnet",
|
||||
"namespaceov",
|
||||
"NCHW",
|
||||
"ncpu",
|
||||
"netdev",
|
||||
"netplan",
|
||||
"ngraph",
|
||||
"nireq",
|
||||
"NNCF",
|
||||
"nncf",
|
||||
"nocache",
|
||||
"noglob",
|
||||
"nohup",
|
||||
"nlohmann",
|
||||
"norestart",
|
||||
"noqueue",
|
||||
"nproc",
|
||||
"NUMA",
|
||||
"numpy",
|
||||
"Numpy",
|
||||
"oallowfullscreen",
|
||||
"ocloc",
|
||||
"OCSP",
|
||||
"oneapi",
|
||||
"onetbb",
|
||||
"onnx",
|
||||
"opencl",
|
||||
"openembedded",
|
||||
"openvino",
|
||||
"Opset",
|
||||
"opset",
|
||||
"opsets",
|
||||
"OVMS",
|
||||
"ovms",
|
||||
"ovsa",
|
||||
"OVSA",
|
||||
"ovsatool",
|
||||
"OVTF",
|
||||
"PACKAGECONFIG",
|
||||
"paddlepaddle",
|
||||
"parameterizable",
|
||||
"partitioner",
|
||||
"patchelf",
|
||||
"passpattern",
|
||||
"Pexels",
|
||||
"pdmodel",
|
||||
"PDPD",
|
||||
"pkgdata",
|
||||
"pkgs",
|
||||
"pkill",
|
||||
"polylines",
|
||||
"postproc",
|
||||
"postprocess",
|
||||
"preprocess",
|
||||
"Preprocess",
|
||||
"protobuf",
|
||||
"Protobuf",
|
||||
"PROTOBUF",
|
||||
"prototxt",
|
||||
"PSROI",
|
||||
"Pugi",
|
||||
"pugixml",
|
||||
"PUGIXML",
|
||||
"pypi",
|
||||
"PYTHONPATH",
|
||||
"pzstd",
|
||||
"qcow",
|
||||
"qlen",
|
||||
"QSPECTRE",
|
||||
"Qspectre",
|
||||
"quantizer",
|
||||
"Rects",
|
||||
"Relu",
|
||||
"relu",
|
||||
"rcnn",
|
||||
"RCNN",
|
||||
"RDFT",
|
||||
"Redistributable",
|
||||
"remotesigned",
|
||||
"repolist",
|
||||
"reproject",
|
||||
"reshapable",
|
||||
"Requantize",
|
||||
"retval",
|
||||
"RHODS",
|
||||
"rmmod",
|
||||
"runtool",
|
||||
"scons",
|
||||
"SCONS",
|
||||
"segm",
|
||||
"Selu",
|
||||
"servercore",
|
||||
"setuptools",
|
||||
"setupvars",
|
||||
"SETX",
|
||||
"SIMD",
|
||||
"Softmax",
|
||||
"skylake",
|
||||
"sphinxdirective",
|
||||
"Strided",
|
||||
"squeezenet",
|
||||
"SWTPM",
|
||||
"swtpm",
|
||||
"TBBBIND",
|
||||
"TBBROOT",
|
||||
"Tensro",
|
||||
"texlive",
|
||||
"textrm",
|
||||
"tflite",
|
||||
"thirdparty",
|
||||
"Thresholded",
|
||||
"toctree",
|
||||
"toolset",
|
||||
"Torchvision",
|
||||
"tpmrm",
|
||||
"tpmstate",
|
||||
"tput",
|
||||
"Tunables",
|
||||
"unet",
|
||||
"Uninstallation",
|
||||
"unixio",
|
||||
"unsharp",
|
||||
"Unsharp",
|
||||
"Unsh",
|
||||
"Unsqueeze",
|
||||
"Usecase",
|
||||
"usecases",
|
||||
"USERPROFILE",
|
||||
"userspace",
|
||||
"VAAPI",
|
||||
"valgrind",
|
||||
"vcpkg",
|
||||
"vcvars",
|
||||
"venv",
|
||||
"virbr",
|
||||
"virsh",
|
||||
"virt",
|
||||
"virtio",
|
||||
"VMHWM",
|
||||
"VMRSS",
|
||||
"VNNI",
|
||||
"vtune",
|
||||
"vtunesummary",
|
||||
"vtunebottonup",
|
||||
"WHOLEARCHIVE",
|
||||
"WDDM",
|
||||
"WORKDIR",
|
||||
"WORKSIZE",
|
||||
"xbyak",
|
||||
"Xbyak",
|
||||
"xdot",
|
||||
"xvfz",
|
||||
"yocto",
|
||||
"yolo",
|
||||
"YOLO",
|
||||
"yolov",
|
||||
"Yolov",
|
||||
"YXFB",
|
||||
"zstd"
|
||||
],
|
||||
"ignoreWords": [],
|
||||
|
||||
@@ -76,7 +76,7 @@ function(build_docs)
|
||||
# build with openvino notebooks
|
||||
if(ENABLE_OPENVINO_NOTEBOOKS)
|
||||
set(NBDOC_SCRIPT "${DOCS_SOURCE_DIR}/nbdoc/nbdoc.py")
|
||||
list(APPEND commands
|
||||
list(PREPEND commands
|
||||
COMMAND ${PYTHON_EXECUTABLE} "${NBDOC_SCRIPT}" "${DOCS_SOURCE_DIR}/notebooks" "${RST_OUTPUT}/notebooks"
|
||||
)
|
||||
endif()
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
|
||||
Interactive Tutorials (Python) <tutorials>
|
||||
Sample Applications (Python & C++) <openvino_docs_OV_UG_Samples_Overview>
|
||||
OpenVINO API 2.0 Transition <openvino_2_0_transition_guide>
|
||||
|
||||
|
||||
This section will help you get a hands-on experience with OpenVINO even if you are just starting
|
||||
@@ -3,60 +3,256 @@
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Preparing models for OpenVINO Runtime. Learn how to convert and compile models from different frameworks or read them directly.
|
||||
|
||||
:description: Preparing models for OpenVINO Runtime. Learn about the methods
|
||||
used to read, convert and compile models from different frameworks.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:hidden:
|
||||
|
||||
Supported_Model_Formats
|
||||
openvino_docs_MO_DG_Deep_Learning_Model_Optimizer_DevGuide
|
||||
omz_tools_downloader
|
||||
openvino_docs_OV_Converter_UG_Conversion_Options
|
||||
openvino_docs_OV_Converter_UG_prepare_model_convert_model_Converting_Model
|
||||
|
||||
|
||||
Every deep learning workflow begins with obtaining a model. You can choose to prepare a custom one, use a ready-made solution and adjust it to your needs, or even download and run a pre-trained network from an online database, such as `TensorFlow Hub <https://tfhub.dev/>`__, `Hugging Face <https://huggingface.co/>`__, `Torchvision models <https://pytorch.org/hub/>`__.
|
||||
Every deep learning workflow begins with obtaining a model. You can choose to prepare
|
||||
a custom one, use a ready-made solution and adjust it to your needs, or even download
|
||||
and run a pre-trained network from an online database, such as
|
||||
`TensorFlow Hub <https://tfhub.dev/>`__, `Hugging Face <https://huggingface.co/>`__,
|
||||
or `Torchvision models <https://pytorch.org/hub/>`__.
|
||||
|
||||
:doc:`OpenVINO™ supports several model formats <Supported_Model_Formats>` and allows converting them to it's own, `openvino.runtime.Model <api/ie_python_api/_autosummary/openvino.runtime.Model.html>`__ (`ov.Model <api/ie_python_api/_autosummary/openvino.runtime.Model.html>`__ ), providing a tool dedicated to this task.
|
||||
If your selected model is in one of the :doc:`OpenVINO™ supported model formats <Supported_Model_Formats>`,
|
||||
you can use it directly, without the need to save as the OpenVINO IR.
|
||||
(`openvino.Model <api/ie_python_api/_autosummary/openvino.Model.html>`__ -
|
||||
`ov.Model <api/ie_python_api/_autosummary/openvino.runtime.Model.html>`__).
|
||||
For this purpose, you can use ``openvino.Core.read_model`` and ``openvino.Core.compile_model``
|
||||
methods, so that conversion is performed automatically before inference, for
|
||||
maximum convenience (note that working with PyTorch differs slightly, the Python API
|
||||
being the only option, while TensorFlow may present additional considerations
|
||||
:doc:`TensorFlow Frontend Capabilities and Limitations <openvino_docs_MO_DG_TensorFlow_Frontend>`).
|
||||
|
||||
There are several options to convert a model from original framework to OpenVINO model format (``ov.Model``).
|
||||
|
||||
The ``read_model()`` method reads a model from a file and produces ``ov.Model``. If the file is in one of the supported original framework file formats, it is converted automatically to OpenVINO Intermediate Representation. If the file is already in the OpenVINO IR format, it is read "as-is", without any conversion involved. ``ov.Model`` can be serialized to IR using the ``ov.serialize()`` method. The serialized IR can be further optimized using :doc:`Neural Network Compression Framework (NNCF) <ptq_introduction>` that applies post-training quantization methods.
|
||||
For better performance and more optimization options, OpenVINO offers a conversion
|
||||
API with two possible approaches: the Python API functions (``openvino.convert_model``
|
||||
and ``openvino.save_model``) and the ``ovc`` command line tool, which are described in detail in this article.
|
||||
|
||||
Convert a model in Python
|
||||
######################################
|
||||
.. note::
|
||||
|
||||
Model conversion API prior to OpenVINO 2023.1 is considered deprecated.
|
||||
Both existing and new projects are recommended to transition to the new
|
||||
solutions, keeping in mind that they are not fully backwards compatible
|
||||
with ``openvino.tools.mo.convert_model`` or the ``mo`` CLI tool.
|
||||
For more details, see the :doc:`Model Conversion API Transition Guide <openvino_docs_OV_Converter_UG_prepare_model_convert_model_MO_OVC_transition>`.
|
||||
|
||||
Model conversion API, specifically, the ``mo.convert_model()`` method converts a model from original framework to ``ov.Model``. ``mo.convert_model()`` returns ``ov.Model`` object in memory so the ``read_model()`` method is not required. The resulting ``ov.Model`` can be inferred in the same training environment (python script or Jupiter Notebook). ``mo.convert_model()`` provides a convenient way to quickly switch from framework-based code to OpenVINO-based code in your inference application. In addition to model files, ``mo.convert_model()`` can take OpenVINO extension objects constructed directly in Python for easier conversion of operations that are not supported in OpenVINO. The ``mo.convert_model()`` method also has a set of parameters to :doc:`cut the model <openvino_docs_MO_DG_prepare_model_convert_model_Cutting_Model>`, :doc:`set input shapes or layout <openvino_docs_MO_DG_prepare_model_convert_model_Converting_Model>`, :doc:`add preprocessing <openvino_docs_MO_DG_Additional_Optimization_Use_Cases>`, etc.
|
||||
|
||||
.. image:: _static/images/model_conversion_diagram.svg
|
||||
|
||||
|
||||
Convert a Model in Python: ``convert_model``
|
||||
##############################################
|
||||
|
||||
You can use the Model conversion API in Python with the ``openvino.convert_model`` function. This function converts a model from its original framework representation, for example PyTorch or TensorFlow, to the object of type ``openvino.Model``. The resulting ``openvino.Model`` can be inferred in the same application (Python script or Jupyter Notebook) or saved into a file using``openvino.save_model`` for future use. Below, there are examples of how to use the ``openvino.convert_model`` with models from popular public repositories:
|
||||
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Torchvision
|
||||
|
||||
.. code-block:: py
|
||||
:force:
|
||||
|
||||
import openvino as ov
|
||||
import torch
|
||||
from torchvision.models import resnet50
|
||||
|
||||
model = resnet50(pretrained=True)
|
||||
|
||||
# prepare input_data
|
||||
input_data = torch.rand(1, 3, 224, 224)
|
||||
|
||||
ov_model = ov.convert_model(model, example_input=input_data)
|
||||
|
||||
###### Option 1: Save to OpenVINO IR:
|
||||
|
||||
# save model to OpenVINO IR for later use
|
||||
ov.save_model(ov_model, 'model.xml')
|
||||
|
||||
###### Option 2: Compile and infer with OpenVINO:
|
||||
|
||||
# compile model
|
||||
compiled_model = ov.compile_model(ov_model)
|
||||
|
||||
# run the inference
|
||||
result = compiled_model(input_data)
|
||||
|
||||
.. tab-item:: Hugging Face Transformers
|
||||
|
||||
.. code-block:: py
|
||||
|
||||
from transformers import BertTokenizer, BertModel
|
||||
|
||||
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
|
||||
model = BertModel.from_pretrained("bert-base-uncased")
|
||||
text = "Replace me by any text you'd like."
|
||||
encoded_input = tokenizer(text, return_tensors='pt')
|
||||
|
||||
import openvino as ov
|
||||
ov_model = ov.convert_model(model, example_input={**encoded_input})
|
||||
|
||||
###### Option 1: Save to OpenVINO IR:
|
||||
|
||||
# save model to OpenVINO IR for later use
|
||||
ov.save_model(ov_model, 'model.xml')
|
||||
|
||||
###### Option 2: Compile and infer with OpenVINO:
|
||||
|
||||
# compile model
|
||||
compiled_model = ov.compile_model(ov_model)
|
||||
|
||||
# prepare input_data using HF tokenizer or your own tokenizer
|
||||
# encoded_input is reused here for simplicity
|
||||
|
||||
# run inference
|
||||
result = compiled_model({**encoded_input})
|
||||
|
||||
.. tab-item:: Keras Applications
|
||||
|
||||
.. code-block:: py
|
||||
|
||||
import tensorflow as tf
|
||||
import openvino as ov
|
||||
|
||||
tf_model = tf.keras.applications.ResNet50(weights="imagenet")
|
||||
ov_model = ov.convert_model(tf_model)
|
||||
|
||||
###### Option 1: Save to OpenVINO IR:
|
||||
|
||||
# save model to OpenVINO IR for later use
|
||||
ov.save_model(ov_model, 'model.xml')
|
||||
|
||||
###### Option 2: Compile and infer with OpenVINO:
|
||||
|
||||
# compile model
|
||||
compiled_model = ov.compile_model(ov_model)
|
||||
|
||||
# prepare input_data
|
||||
import numpy as np
|
||||
input_data = np.random.rand(1, 224, 224, 3)
|
||||
|
||||
# run inference
|
||||
result = compiled_model(input_data)
|
||||
|
||||
.. tab-item:: TensorFlow Hub
|
||||
|
||||
.. code-block:: py
|
||||
|
||||
import tensorflow as tf
|
||||
import tensorflow_hub as hub
|
||||
import openvino as ov
|
||||
|
||||
model = tf.keras.Sequential([
|
||||
hub.KerasLayer("https://tfhub.dev/google/imagenet/mobilenet_v1_100_224/classification/5")
|
||||
])
|
||||
|
||||
# Check model page for information about input shape: https://tfhub.dev/google/imagenet/mobilenet_v1_100_224/classification/5
|
||||
model.build([None, 224, 224, 3])
|
||||
|
||||
model.save('mobilenet_v1_100_224') # use a temporary directory
|
||||
ov_model = ov.convert_model('mobilenet_v1_100_224')
|
||||
|
||||
###### Option 1: Save to OpenVINO IR:
|
||||
|
||||
ov.save_model(ov_model, 'model.xml')
|
||||
|
||||
###### Option 2: Compile and infer with OpenVINO:
|
||||
|
||||
compiled_model = ov.compile_model(ov_model)
|
||||
|
||||
# prepare input_data
|
||||
import numpy as np
|
||||
input_data = np.random.rand(1, 224, 224, 3)
|
||||
|
||||
# run inference
|
||||
result = compiled_model(input_data)
|
||||
|
||||
.. tab-item:: ONNX Model Hub
|
||||
|
||||
.. code-block:: py
|
||||
|
||||
import onnx
|
||||
|
||||
model = onnx.hub.load("resnet50")
|
||||
onnx.save(model, 'resnet50.onnx') # use a temporary file for model
|
||||
|
||||
import openvino as ov
|
||||
ov_model = ov.convert_model('resnet50.onnx')
|
||||
|
||||
###### Option 1: Save to OpenVINO IR:
|
||||
|
||||
# save model to OpenVINO IR for later use
|
||||
ov.save_model(ov_model, 'model.xml')
|
||||
|
||||
###### Option 2: Compile and infer with OpenVINO:
|
||||
|
||||
# compile model
|
||||
compiled_model = ov.compile_model(ov_model)
|
||||
|
||||
# prepare input_data
|
||||
import numpy as np
|
||||
input_data = np.random.rand(1, 3, 224, 224)
|
||||
|
||||
# run inference
|
||||
result = compiled_model(input_data)
|
||||
|
||||
In Option 1, where the ``openvino.save_model`` function is used, an OpenVINO model is serialized in the file system as two files with ``.xml`` and ``.bin`` extensions. This pair of files is called OpenVINO Intermediate Representation format (OpenVINO IR, or just IR) and useful for efficient model deployment. OpenVINO IR can be loaded into another application for inference using the ``openvino.Core.read_model`` function. For more details, refer to the :doc:`OpenVINO™ Runtime documentation <openvino_docs_OV_UG_OV_Runtime_User_Guide>`.
|
||||
|
||||
Option 2, where ``openvino.compile_model`` is used, provides a convenient way to quickly switch from framework-based code to OpenVINO-based code in your existing Python inference application. In this case, the converted model is not saved to IR. Instead, the model is compiled and used for inference within the same application.
|
||||
|
||||
Option 1 separates model conversion and model inference into two different applications. This approach is useful for deployment scenarios requiring fewer extra dependencies and faster model loading in the end inference application.
|
||||
|
||||
For example, converting a PyTorch model to OpenVINO usually demands the ``torch`` Python module and Python. This process can take extra time and memory. But, after the converted model is saved as OpenVINO IR with ``openvino.save_model``, it can be loaded in a separate application without requiring the ``torch`` dependency and the time-consuming conversion. The inference application can be written in other languages supported by OpenVINO, for example, in C++, and Python installation is not necessary for it to run.
|
||||
|
||||
Before saving the model to OpenVINO IR, consider applying :doc:`Post-training Optimization <ptq_introduction>` to enable more efficient inference and smaller model size.
|
||||
|
||||
The figure below illustrates the typical workflow for deploying a trained deep-learning model.
|
||||
|
||||
.. image:: ./_static/images/model_conversion_diagram.svg
|
||||
:alt: model conversion diagram
|
||||
|
||||
Convert a model with ``mo`` command-line tool
|
||||
#############################################
|
||||
Convert a Model in CLI: ``ovc``
|
||||
###############################
|
||||
|
||||
Another option to convert a model is to use ``mo`` command-line tool. ``mo`` is a cross-platform tool that facilitates the transition between training and deployment environments, performs static model analysis, and adjusts deep learning models for optimal execution on end-point target devices in the same measure, as the ``mo.convert_model`` method.
|
||||
Another option for model conversion is to use ``ovc`` command-line tool, which stands for OpenVINO Model Converter. The tool combines both ``openvino.convert_model`` and ``openvino.save_model`` functionalities. It is convenient to use when the original model is ready for inference and is in one of the supported file formats: ONNX, TensorFlow, TensorFlow Lite, or PaddlePaddle. As a result, ``ovc`` produces an OpenVINO IR, consisting of ``.xml`` and ``.bin`` files, which needs to be read with the ``openvino.Core.read_model`` method. You can compile and infer the ``ov.Model`` later with :doc:`OpenVINO™ Runtime <openvino_docs_OV_UG_OV_Runtime_User_Guide>`
|
||||
|
||||
``mo`` requires the use of a pre-trained deep learning model in one of the supported formats: TensorFlow, TensorFlow Lite, PaddlePaddle, or ONNX. ``mo`` converts the model to the OpenVINO Intermediate Representation format (IR), which needs to be read with the ``ov.read_model()`` method. Then, you can compile and infer the ``ov.Model`` later with :doc:`OpenVINO™ Runtime <openvino_docs_OV_UG_OV_Runtime_User_Guide>`.
|
||||
.. note::
|
||||
PyTorch models cannot be converted with ``ovc``, use ``openvino.convert_model`` instead.
|
||||
|
||||
The results of both ``ovc`` and ``openvino.convert_model``/``openvino.save_model`` conversion methods are the same. You can choose either of them based on your convenience. Note that there should not be any differences in the results of model conversion if the same set of parameters is used and the model is saved into OpenVINO IR.
|
||||
|
||||
|
||||
The figure below illustrates the typical workflow for deploying a trained deep learning model:
|
||||
|
||||
.. image:: _static/images/BASIC_FLOW_MO_simplified.svg
|
||||
|
||||
where IR is a pair of files describing the model:
|
||||
|
||||
* ``.xml`` - Describes the network topology.
|
||||
* ``.bin`` - Contains the weights and biases binary data.
|
||||
|
||||
|
||||
Model files (not Python objects) from ONNX, PaddlePaddle, TensorFlow and TensorFlow Lite (check :doc:`TensorFlow Frontend Capabilities and Limitations <openvino_docs_MO_DG_TensorFlow_Frontend>`) do not require a separate step for model conversion, that is ``mo.convert_model``. OpenVINO provides C++ and Python APIs for importing the models to OpenVINO Runtime directly by just calling the ``read_model`` method.
|
||||
Additional Resources
|
||||
####################
|
||||
|
||||
The results of both ``mo`` and ``mo.convert_model()`` conversion methods described above are the same. You can choose one of them, depending on what is most convenient for you. Keep in mind that there should not be any differences in the results of model conversion if the same set of parameters is used.
|
||||
The following articles describe in details how to obtain and prepare your model depending on the source model type:
|
||||
|
||||
This section describes how to obtain and prepare your model for work with OpenVINO to get the best inference results:
|
||||
* :doc:`Convert different model formats to the ov.Model format <Supported_Model_Formats>`.
|
||||
* :doc:`Review all available conversion parameters <openvino_docs_OV_Converter_UG_Conversion_Options>`.
|
||||
|
||||
To achieve the best model inference performance and more compact OpenVINO IR representation follow:
|
||||
|
||||
* :doc:`Post-training optimization <ptq_introduction>`
|
||||
* :doc:`Model inference in OpenVINO Runtime <openvino_docs_OV_UG_OV_Runtime_User_Guide>`
|
||||
|
||||
If you are using legacy conversion API (``mo`` or ``openvino.tools.mo.convert_model``), please refer to the following materials:
|
||||
|
||||
* :doc:`Transition from legacy mo and ov.tools.mo.convert_model <openvino_docs_OV_Converter_UG_prepare_model_convert_model_MO_OVC_transition>`
|
||||
* :doc:`Legacy Model Conversion API <openvino_docs_MO_DG_Deep_Learning_Model_Optimizer_DevGuide>`
|
||||
|
||||
|
||||
|
||||
|
||||
.. api/ie_python_api/_autosummary/openvino.Model.html is a broken link for some reason - need to investigate python api article generation
|
||||
|
||||
* :doc:`See the supported formats and how to use them in your project <Supported_Model_Formats>`.
|
||||
* :doc:`Convert different model formats to the ov.Model format <openvino_docs_MO_DG_Deep_Learning_Model_Optimizer_DevGuide>`.
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: OpenVINO™ is an ecosystem of utilities that have advanced capabilities, which help develop deep learning solutions.
|
||||
:description: OpenVINO™ ecosystem offers various resources for developing deep learning solutions.
|
||||
|
||||
|
||||
.. toctree::
|
||||
@@ -13,7 +13,6 @@
|
||||
ote_documentation
|
||||
datumaro_documentation
|
||||
ovsa_get_started
|
||||
openvino_docs_tuning_utilities
|
||||
|
||||
|
||||
OpenVINO™ is not just one tool. It is an expansive ecosystem of utilities, providing a comprehensive workflow for deep learning solution development. Learn more about each of them to reach the full potential of OpenVINO™ Toolkit.
|
||||
@@ -28,6 +27,7 @@ More resources:
|
||||
* :doc:`Documentation <tmo_introduction>`
|
||||
* `GitHub <https://github.com/openvinotoolkit/nncf>`__
|
||||
* `PyPI <https://pypi.org/project/nncf/>`__
|
||||
* `Conda Forge <https://anaconda.org/conda-forge/nncf/>`__
|
||||
|
||||
|
||||
**OpenVINO™ Training Extensions**
|
||||
@@ -60,39 +60,6 @@ More resources:
|
||||
* `GitHub <https://github.com/openvinotoolkit/datumaro>`__
|
||||
* `Documentation <https://openvinotoolkit.github.io/datumaro/stable/docs/get-started/introduction.html>`__
|
||||
|
||||
**Compile Tool**
|
||||
|
||||
|
||||
Compile tool is now deprecated. If you need to compile a model for inference on a specific device, use the following script:
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Python
|
||||
:sync: py
|
||||
|
||||
.. doxygensnippet:: docs/snippets/export_compiled_model.py
|
||||
:language: python
|
||||
:fragment: [export_compiled_model]
|
||||
|
||||
.. tab-item:: C++
|
||||
:sync: cpp
|
||||
|
||||
.. doxygensnippet:: docs/snippets/export_compiled_model.cpp
|
||||
:language: cpp
|
||||
:fragment: [export_compiled_model]
|
||||
|
||||
|
||||
To learn which device supports the import / export functionality, see the :doc:`feature support matrix <openvino_docs_OV_UG_Working_with_devices>`.
|
||||
|
||||
For more details on preprocessing steps, refer to the :doc:`Optimize Preprocessing <openvino_docs_OV_UG_Preprocessing_Overview>`. To compile the model with advanced preprocessing capabilities, refer to the :doc:`Use Case - Integrate and Save Preprocessing Steps Into OpenVINO IR <openvino_docs_OV_UG_Preprocess_Usecase_save>`, which shows how to have all the preprocessing in the compiled blob.
|
||||
|
||||
**DL Workbench**
|
||||
|
||||
A web-based tool for deploying deep learning models. Built on the core of OpenVINO and equipped with a graphics user interface, DL Workbench is a great way to explore the possibilities of the OpenVINO workflow, import, analyze, optimize, and build your pre-trained models. You can do all that by visiting `Intel® Developer Cloud <https://software.intel.com/content/www/us/en/develop/tools/devcloud.html>`__ and launching DL Workbench online.
|
||||
|
||||
**OpenVINO™ integration with TensorFlow (OVTF)**
|
||||
|
||||
OpenVINO™ Integration with TensorFlow will no longer be supported as of OpenVINO release 2023.0. As part of the 2023.0 release, OpenVINO will feature a significantly enhanced TensorFlow user experience within native OpenVINO without needing offline model conversions. :doc:`Learn more <openvino_docs_MO_DG_TensorFlow_Frontend>`.
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
141
docs/Documentation/openvino_legacy_features.md
Normal file
141
docs/Documentation/openvino_legacy_features.md
Normal file
@@ -0,0 +1,141 @@
|
||||
# Legacy Features and Components {#openvino_legacy_features}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:hidden:
|
||||
|
||||
OpenVINO Development Tools package <openvino_docs_install_guides_install_dev_tools>
|
||||
Model Optimizer / Conversion API <openvino_docs_OV_Converter_UG_prepare_model_convert_model_MO_OVC_transition>
|
||||
OpenVINO API 2.0 transition <openvino_2_0_transition_guide>
|
||||
Open Model ZOO <model_zoo>
|
||||
Apache MXNet, Caffe, and Kaldi <mxnet_caffe_kaldi>
|
||||
Post-training Optimization Tool <pot_introduction>
|
||||
|
||||
|
||||
|
||||
Since OpenVINO has grown very rapidly in recent years, some of its features
|
||||
and components have been replaced by other solutions. Some of them are still
|
||||
supported to assure OpenVINO users are given enough time to adjust their projects,
|
||||
before the features are fully discontinued.
|
||||
|
||||
This section will give you an overview of these major changes and tell you how
|
||||
you can proceed to get the best experience and results with the current OpenVINO
|
||||
offering.
|
||||
|
||||
|
||||
| **OpenVINO Development Tools Package**
|
||||
| *New solution:* OpenVINO Runtime includes all supported components
|
||||
| *Old solution:* discontinuation planned for OpenVINO 2025.0
|
||||
|
|
||||
| OpenVINO Development Tools used to be the OpenVINO package with tools for
|
||||
advanced operations on models, such as Model conversion API, Benchmark Tool,
|
||||
Accuracy Checker, Annotation Converter, Post-Training Optimization Tool,
|
||||
and Open Model Zoo tools. Most of these tools have been either removed,
|
||||
replaced by other solutions, or moved to the OpenVINO Runtime package.
|
||||
| :doc:`See how to install Development Tools <openvino_docs_install_guides_install_dev_tools>`
|
||||
|
||||
|
||||
| **Model Optimizer / Conversion API**
|
||||
| *New solution:* Direct model support and OpenVINO Converter (OVC)
|
||||
| *Old solution:* Legacy Conversion API discontinuation planned for OpenVINO 2025.0
|
||||
|
|
||||
| The role of Model Optimizer and later the Conversion API was largely reduced
|
||||
when all major model frameworks became supported directly. For converting model
|
||||
files explicitly, it has been replaced with a more light-weight and efficient
|
||||
solution, the OpenVINO Converter (launched with OpenVINO 2023.1).
|
||||
|
||||
| :doc:`See how to use OVC <openvino_docs_model_processing_introduction>`
|
||||
| :doc:`See how to transition from the legacy solution <openvino_docs_OV_Converter_UG_prepare_model_convert_model_MO_OVC_transition>`
|
||||
|
||||
|
||||
| **Open Model ZOO**
|
||||
| *New solution:* users are encouraged to use public model repositories
|
||||
| *Old solution:* discontinuation planned for OpenVINO 2024.0
|
||||
|
|
||||
| Open Model ZOO provided a collection of models prepared for use with OpenVINO,
|
||||
and a small set of tools enabling a level of automation for the process.
|
||||
Since the tools have been mostly replaced by other solutions and several
|
||||
other model repositories have recently grown in size and popularity,
|
||||
Open Model ZOO will no longer be maintained. You may still use its resources
|
||||
until they are fully removed.
|
||||
| :doc:`See the Open Model ZOO documentation <model_zoo>`
|
||||
| `Check the OMZ GitHub project <https://github.com/openvinotoolkit/open_model_zoo>`__
|
||||
|
||||
|
||||
| **Apache MXNet, Caffe, and Kaldi model formats**
|
||||
| *New solution:* conversion to ONNX via external tools
|
||||
| *Old solution:* model support will be discontinued with OpenVINO 2024.0
|
||||
|
|
||||
| Since these three model formats proved to be far less popular among OpenVINO users
|
||||
than the remaining ones, their support has been discontinued. Converting them to the
|
||||
ONNX format is a possible way of retaining them in the OpenVINO-based pipeline.
|
||||
| :doc:`See the previous conversion instructions <mxnet_caffe_kaldi>`
|
||||
| :doc:`See the currently supported frameworks <Supported_Model_Formats>`
|
||||
|
||||
|
||||
| **Post-training Optimization Tool (POT)**
|
||||
| *New solution:* NNCF extended in OpenVINO 2023.0
|
||||
| *Old solution:* POT discontinuation planned for 2024
|
||||
|
|
||||
| Neural Network Compression Framework (NNCF) now offers the same functionality as POT,
|
||||
apart from its original feature set. It is currently the default tool for performing
|
||||
both, post-training and quantization optimizations, while POT is considered deprecated.
|
||||
| :doc:`See the deprecated POT documentation <pot_introduction>`
|
||||
| :doc:`See how to use NNCF for model optimization <openvino_docs_model_optimization_guide>`
|
||||
| `Check the NNCF GitHub project, including documentation <https://github.com/openvinotoolkit/nncf>`__
|
||||
|
||||
| **Old Inference API 1.0**
|
||||
| *New solution:* API 2.0 launched in OpenVINO 2022.1
|
||||
| *Old solution:* discontinuation planned for OpenVINO 2024.0
|
||||
|
|
||||
| API 1.0 (Inference Engine and nGraph) is now deprecated. It can still be
|
||||
used but is not recommended. Its discontinuation is planned for 2024.
|
||||
| :doc:`See how to transition to API 2.0 <openvino_2_0_transition_guide>`
|
||||
|
||||
| **Compile tool**
|
||||
| *New solution:* the tool is no longer needed
|
||||
| *Old solution:* deprecated in OpenVINO 2023.0
|
||||
|
|
||||
| Compile tool is now deprecated. If you need to compile a model for inference on
|
||||
a specific device, use the following script:
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Python
|
||||
:sync: py
|
||||
|
||||
.. doxygensnippet:: docs/snippets/export_compiled_model.py
|
||||
:language: python
|
||||
:fragment: [export_compiled_model]
|
||||
|
||||
.. tab-item:: C++
|
||||
:sync: cpp
|
||||
|
||||
.. doxygensnippet:: docs/snippets/export_compiled_model.cpp
|
||||
:language: cpp
|
||||
:fragment: [export_compiled_model]
|
||||
|
||||
| :doc:`see which devices support import / export <openvino_docs_OV_UG_Working_with_devices>`
|
||||
| :doc:`Learn more on preprocessing steps <openvino_docs_OV_UG_Preprocessing_Overview>`
|
||||
| :doc:`See how to integrate and save preprocessing steps into OpenVINO IR <openvino_docs_OV_UG_Preprocess_Usecase_save>`
|
||||
|
||||
| **DL Workbench**
|
||||
| *New solution:* DevCloud version
|
||||
| *Old solution:* local distribution discontinued in OpenVINO 2022.3
|
||||
|
|
||||
| The stand-alone version of DL Workbench, a GUI tool for previewing and benchmarking
|
||||
deep learning models, has been discontinued. You can use its cloud version:
|
||||
| `Intel® Developer Cloud for the Edge <https://www.intel.com/content/www/us/en/developer/tools/devcloud/edge/overview.html>`__.
|
||||
|
||||
| **OpenVINO™ integration with TensorFlow (OVTF)**
|
||||
| *New solution:* Direct model support and OpenVINO Converter (OVC)
|
||||
| *Old solution:* discontinued in OpenVINO 2023.0
|
||||
|
|
||||
| OpenVINO™ Integration with TensorFlow is longer supported, as OpenVINO now features a
|
||||
native TensorFlow support, significantly enhancing user experience with no need for
|
||||
explicit model conversion.
|
||||
| :doc:`Learn more <openvino_docs_MO_DG_TensorFlow_Frontend>`
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -0,0 +1,31 @@
|
||||
# MX Net, Caffe, and Kaldi model formats {#mxnet_caffe_kaldi}
|
||||
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:hidden:
|
||||
|
||||
openvino_docs_MO_DG_prepare_model_convert_model_Convert_Model_From_MxNet
|
||||
openvino_docs_MO_DG_prepare_model_convert_model_Convert_Model_From_Caffe
|
||||
openvino_docs_MO_DG_prepare_model_convert_model_Convert_Model_From_Kaldi
|
||||
openvino_docs_MO_DG_prepare_model_convert_model_mxnet_specific_Convert_GluonCV_Models
|
||||
openvino_docs_MO_DG_prepare_model_convert_model_mxnet_specific_Convert_Style_Transfer_From_MXNet
|
||||
openvino_docs_MO_DG_prepare_model_convert_model_kaldi_specific_Aspire_Tdnn_Model
|
||||
|
||||
|
||||
The following articles present the deprecated conversion method for MX Net, Caffe,
|
||||
and Kaldi model formats.
|
||||
|
||||
:doc:`Apache MX Net conversion <openvino_docs_MO_DG_prepare_model_convert_model_Convert_Model_From_MxNet>`
|
||||
:doc:`Caffe conversion <openvino_docs_MO_DG_prepare_model_convert_model_Convert_Model_From_Caffe>`
|
||||
:doc:`Kaldi conversion <openvino_docs_MO_DG_prepare_model_convert_model_Convert_Model_From_Kaldi>`
|
||||
|
||||
Here are three examples of conversion for particular models.
|
||||
:doc:`MXNet GluonCV conversion <openvino_docs_MO_DG_prepare_model_convert_model_mxnet_specific_Convert_GluonCV_Models>`
|
||||
:doc:`MXNet Style Transfer Model conversion <openvino_docs_MO_DG_prepare_model_convert_model_mxnet_specific_Convert_Style_Transfer_From_MXNet>`
|
||||
:doc:`Kaldi ASpIRE Chain TDNN Model conversion <openvino_docs_MO_DG_prepare_model_convert_model_kaldi_specific_Aspire_Tdnn_Model>`
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -17,6 +17,7 @@
|
||||
Running Inference <openvino_docs_OV_UG_OV_Runtime_User_Guide>
|
||||
Deployment on a Local System <openvino_deployment_guide>
|
||||
Deployment on a Model Server <ovms_what_is_openvino_model_server>
|
||||
pytorch_2_0_torch_compile
|
||||
|
||||
|
||||
| :doc:`Model Preparation <openvino_docs_model_processing_introduction>`
|
||||
|
||||
157
docs/Documentation/torch_compile.md
Normal file
157
docs/Documentation/torch_compile.md
Normal file
@@ -0,0 +1,157 @@
|
||||
# PyTorch Deployment via "torch.compile" {#pytorch_2_0_torch_compile}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
|
||||
The ``torch.compile`` feature enables you to use OpenVINO for PyTorch-native applications.
|
||||
It speeds up PyTorch code by JIT-compiling it into optimized kernels.
|
||||
By default, Torch code runs in eager-mode, but with the use of ``torch.compile`` it goes through the following steps:
|
||||
|
||||
1. **Graph acquisition** - the model is rewritten as blocks of subgraphs that are either:
|
||||
|
||||
* compiled by TorchDynamo and "flattened",
|
||||
* falling back to the eager-mode, due to unsupported Python constructs (like control-flow code).
|
||||
|
||||
2. **Graph lowering** - all PyTorch operations are decomposed into their constituent kernels specific to the chosen backend.
|
||||
3. **Graph compilation** - the kernels call their corresponding low-level device-specific operations.
|
||||
|
||||
|
||||
|
||||
How to Use
|
||||
#################
|
||||
|
||||
To use ``torch.compile``, you need to add an import statement and define one of the two available backends:
|
||||
|
||||
| ``openvino``
|
||||
| With this backend, Torch FX subgraphs are directly converted to OpenVINO representation without any additional PyTorch based tracing/scripting.
|
||||
|
||||
| ``openvino_ts``
|
||||
| With this backend, Torch FX subgraphs are first traced/scripted with PyTorch Torchscript, and then converted to OpenVINO representation.
|
||||
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: openvino
|
||||
:sync: backend-openvino
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
import openvino.torch
|
||||
...
|
||||
model = torch.compile(model, backend='openvino')
|
||||
|
||||
Execution diagram:
|
||||
|
||||
.. image:: _static/images/torch_compile_backend_openvino.svg
|
||||
:width: 992px
|
||||
:height: 720px
|
||||
:scale: 60%
|
||||
:align: center
|
||||
|
||||
.. tab-item:: openvino_ts
|
||||
:sync: backend-openvino-ts
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
import openvino.torch
|
||||
...
|
||||
model = torch.compile(model, backend='openvino_ts')
|
||||
|
||||
Execution diagram:
|
||||
|
||||
.. image:: _static/images/torch_compile_backend_openvino_ts.svg
|
||||
:width: 1088px
|
||||
:height: 720px
|
||||
:scale: 60%
|
||||
:align: center
|
||||
|
||||
|
||||
Environment Variables
|
||||
+++++++++++++++++++++++++++
|
||||
|
||||
* **OPENVINO_TORCH_BACKEND_DEVICE**: enables selecting a specific hardware device to run the application.
|
||||
By default, the OpenVINO backend for ``torch.compile`` runs PyTorch applications using the CPU. Setting
|
||||
this variable to GPU.0, for example, will make the application use the integrated graphics processor instead.
|
||||
* **OPENVINO_TORCH_MODEL_CACHING**: enables saving the optimized model files to a hard drive, after the first application run.
|
||||
This makes them available for the following application executions, reducing the first-inference latency.
|
||||
By default, this variable is set to ``False``. Setting it to ``True`` enables caching.
|
||||
* **OPENVINO_TORCH_CACHE_DIR**: enables defining a custom directory for the model files (if model caching set to ``True``).
|
||||
By default, the OpenVINO IR is saved in the ``cache`` sub-directory, created in the application's root directory.
|
||||
|
||||
Windows support
|
||||
++++++++++++++++++++++++++
|
||||
|
||||
Currently, PyTorch does not support ``torch.compile`` feature on Windows officially. However, it can be accessed by running
|
||||
the below instructions:
|
||||
|
||||
1. Install the PyTorch nightly wheel file - `2.1.0.dev20230713 <https://download.pytorch.org/whl/nightly/cpu/torch-2.1.0.dev20230713%2Bcpu-cp38-cp38-win_amd64.whl>`__ ,
|
||||
2. Update the file at ``<python_env_root>/Lib/site-packages/torch/_dynamo/eval_frames.py``
|
||||
3. Find the function called ``check_if_dynamo_supported()``:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
def check_if_dynamo_supported():
|
||||
if sys.platform == "win32":
|
||||
raise RuntimeError("Windows not yet supported for torch.compile")
|
||||
if sys.version_info >= (3, 11):
|
||||
raise RuntimeError("Python 3.11+ not yet supported for torch.compile")
|
||||
|
||||
4. Put in comments the first two lines in this function, so it looks like this:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
def check_if_dynamo_supported():
|
||||
#if sys.platform == "win32":
|
||||
# raise RuntimeError("Windows not yet supported for torch.compile")
|
||||
if sys.version_info >= (3, 11):
|
||||
`raise RuntimeError("Python 3.11+ not yet supported for torch.compile")
|
||||
|
||||
|
||||
Support for Automatic1111 Stable Diffusion WebUI
|
||||
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
Automatic1111 Stable Diffusion WebUI is an open-source repository that hosts a browser-based interface for the Stable Diffusion
|
||||
based image generation. It allows users to create realistic and creative images from text prompts.
|
||||
Stable Diffusion WebUI is supported on Intel CPUs, Intel integrated GPUs, and Intel discrete GPUs by leveraging OpenVINO
|
||||
``torch.compile`` capability. Detailed instructions are available in
|
||||
`Stable Diffusion WebUI repository. <https://github.com/openvinotoolkit/stable-diffusion-webui/wiki/Installation-on-Intel-Silicon>`__
|
||||
|
||||
|
||||
Architecture
|
||||
#################
|
||||
|
||||
The ``torch.compile`` feature is part of PyTorch 2.0, and is based on:
|
||||
|
||||
* **TorchDynamo** - a Python-level JIT that hooks into the frame evaluation API in CPython,
|
||||
(PEP 523) to dynamically modify Python bytecode right before it is executed (PyTorch operators
|
||||
that cannot be extracted to FX graph are executed in the native Python environment).
|
||||
It maintains the eager-mode capabilities using
|
||||
`Guards <https://pytorch.org/docs/stable/dynamo/guards-overview.html>`__ to ensure the
|
||||
generated graphs are valid.
|
||||
|
||||
* **AOTAutograd** - generates the backward graph corresponding to the forward graph captured by TorchDynamo.
|
||||
* **PrimTorch** - decomposes complicated PyTorch operations into simpler and more elementary ops.
|
||||
* **TorchInductor** - a deep learning compiler that generates fast code for multiple accelerators and backends.
|
||||
|
||||
|
||||
|
||||
|
||||
When the PyTorch module is wrapped with ``torch.compile``, TorchDynamo traces the module and
|
||||
rewrites Python bytecode to extract sequences of PyTorch operations into an FX Graph,
|
||||
which can be optimized by the OpenVINO backend. The Torch FX graphs are first converted to
|
||||
inlined FX graphs and the graph partitioning module traverses inlined FX graph to identify
|
||||
operators supported by OpenVINO.
|
||||
|
||||
All the supported operators are clustered into OpenVINO submodules, converted to the OpenVINO
|
||||
graph using OpenVINO's PyTorch decoder, and executed in an optimized manner using OpenVINO runtime.
|
||||
All unsupported operators fall back to the native PyTorch runtime on CPU. If the subgraph
|
||||
fails during OpenVINO conversion, the subgraph falls back to PyTorch's default inductor backend.
|
||||
|
||||
|
||||
|
||||
Additional Resources
|
||||
############################
|
||||
|
||||
* `PyTorch 2.0 documentation <https://pytorch.org/docs/stable/index.html>`_
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -22,11 +22,6 @@
|
||||
openvino_docs_transformations
|
||||
OpenVINO Plugin Developer Guide <openvino_docs_ie_plugin_dg_overview>
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:hidden:
|
||||
|
||||
openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer
|
||||
|
||||
The Intel® Distribution of OpenVINO™ toolkit supports neural-network models trained with various frameworks, including
|
||||
TensorFlow, PyTorch, ONNX, TensorFlow Lite, and PaddlePaddle (OpenVINO support for Apache MXNet, Caffe, and Kaldi is currently
|
||||
@@ -62,7 +57,7 @@ Mapping from Framework Operation
|
||||
|
||||
Mapping of custom operation is implemented differently, depending on model format used for import. You may choose one of the following:
|
||||
|
||||
1. If a model is represented in the ONNX (including models exported from Pytorch in ONNX), TensorFlow Lite, PaddlePaddle or TensorFlow formats, then one of the classes from :doc:`Frontend Extension API <openvino_docs_Extensibility_UG_Frontend_Extensions>` should be used. It consists of several classes available in C++ which can be used with the ``--extensions`` option in Model Optimizer or when a model is imported directly to OpenVINO runtime using the ``read_model`` method. Python API is also available for runtime model import.
|
||||
1. If a model is represented in the ONNX (including models exported from PyTorch in ONNX), TensorFlow Lite, PaddlePaddle or TensorFlow formats, then one of the classes from :doc:`Frontend Extension API <openvino_docs_Extensibility_UG_Frontend_Extensions>` should be used. It consists of several classes available in C++ which can be used with the ``--extensions`` option in Model Optimizer or when a model is imported directly to OpenVINO runtime using the ``read_model`` method. Python API is also available for runtime model import.
|
||||
|
||||
2. If a model is represented in the Caffe, Kaldi or MXNet formats (as legacy frontends), then :doc:`[Legacy] Model Optimizer Extensions <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer>` should be used. This approach is available for model conversion in Model Optimizer only.
|
||||
|
||||
|
||||
@@ -301,11 +301,19 @@ This mapping also specifies the input name "X" and output name "Out".
|
||||
|
||||
The last step is to register this custom operation by following:
|
||||
|
||||
|
||||
.. doxygensnippet:: docs/snippets/ov_extensions.cpp
|
||||
:language: cpp
|
||||
:fragment: [frontend_extension_framework_map_macro_add_extension]
|
||||
|
||||
.. important::
|
||||
|
||||
To map an operation on a specific framework, you have to link to a respective
|
||||
frontend (``openvino::frontend::onnx``, ``openvino::frontend::tensorflow``, ``openvino::frontend::paddle``) in the ``CMakeLists.txt`` file:
|
||||
|
||||
.. code-block:: sh
|
||||
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE openvino::frontend::onnx)
|
||||
|
||||
|
||||
Mapping to Multiple Operations with ConversionExtension
|
||||
#######################################################
|
||||
|
||||
@@ -94,7 +94,7 @@ Detailed Guides
|
||||
API References
|
||||
##############
|
||||
|
||||
* `OpenVINO Plugin API <https://docs.openvino.ai/2023.0/groupov_dev_api.html>`__
|
||||
* `OpenVINO Transformation API <https://docs.openvino.ai/2023.0/groupie_transformation_api.html>`__
|
||||
* `OpenVINO Plugin API <https://docs.openvino.ai/2023.1/groupov_dev_api.html>`__
|
||||
* `OpenVINO Transformation API <https://docs.openvino.ai/2023.1/groupie_transformation_api.html>`__
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
The guides below provides extra API references needed for OpenVINO plugin development:
|
||||
|
||||
* `OpenVINO Plugin API <https://docs.openvino.ai/2023.0/groupov_dev_api.html>`__
|
||||
* `OpenVINO Transformation API <https://docs.openvino.ai/2023.0/groupie_transformation_api.html>`__
|
||||
* `OpenVINO Plugin API <https://docs.openvino.ai/2023.1/groupov_dev_api.html>`__
|
||||
* `OpenVINO Transformation API <https://docs.openvino.ai/2023.1/groupie_transformation_api.html>`__
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
<tab type="user" title="Step 3. Main transformations" url="@ref openvino_docs_OV_UG_lpt_step3_main">
|
||||
<tab type="user" title="AddTransformation" url="@ref openvino_docs_OV_UG_lpt_AddTransformation"/>
|
||||
<tab type="user" title="AvgPoolTransformation" url="@ref openvino_docs_OV_UG_lpt_AvgPoolTransformation"/>
|
||||
<tab type="user" title="BatchToSpaceTransformation" url="@ref openvino_docs_OV_UG_lpt_BatchToSpaceTransformation"/>
|
||||
<tab type="user" title="ClampTransformation" url="@ref openvino_docs_OV_UG_lpt_ClampTransformation"/>
|
||||
<tab type="user" title="ConcatTransformation" url="@ref openvino_docs_OV_UG_lpt_ConcatTransformation"/>
|
||||
<tab type="user" title="ConvolutionTransformation" url="@ref openvino_docs_OV_UG_lpt_ConvolutionTransformation"/>
|
||||
@@ -62,6 +63,7 @@
|
||||
<tab type="user" title="ReshapeTransformation" url="@ref openvino_docs_OV_UG_lpt_ReshapeTransformation"/>
|
||||
<tab type="user" title="SqueezeTransformation" url="@ref openvino_docs_OV_UG_lpt_SqueezeTransformation"/>
|
||||
<tab type="user" title="ShuffleChannelsTransformation" url="@ref openvino_docs_OV_UG_lpt_ShuffleChannelsTransformation"/>
|
||||
<tab type="user" title="SpaceToBatchTransformation" url="@ref openvino_docs_OV_UG_lpt_SpaceToBatchTransformation"/>
|
||||
<tab type="user" title="SplitTransformation" url="@ref openvino_docs_OV_UG_lpt_SplitTransformation"/>
|
||||
<tab type="user" title="StridedSliceTransformation" url="@ref openvino_docs_OV_UG_lpt_StridedSliceTransformation"/>
|
||||
<tab type="user" title="TransposeTransformation" url="@ref openvino_docs_OV_UG_lpt_TransposeTransformation"/>
|
||||
|
||||
@@ -188,6 +188,7 @@ Transformations:
|
||||
* :doc:`AddTransformation <openvino_docs_OV_UG_lpt_AddTransformation>`
|
||||
* :doc:`AvgPoolTransformation <openvino_docs_OV_UG_lpt_AvgPoolTransformation>`
|
||||
* :doc:`ClampTransformation <openvino_docs_OV_UG_lpt_AvgPoolTransformation>`
|
||||
* :doc:`BatchToSpaceTransformation <openvino_docs_OV_UG_lpt_BatchToSpaceTransformation>`
|
||||
* :doc:`ConcatTransformation <openvino_docs_OV_UG_lpt_ConcatTransformation>`
|
||||
* :doc:`ConvolutionTransformation <openvino_docs_OV_UG_lpt_ConvolutionTransformation>`
|
||||
* :doc:`ConvolutionBackpropDataTransformation <openvino_docs_OV_UG_lpt_ConvolutionBackpropDataTransformation>`
|
||||
@@ -211,6 +212,7 @@ Transformations:
|
||||
* :doc:`ReshapeTransformation <openvino_docs_OV_UG_lpt_ReshapeTransformation>`
|
||||
* :doc:`SqueezeTransformation <openvino_docs_OV_UG_lpt_SqueezeTransformation>`
|
||||
* :doc:`ShuffleChannelsTransformation <openvino_docs_OV_UG_lpt_ShuffleChannelsTransformation>`
|
||||
* :doc:`SpaceToBatchTransformation <openvino_docs_OV_UG_lpt_SpaceToBatchTransformation>`
|
||||
* :doc:`SplitTransformation <openvino_docs_OV_UG_lpt_SplitTransformation>`
|
||||
* :doc:`StridedSliceTransformation <openvino_docs_OV_UG_lpt_StridedSliceTransformation>`
|
||||
* :doc:`TransposeTransformation <openvino_docs_OV_UG_lpt_TransposeTransformation>`
|
||||
|
||||
@@ -105,7 +105,7 @@ Model display features (here and below):
|
||||
|
||||
The transformation is required and includes two tasks:
|
||||
|
||||
1. Mark operation input ports (create ``Precision`` attribute instance) by provided restrictions: input port index and required precisions. Restrictions are provided as input argument in ``:ref:`ngraph::pass::low_precision::LowPrecision <doxid-classngraph_1_1pass_1_1low__precision_1_1_low_precision>``` constructor.
|
||||
1. Mark operation input ports (create ``Precision`` attribute instance) by provided restrictions: input port index and required precisions. Restrictions are provided as input argument in ``:ref:`ov::pass::low_precision::LowPrecision <doxid-classov_1_1pass_1_1low__precision_1_1_low_precision>``` constructor.
|
||||
2. Mark precision preserved operations.
|
||||
|
||||
No attributes are required before the transformation. Changes in the example model after ``MarkupPrecisions`` transformation:
|
||||
|
||||
@@ -10,8 +10,17 @@
|
||||
|
||||
Main transformations are the majority of low precision transformations. Transformations operate with dequantization operations. Main transformations include:
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:hidden:
|
||||
|
||||
BatchToSpaceTransformation <openvino_docs_OV_UG_lpt_BatchToSpaceTransformation>
|
||||
SpaceToBatchTransformation <openvino_docs_OV_UG_lpt_SpaceToBatchTransformation>
|
||||
|
||||
|
||||
* :doc:`AddTransformation <openvino_docs_OV_UG_lpt_AddTransformation>`
|
||||
* :doc:`AvgPoolTransformation <openvino_docs_OV_UG_lpt_AvgPoolTransformation>`
|
||||
* :doc:`BatchToSpaceTransformation <openvino_docs_OV_UG_lpt_BatchToSpaceTransformation>`
|
||||
* :doc:`ClampTransformation <openvino_docs_OV_UG_lpt_AvgPoolTransformation>`
|
||||
* :doc:`ConcatTransformation <openvino_docs_OV_UG_lpt_ConcatTransformation>`
|
||||
* :doc:`ConvolutionTransformation <openvino_docs_OV_UG_lpt_ConvolutionTransformation>`
|
||||
@@ -34,6 +43,7 @@ Main transformations are the majority of low precision transformations. Transfor
|
||||
* :doc:`ReduceSumTransformation <openvino_docs_OV_UG_lpt_ReduceSumTransformation>`
|
||||
* :doc:`ReluTransformation <openvino_docs_OV_UG_lpt_ReluTransformation>`
|
||||
* :doc:`ReshapeTransformation <openvino_docs_OV_UG_lpt_ReshapeTransformation>`
|
||||
* :doc:`SpaceToBatchTransformation <openvino_docs_OV_UG_lpt_SpaceToBatchTransformation>`
|
||||
* :doc:`SqueezeTransformation <openvino_docs_OV_UG_lpt_SqueezeTransformation>`
|
||||
* :doc:`ShuffleChannelsTransformation <openvino_docs_OV_UG_lpt_ShuffleChannelsTransformation>`
|
||||
* :doc:`SplitTransformation <openvino_docs_OV_UG_lpt_SplitTransformation>`
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# ConvertSubtractConstant transformation {#openvino_docs_OV_UG_lpt_ConvertSubtractConstant}
|
||||
|
||||
ngraph::pass::low_precision::ConvertSubtractConstant class represents the `ConvertSubtractConstant` transformation.
|
||||
ov::pass::low_precision::ConvertSubtractConstant class represents the `ConvertSubtractConstant` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# PullReshapeThroughDequantization transformation {#openvino_docs_OV_UG_lpt_PullReshapeThroughDequantization}
|
||||
|
||||
ngraph::pass::low_precision::PullReshapeThroughDequantization class represents the `PullReshapeThroughDequantization` transformation.
|
||||
ov::pass::low_precision::PullReshapeThroughDequantization class represents the `PullReshapeThroughDequantization` transformation.
|
||||
@@ -1,3 +1,3 @@
|
||||
# PullTransposeThroughDequantization transformation {#openvino_docs_OV_UG_lpt_PullTransposeThroughDequantization}
|
||||
|
||||
ngraph::pass::low_precision::PullTransposeThroughDequantization class represents the `PullTransposeThroughDequantization` transformation.
|
||||
ov::pass::low_precision::PullTransposeThroughDequantization class represents the `PullTransposeThroughDequantization` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# AlignQuantizationIntervals transformation {#openvino_docs_OV_UG_lpt_AlignQuantizationIntervals}
|
||||
|
||||
ngraph::pass::low_precision::AlignQuantizationIntervals class represents the `AlignQuantizationIntervals` transformation.
|
||||
ov::pass::low_precision::AlignQuantizationIntervals class represents the `AlignQuantizationIntervals` transformation.
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user