Compare commits
147 Commits
2023.2.0.d
...
releases/2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fef09f046f | ||
|
|
e0e6e62eda | ||
|
|
9d69c80d8b | ||
|
|
2d6a6e2780 | ||
|
|
1b58c54a89 | ||
|
|
4d16873c2e | ||
|
|
42c63315a2 | ||
|
|
807b26236b | ||
|
|
70f190fe4a | ||
|
|
cd557d1ff3 | ||
|
|
49fae17205 | ||
|
|
9aa4e5f60c | ||
|
|
6bc58a54a4 | ||
|
|
0d95ebc552 | ||
|
|
eaef374483 | ||
|
|
0299c0aa92 | ||
|
|
f1736a6d7f | ||
|
|
2f085f5a23 | ||
|
|
3e552ad2b5 | ||
|
|
34759054f0 | ||
|
|
ed7d153bc3 | ||
|
|
10a44ed5a1 | ||
|
|
1141ea54c9 | ||
|
|
bb61694403 | ||
|
|
4c868cc909 | ||
|
|
acbbdb3f2f | ||
|
|
14fdb261c9 | ||
|
|
128ee0b04f | ||
|
|
6e4f73d0e4 | ||
|
|
a86958a867 | ||
|
|
de5932460c | ||
|
|
fd4b0928e5 | ||
|
|
83d9131aba | ||
|
|
3aa125cb6c | ||
|
|
59338fa758 | ||
|
|
b2217fdafd | ||
|
|
25e33af382 | ||
|
|
11b9ccb263 | ||
|
|
f12bd35e6f | ||
|
|
cb65668b8e | ||
|
|
016340fcff | ||
|
|
2d97a5d59c | ||
|
|
ce69d9709a | ||
|
|
2933ad5a13 | ||
|
|
9fa65836f0 | ||
|
|
fa14ae0a56 | ||
|
|
5eaeb08c63 | ||
|
|
3cafb2e1fa | ||
|
|
959b4438a1 | ||
|
|
a805c1e028 | ||
|
|
94640fe583 | ||
|
|
cd9c31cb07 | ||
|
|
7f5f63db23 | ||
|
|
ea9fba4d49 | ||
|
|
c99375e10d | ||
|
|
c7aa3ae808 | ||
|
|
51fd9a176d | ||
|
|
87dab9f973 | ||
|
|
ecc3abb6cd | ||
|
|
df0e500562 | ||
|
|
38de95d011 | ||
|
|
862a3392cf | ||
|
|
79aefc49af | ||
|
|
e0391a5855 | ||
|
|
93168eebaa | ||
|
|
7a907dbe97 | ||
|
|
0380d76fb7 | ||
|
|
7a9a9c4cc2 | ||
|
|
994ed2fe93 | ||
|
|
55ff188007 | ||
|
|
86f9db3aad | ||
|
|
95d863b06d | ||
|
|
6d9ead34fc | ||
|
|
1448150a52 | ||
|
|
91fd9fb416 | ||
|
|
08b092e542 | ||
|
|
99e872ddd7 | ||
|
|
d6bd3e36f1 | ||
|
|
249ea638d1 | ||
|
|
54e50754d8 | ||
|
|
8a10efef70 | ||
|
|
58ef070e02 | ||
|
|
5eb17273d0 | ||
|
|
47b736f63e | ||
|
|
e51cac60a2 | ||
|
|
d396dc06b8 | ||
|
|
192a01db8c | ||
|
|
d6d27b5d0d | ||
|
|
f4183c4be5 | ||
|
|
f1a956e539 | ||
|
|
13e3f9921f | ||
|
|
e701484571 | ||
|
|
7f1c7c79c8 | ||
|
|
68ef953c34 | ||
|
|
e2534eb9d6 | ||
|
|
d7d8660bda | ||
|
|
ca98745ac5 | ||
|
|
8f721f971c | ||
|
|
1d39196baf | ||
|
|
35a1840b4b | ||
|
|
f9c0e9690a | ||
|
|
d43d5634b4 | ||
|
|
0255de9d9a | ||
|
|
5e1e878ae7 | ||
|
|
0a055f738f | ||
|
|
0040703b02 | ||
|
|
cf316f12b6 | ||
|
|
f128f9a7f3 | ||
|
|
78b0010656 | ||
|
|
51e0c002ac | ||
|
|
85ea15896b | ||
|
|
394dd95b25 | ||
|
|
4f84d752d4 | ||
|
|
8c9163930c | ||
|
|
22045c6944 | ||
|
|
7649942867 | ||
|
|
07f55354a6 | ||
|
|
60d5c9aedd | ||
|
|
daba3713c0 | ||
|
|
f3e91c5473 | ||
|
|
b781b8f56c | ||
|
|
db49fa0255 | ||
|
|
22db793c01 | ||
|
|
f491ff3b7e | ||
|
|
0a0b690f57 | ||
|
|
632f7e8356 | ||
|
|
56f88804ee | ||
|
|
952bd43844 | ||
|
|
0614cd5d88 | ||
|
|
f0e7be1d2b | ||
|
|
1eacf7d70d | ||
|
|
b6ccd6cdff | ||
|
|
29ba2fea26 | ||
|
|
015b344d84 | ||
|
|
e2d39fec68 | ||
|
|
b35ae397b7 | ||
|
|
d4d13663cc | ||
|
|
c70419a0a2 | ||
|
|
df2bcf7dbd | ||
|
|
4a84e84ece | ||
|
|
298c6fb8d5 | ||
|
|
48b70dc6a5 | ||
|
|
ec50afd22b | ||
|
|
cd8bb9fb88 | ||
|
|
8a0b844750 | ||
|
|
4afb59d2ab | ||
|
|
61bde3b56d |
@@ -134,8 +134,6 @@ 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
|
||||
|
||||
@@ -32,7 +32,13 @@ resources:
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/openvino_contrib
|
||||
ref: master
|
||||
ref: releases/2023/1
|
||||
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: releases/2023/1
|
||||
|
||||
variables:
|
||||
- group: github
|
||||
@@ -77,6 +83,7 @@ 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
|
||||
@@ -209,6 +216,13 @@ 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
|
||||
@@ -351,12 +365,6 @@ jobs:
|
||||
- script: $(RUN_PREFIX) $(INSTALL_TEST_DIR)/ov_inference_unit_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-InferenceUnit.xml
|
||||
displayName: 'Inference Unit Tests'
|
||||
|
||||
- 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'
|
||||
|
||||
@@ -441,7 +449,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) \
|
||||
@@ -514,15 +522,6 @@ 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,6 +183,7 @@ 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 \
|
||||
@@ -195,7 +196,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_TESTS=ON \
|
||||
-DENABLE_DATA=OFF \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DENABLE_SYSTEM_PROTOBUF=ON \
|
||||
-DENABLE_SYSTEM_SNAPPY=ON \
|
||||
|
||||
@@ -35,7 +35,7 @@ resources:
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: master
|
||||
ref: releases/2023/1
|
||||
|
||||
variables:
|
||||
- group: github
|
||||
|
||||
@@ -4,7 +4,7 @@ resources:
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/openvino_contrib
|
||||
ref: master
|
||||
ref: releases/2023/1
|
||||
|
||||
variables:
|
||||
- group: github
|
||||
|
||||
@@ -37,7 +37,13 @@ resources:
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/openvino_contrib
|
||||
ref: master
|
||||
ref: releases/2023/1
|
||||
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: releases/2023/1
|
||||
|
||||
jobs:
|
||||
- job: CUDAPlugin_Lin
|
||||
@@ -54,6 +60,7 @@ 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,6 +28,14 @@ pr:
|
||||
- '*/conformance/*'
|
||||
- 'tests/layer_tests/*'
|
||||
|
||||
resources:
|
||||
repositories:
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: releases/2023/1
|
||||
|
||||
jobs:
|
||||
- job: Lin_Debian
|
||||
# About 150% of total time
|
||||
@@ -42,6 +50,7 @@ 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
|
||||
@@ -140,6 +149,12 @@ 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
|
||||
@@ -228,7 +243,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
|
||||
sudo apt-get update -o Dir::Etc::sourcelist=/etc/apt/sources.list.d/intel-openvino-2023.list
|
||||
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
|
||||
@@ -263,18 +278,6 @@ jobs:
|
||||
LD_LIBRARY_PATH: $(INSTALL_TEST_DIR)
|
||||
displayName: 'OV Core UT'
|
||||
|
||||
- script: |
|
||||
$(INSTALL_TEST_DIR)/ov_proxy_plugin_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)/TEST-OVProxyTests.xml
|
||||
env:
|
||||
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:
|
||||
@@ -323,9 +326,15 @@ 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
|
||||
@@ -358,7 +367,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
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# type: github
|
||||
# endpoint: openvinotoolkit
|
||||
# name: openvinotoolkit/testdata
|
||||
# ref: master
|
||||
# ref: releases/2023/1
|
||||
|
||||
jobs:
|
||||
- job: Lin_lohika
|
||||
@@ -20,6 +20,7 @@ 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
|
||||
|
||||
@@ -37,6 +38,13 @@ 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
|
||||
|
||||
|
||||
@@ -35,7 +35,13 @@ resources:
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/openvino_contrib
|
||||
ref: master
|
||||
ref: releases/2023/1
|
||||
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: releases/2023/1
|
||||
|
||||
variables:
|
||||
- group: github
|
||||
@@ -55,6 +61,7 @@ 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
|
||||
@@ -102,6 +109,11 @@ jobs:
|
||||
submodules: 'true'
|
||||
path: openvino_contrib
|
||||
|
||||
- checkout: testdata
|
||||
clean: 'true'
|
||||
lfs: 'true'
|
||||
path: testdata
|
||||
|
||||
- script: |
|
||||
set -e
|
||||
brew install cython automake
|
||||
@@ -173,14 +185,6 @@ jobs:
|
||||
displayName: 'OV Core UT'
|
||||
enabled: 'false'
|
||||
|
||||
- script: $(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'
|
||||
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'
|
||||
@@ -207,11 +211,17 @@ 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'
|
||||
|
||||
|
||||
@@ -32,7 +32,13 @@ resources:
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/openvino_contrib
|
||||
ref: master
|
||||
ref: releases/2023/1
|
||||
|
||||
- repository: testdata
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: releases/2023/1
|
||||
|
||||
jobs:
|
||||
- job: Win
|
||||
@@ -57,6 +63,7 @@ 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
|
||||
@@ -123,6 +130,11 @@ 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
|
||||
@@ -249,12 +261,6 @@ jobs:
|
||||
- script: call $(SETUPVARS) && $(INSTALL_TEST_DIR)\ov_inference_unit_tests --gtest_print_time=1 --gtest_output=xml:$(INSTALL_TEST_DIR)\TEST-InferenceUnit.xml
|
||||
displayName: 'Inference Unit Tests'
|
||||
|
||||
- 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,7 +35,7 @@ resources:
|
||||
type: github
|
||||
endpoint: openvinotoolkit
|
||||
name: openvinotoolkit/testdata
|
||||
ref: master
|
||||
ref: releases/2023/1
|
||||
|
||||
variables:
|
||||
- group: github
|
||||
|
||||
2
.github/CODEOWNERS
vendored
2
.github/CODEOWNERS
vendored
@@ -92,8 +92,6 @@
|
||||
/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: Help us improve OpenVINO.
|
||||
name: Bug Report
|
||||
description: Create a report to help us improve
|
||||
title: "[Bug]: "
|
||||
labels: ["bug", "support_request"]
|
||||
body:
|
||||
@@ -53,7 +53,7 @@ body:
|
||||
id: framework
|
||||
attributes:
|
||||
label: Framework
|
||||
description: Framework used for model optimization
|
||||
description: Framework used in model optimization
|
||||
options:
|
||||
- TensorFlow 1
|
||||
- Keras (TensorFlow 2)
|
||||
@@ -68,7 +68,7 @@ body:
|
||||
id: model_name
|
||||
attributes:
|
||||
label: Model used
|
||||
description: Link to the model
|
||||
description: Please provide us the link to your model in the description
|
||||
placeholder: ResNet50 / YOLOv4
|
||||
validations:
|
||||
required: false
|
||||
@@ -77,7 +77,8 @@ body:
|
||||
attributes:
|
||||
label: Issue description
|
||||
description: What issue are you having, and what did you expect to happen instead?
|
||||
placeholder: "Error when performing model optimization on yolov4 model."
|
||||
placeholder: Please provide a detailed description of what happened
|
||||
value: "Error when performing model optimization on yolov4 model."
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
@@ -100,9 +101,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'm reporting an issue. It's not a question.
|
||||
- label: I report the 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.
|
||||
- label: I checked the problem with the documentation, FAQ, open issues, Stack Overflow, etc., and have not found the 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: Report a build or installation issue.
|
||||
name: Build Issue Report
|
||||
description: This report is for the build/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'm reporting an issue. It's not a question.
|
||||
- label: I report the 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.
|
||||
- label: I checked the problem with the documentation, FAQ, open issues, Stack Overflow, etc., and have not found the solution
|
||||
required: true
|
||||
|
||||
32
.github/ISSUE_TEMPLATE/documentation.yml
vendored
32
.github/ISSUE_TEMPLATE/documentation.yml
vendored
@@ -1,32 +0,0 @@
|
||||
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,8 +9,9 @@ body:
|
||||
id: request_description
|
||||
attributes:
|
||||
label: Request Description
|
||||
description: What would you like us to improve on?
|
||||
placeholder: Please provide a detailed description of your request.
|
||||
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)"
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
@@ -18,7 +19,8 @@ body:
|
||||
attributes:
|
||||
label: Feature Use Case
|
||||
description: What is the use case of the feature you are proposing?
|
||||
placeholder: What is the new feature use case? How will it be useful?
|
||||
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."
|
||||
validations:
|
||||
required: false
|
||||
- type: checkboxes
|
||||
|
||||
59
.github/ISSUE_TEMPLATE/good_first_issue.yml
vendored
59
.github/ISSUE_TEMPLATE/good_first_issue.yml
vendored
@@ -1,59 +0,0 @@
|
||||
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
146
.github/ISSUE_TEMPLATE/performance.yml
vendored
@@ -1,146 +0,0 @@
|
||||
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,15 +16,16 @@ body:
|
||||
attributes:
|
||||
label: Pre-release feedback
|
||||
description: What is the issue or feedback on the pre-release?
|
||||
placeholder: There is an inference performance drop in OpenVINO 2022.4.
|
||||
placeholder: Please describe the issue and/or feedback
|
||||
value: "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 features are welcome.
|
||||
placeholder: Any thoughts on the new feature are welcome
|
||||
validations:
|
||||
required: false
|
||||
- type: markdown
|
||||
|
||||
3
.github/dependabot.yml
vendored
3
.github/dependabot.yml
vendored
@@ -154,7 +154,6 @@ updates:
|
||||
time: "09:00"
|
||||
timezone: "Asia/Dubai"
|
||||
assignees:
|
||||
- "akashchi"
|
||||
- "mryzhov"
|
||||
- "ilyachur"
|
||||
- "ilya-lavrenov"
|
||||
open-pull-requests-limit: 3
|
||||
|
||||
3
.github/labeler.yml
vendored
3
.github/labeler.yml
vendored
@@ -17,9 +17,6 @@
|
||||
- '.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@v4
|
||||
uses: actions/checkout@v3
|
||||
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@v2
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
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@v4
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- 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,9 +25,10 @@ jobs:
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: 'true'
|
||||
submodules: recursive
|
||||
lfs: true
|
||||
|
||||
- name: Install OpenCL
|
||||
uses: awalsh128/cache-apt-pkgs-action@v1.3.0
|
||||
@@ -37,10 +38,10 @@ jobs:
|
||||
version: 3.0
|
||||
|
||||
- name: CMake configure
|
||||
run: cmake -DCMAKE_BUILD_TYPE=Release -DTHREADING=SEQ -B build
|
||||
run: cmake -DCMAKE_BUILD_TYPE=Release -B build
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
id: cpu-cores
|
||||
|
||||
- name: Build snippets
|
||||
|
||||
16
.github/workflows/code_style.yml
vendored
16
.github/workflows/code_style.yml
vendored
@@ -11,9 +11,9 @@ jobs:
|
||||
permissions:
|
||||
pull-requests: write
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: 'true'
|
||||
submodules: recursive
|
||||
|
||||
- name: Install clang-format-9
|
||||
run: |
|
||||
@@ -47,9 +47,9 @@ jobs:
|
||||
permissions:
|
||||
pull-requests: write
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: 'true'
|
||||
submodules: recursive
|
||||
|
||||
- name: Install ShellCheck
|
||||
run: |
|
||||
@@ -78,15 +78,15 @@ jobs:
|
||||
NamingConventionCheck:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: 'true'
|
||||
submodules: recursive
|
||||
|
||||
- name: Install Clang dependency
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt --assume-yes remove clang-7 clang-8 clang-9 clang-10 clang-11 clang-12 clang-13
|
||||
sudo apt --assume-yes install libclang-14-dev
|
||||
sudo apt --assume-yes remove clang-7 clang-8 clang-9 clang-10 clang-11 clang-12 clang-13 clang-15
|
||||
sudo apt --assume-yes install clang-14 libclang-14-dev
|
||||
|
||||
- name: Install Python-based dependencies
|
||||
run: python3 -m pip install -r cmake/developer_package/ncc_naming_style/requirements_dev.txt
|
||||
|
||||
13
.github/workflows/coverage.yml
vendored
13
.github/workflows/coverage.yml
vendored
@@ -28,9 +28,9 @@ jobs:
|
||||
max-size: 50G
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: 'true'
|
||||
submodules: recursive
|
||||
|
||||
- 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@v2
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
id: cpu-cores
|
||||
|
||||
- name: Build OpenVINO with CMake
|
||||
@@ -101,14 +101,11 @@ jobs:
|
||||
- name: Run OV core unit tests
|
||||
run: ${{ github.workspace }}/bin/intel64/Release/ov_core_unit_tests
|
||||
|
||||
- name: Run OV Proxy plugin tests
|
||||
run: ${{ github.workspace }}/bin/intel64/Release/ov_proxy_plugin_tests
|
||||
|
||||
- name: Run OV Hetero Func tests
|
||||
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
|
||||
run: ${{ github.workspace }}/bin/intel64/Release/ov_ir_frontend_tests # --gtest_print_time=1 --gtest_output=xml:${{ github.workspace }}/testdata/TEST-IRFrontend.xml
|
||||
|
||||
- name: Run ONNX frontend tests
|
||||
run: ${{ github.workspace }}/bin/intel64/Release/ov_onnx_frontend_tests --gtest_filter=-*IE_GPU*
|
||||
@@ -144,6 +141,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@v4
|
||||
uses: codecov/codecov-action@v3
|
||||
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@v4
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- 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@v4
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: git ls-tree
|
||||
run: git ls-tree -r -t -l --full-name HEAD | sort -n -r -k 4
|
||||
|
||||
281
.github/workflows/linux.yml
vendored
281
.github/workflows/linux.yml
vendored
@@ -1,8 +1,5 @@
|
||||
name: Tests on Linux (Ubuntu 20.04, Python 3.11)
|
||||
name: Tests on Linux (Ubuntu 22.04, Python 3.11)
|
||||
on:
|
||||
schedule:
|
||||
# at 00:00 on Wednesday and Saturday
|
||||
- cron: '0 0 * * 3,6'
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
@@ -32,7 +29,7 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-20.04-8-cores
|
||||
runs-on: ubuntu-latest-8-cores
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja'
|
||||
@@ -44,22 +41,32 @@ 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@v4
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
submodules: 'recursive'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
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
|
||||
@@ -121,12 +128,19 @@ 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: linux-ubuntu
|
||||
key: ${{ github.job }}-linux
|
||||
restore-keys: |
|
||||
linux-ubuntu
|
||||
${{ github.job }}-linux
|
||||
|
||||
- name: Get tools versions
|
||||
run: |
|
||||
ninja --version || exit 1
|
||||
ccache --version || exit 1
|
||||
python3 --version || exit 1
|
||||
cmake --version || exit 1
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
id: cpu-cores
|
||||
|
||||
- name: CMake configure
|
||||
@@ -146,6 +160,8 @@ 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 \
|
||||
@@ -167,24 +183,15 @@ 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
|
||||
|
||||
@@ -271,7 +278,7 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
env:
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
@@ -444,16 +451,6 @@ jobs:
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_auto_batch_func_tests --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_batch_func_tests.xml
|
||||
|
||||
- name: Proxy Plugin Tests
|
||||
run: |
|
||||
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
|
||||
@@ -472,7 +469,7 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
env:
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
OPENVINO_CONTRIB_REPO: ${{ github.workspace }}/openvino_contrib
|
||||
@@ -480,8 +477,9 @@ 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"
|
||||
|
||||
@@ -491,9 +489,10 @@ jobs:
|
||||
mkdir -p ${{ env.INSTALL_DIR }} ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'recursive'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
@@ -586,14 +585,6 @@ 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: |
|
||||
|
||||
@@ -621,7 +612,6 @@ 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: |
|
||||
@@ -634,7 +624,6 @@ 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: |
|
||||
@@ -646,18 +635,6 @@ 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: |
|
||||
@@ -677,7 +654,6 @@ 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: |
|
||||
@@ -688,7 +664,6 @@ 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: |
|
||||
@@ -699,7 +674,6 @@ 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: |
|
||||
@@ -722,9 +696,7 @@ jobs:
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results-python
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.html
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'error'
|
||||
|
||||
CPU_Functional_Tests:
|
||||
@@ -732,12 +704,10 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-20.04-4-cores
|
||||
runs-on: ubuntu-22.04
|
||||
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
|
||||
@@ -769,188 +739,15 @@ jobs:
|
||||
tar -xzf openvino_tests.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_tests.tar.gz || exit 1
|
||||
popd
|
||||
|
||||
- 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)
|
||||
- name: Intel CPU plugin func tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
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 }}
|
||||
${{ 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"
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results-functional-cpu
|
||||
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
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'error'
|
||||
|
||||
173
.github/workflows/linux_android_arm64.yml
vendored
173
.github/workflows/linux_android_arm64.yml
vendored
@@ -1,173 +0,0 @@
|
||||
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
200
.github/workflows/linux_arm64.yml
vendored
@@ -1,200 +0,0 @@
|
||||
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
140
.github/workflows/linux_conditional_compilation.yml
vendored
@@ -1,140 +0,0 @@
|
||||
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
433
.github/workflows/linux_debian.yml
vendored
@@ -1,433 +0,0 @@
|
||||
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
182
.github/workflows/linux_onnxruntime.yml
vendored
@@ -1,182 +0,0 @@
|
||||
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,8 +20,9 @@ jobs:
|
||||
Pylint-UT:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v4
|
||||
|
||||
6
.github/workflows/py_checks.yml
vendored
6
.github/workflows/py_checks.yml
vendored
@@ -24,8 +24,10 @@ jobs:
|
||||
linters:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
- name: Code checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v4
|
||||
|
||||
41
.github/workflows/windows.yml
vendored
41
.github/workflows/windows.yml
vendored
@@ -36,6 +36,8 @@ 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"
|
||||
@@ -48,16 +50,25 @@ jobs:
|
||||
runs-on: windows-latest-8-cores
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
submodules: 'recursive'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
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
|
||||
@@ -111,7 +122,7 @@ jobs:
|
||||
#
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
uses: SimenB/github-actions-cpu-cores@v1
|
||||
id: cpu-cores
|
||||
|
||||
- uses: ilammy/msvc-dev-cmd@v1
|
||||
@@ -254,6 +265,8 @@ 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:
|
||||
@@ -290,9 +303,17 @@ jobs:
|
||||
ls "${{ env.INSTALL_TEST_DIR }}"
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
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:
|
||||
@@ -619,16 +640,6 @@ jobs:
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_auto_batch_func_tests --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_batch_func_tests.xml
|
||||
|
||||
- name: Proxy Plugin Tests
|
||||
shell: cmd
|
||||
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: |
|
||||
|
||||
@@ -1,168 +0,0 @@
|
||||
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
|
||||
@@ -106,6 +106,8 @@ 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()
|
||||
|
||||
@@ -85,4 +85,4 @@ product better:
|
||||
## License
|
||||
|
||||
By contributing to the OpenVINO project, you agree that your contributions will be
|
||||
licensed under the terms stated in the [LICENSE](./LICENSE.md) file.
|
||||
licensed under the terms stated in the [LICENSE](./LICENSE.md) file.
|
||||
@@ -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>
|
||||
@@ -73,9 +73,9 @@ The OpenVINO™ Runtime can infer models on different hardware devices. This sec
|
||||
<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.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
|
||||
<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">ARM CPU</a></tb>
|
||||
<td><b><i><a href="./src/plugins/intel_cpu">openvino_arm_cpu_plugin</a></i></b></td>
|
||||
<td>Raspberry Pi™ 4 Model B, Apple® Mac with Apple silicon
|
||||
</tr>
|
||||
<tr>
|
||||
<td>GPU</td>
|
||||
|
||||
@@ -7,6 +7,22 @@ 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)
|
||||
@@ -100,10 +116,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.3-lin.tgz"
|
||||
ARCHIVE_LIN "oneapi-tbb-2021.2.1-lin-canary.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "f3f2edd8e7875b02220f11ab5b201411d5af6822e525e8da5444b4a666514e8b"
|
||||
SHA256 "3a2c2ec79b3cce7e6a2484754ba6f029fa968db2eefc6659540792b7db8fea0c"
|
||||
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(ov_mark_target_as_cc TARGET_NAME)
|
||||
function(ie_mark_target_as_cc TARGET_NAME)
|
||||
set(cc_library openvino::conditional_compilation)
|
||||
if(TARGET IE::conditional_compilation)
|
||||
set(cc_library IE::conditional_compilation)
|
||||
@@ -275,9 +275,8 @@ function(ov_mark_target_as_cc TARGET_NAME)
|
||||
add_dependencies(${TARGET_NAME} conditional_compilation_gen)
|
||||
endfunction()
|
||||
|
||||
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})
|
||||
function(ov_mark_target_as_cc)
|
||||
ie_mark_target_as_cc(${ARGN})
|
||||
endfunction()
|
||||
|
||||
include(python_requirements)
|
||||
|
||||
@@ -120,7 +120,7 @@ function(addIeTarget)
|
||||
endif()
|
||||
if (ARG_ADD_CLANG_FORMAT)
|
||||
# code style
|
||||
ov_add_clang_format_target(${ARG_NAME}_clang FOR_TARGETS ${ARG_NAME})
|
||||
add_clang_format_target(${ARG_NAME}_clang FOR_TARGETS ${ARG_NAME})
|
||||
endif()
|
||||
if (ARG_DEVELOPER_PACKAGE)
|
||||
# developer package
|
||||
|
||||
@@ -193,11 +193,6 @@ endfunction()
|
||||
#
|
||||
# ie_add_api_validator_post_build_step(TARGET <name>)
|
||||
#
|
||||
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()
|
||||
|
||||
#
|
||||
# ov_add_clang_format_target(FOR_TARGETS <target1 target2 ...> | FOR_SOURCES <source1 source2 ...>
|
||||
# [EXCLUDE_PATTERNS <pattern1 pattern2 ...>])
|
||||
# add_clang_format_target(FOR_TARGETS <target1 target2 ...> | FOR_SOURCES <source1 source2 ...>
|
||||
# [EXCLUDE_PATTERNS <pattern1 pattern2 ...>])
|
||||
#
|
||||
function(ov_add_clang_format_target TARGET_NAME)
|
||||
function(add_clang_format_target TARGET_NAME)
|
||||
if(NOT ENABLE_CLANG_FORMAT)
|
||||
return()
|
||||
endif()
|
||||
@@ -130,8 +130,3 @@ function(ov_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,7 +33,6 @@ 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()
|
||||
|
||||
@@ -219,26 +218,24 @@ 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()
|
||||
|
||||
#
|
||||
# ov_add_compiler_flags(<flag1 [flag2 flag3 ...>])
|
||||
# ie_add_compiler_flags(<flag1 [flag2 flag3 ...>])
|
||||
#
|
||||
# Adds compiler flags to C / C++ sources
|
||||
#
|
||||
macro(ov_add_compiler_flags)
|
||||
macro(ie_add_compiler_flags)
|
||||
foreach(flag ${ARGN})
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
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()
|
||||
function(ov_add_compiler_flags)
|
||||
ie_add_compiler_flags(${ARGN})
|
||||
endfunction()
|
||||
|
||||
#
|
||||
# ov_force_include(<target> <PUBLIC | PRIVATE | INTERFACE> <header file>)
|
||||
@@ -270,11 +267,11 @@ function(ov_abi_free_target target)
|
||||
endfunction()
|
||||
|
||||
#
|
||||
# ov_python_minimal_api(<target>)
|
||||
# ie_python_minimal_api(<target>)
|
||||
#
|
||||
# Set options to use only Python Limited API
|
||||
#
|
||||
function(ov_python_minimal_api target)
|
||||
function(ie_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
|
||||
@@ -304,7 +301,7 @@ if(NOT DEFINED CMAKE_CXX_STANDARD)
|
||||
endif()
|
||||
|
||||
if(ENABLE_COVERAGE)
|
||||
ov_add_compiler_flags(--coverage)
|
||||
ie_add_compiler_flags(--coverage)
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
|
||||
endif()
|
||||
|
||||
@@ -316,9 +313,9 @@ set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)
|
||||
|
||||
if(CMAKE_CL_64)
|
||||
# Default char Type Is unsigned
|
||||
# ov_add_compiler_flags(/J)
|
||||
# ie_add_compiler_flags(/J)
|
||||
elseif(CMAKE_COMPILER_IS_GNUCXX OR OV_COMPILER_IS_CLANG)
|
||||
ov_add_compiler_flags(-fsigned-char)
|
||||
ie_add_compiler_flags(-fsigned-char)
|
||||
endif()
|
||||
|
||||
file(RELATIVE_PATH OV_RELATIVE_BIN_PATH ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR})
|
||||
@@ -338,22 +335,22 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
# Common options / warnings enabled
|
||||
#
|
||||
|
||||
ov_add_compiler_flags(/D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS)
|
||||
ie_add_compiler_flags(/D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS)
|
||||
# no asynchronous structured exception handling
|
||||
ov_add_compiler_flags(/EHsc)
|
||||
ie_add_compiler_flags(/EHsc)
|
||||
# Allows the compiler to package individual functions in the form of packaged functions (COMDATs).
|
||||
ov_add_compiler_flags(/Gy)
|
||||
ie_add_compiler_flags(/Gy)
|
||||
# This option helps ensure the fewest possible hard-to-find code defects. Similar to -Wall on GNU / Clang
|
||||
ov_add_compiler_flags(/W3)
|
||||
ie_add_compiler_flags(/W3)
|
||||
|
||||
# Increase Number of Sections in .Obj file
|
||||
ov_add_compiler_flags(/bigobj)
|
||||
ie_add_compiler_flags(/bigobj)
|
||||
# Build with multiple processes
|
||||
ov_add_compiler_flags(/MP)
|
||||
ie_add_compiler_flags(/MP)
|
||||
|
||||
if(AARCH64 AND NOT MSVC_VERSION LESS 1930)
|
||||
# otherwise, _ARM64_EXTENDED_INTRINSICS is defined, which defines 'mvn' macro
|
||||
ov_add_compiler_flags(/D_ARM64_DISTINCT_NEON_TYPES)
|
||||
ie_add_compiler_flags(/D_ARM64_DISTINCT_NEON_TYPES)
|
||||
endif()
|
||||
|
||||
# Handle Large Addresses
|
||||
@@ -365,7 +362,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
|
||||
if(CMAKE_COMPILE_WARNING_AS_ERROR)
|
||||
if(CMAKE_VERSION VERSION_LESS 3.24)
|
||||
ov_add_compiler_flags(/WX)
|
||||
ie_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")
|
||||
@@ -377,9 +374,9 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
#
|
||||
|
||||
# C4251 needs to have dll-interface to be used by clients of class
|
||||
ov_add_compiler_flags(/wd4251)
|
||||
ie_add_compiler_flags(/wd4251)
|
||||
# C4275 non dll-interface class used as base for dll-interface class
|
||||
ov_add_compiler_flags(/wd4275)
|
||||
ie_add_compiler_flags(/wd4275)
|
||||
|
||||
# Enable __FILE__ trim, use path with forward and backward slash as directory separator
|
||||
add_compile_options(
|
||||
@@ -403,7 +400,7 @@ elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Intel" AND WIN32)
|
||||
#
|
||||
|
||||
if(CMAKE_COMPILE_WARNING_AS_ERROR AND CMAKE_VERSION VERSION_LESS 3.24)
|
||||
ov_add_compiler_flags(/Qdiag-warning:47,1740,1786)
|
||||
ie_add_compiler_flags(/Qdiag-warning:47,1740,1786)
|
||||
endif()
|
||||
|
||||
#
|
||||
@@ -411,40 +408,40 @@ elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Intel" AND WIN32)
|
||||
#
|
||||
|
||||
# 161: unrecognized pragma
|
||||
ov_add_compiler_flags(/Qdiag-disable:161)
|
||||
ie_add_compiler_flags(/Qdiag-disable:161)
|
||||
# 177: variable was declared but never referenced
|
||||
ov_add_compiler_flags(/Qdiag-disable:177)
|
||||
ie_add_compiler_flags(/Qdiag-disable:177)
|
||||
# 556: not matched type of assigned function pointer
|
||||
ov_add_compiler_flags(/Qdiag-disable:556)
|
||||
ie_add_compiler_flags(/Qdiag-disable:556)
|
||||
# 1744: field of class type without a DLL interface used in a class with a DLL interface
|
||||
ov_add_compiler_flags(/Qdiag-disable:1744)
|
||||
ie_add_compiler_flags(/Qdiag-disable:1744)
|
||||
# 1879: unimplemented pragma ignored
|
||||
ov_add_compiler_flags(/Qdiag-disable:1879)
|
||||
ie_add_compiler_flags(/Qdiag-disable:1879)
|
||||
# 2586: decorated name length exceeded, name was truncated
|
||||
ov_add_compiler_flags(/Qdiag-disable:2586)
|
||||
ie_add_compiler_flags(/Qdiag-disable:2586)
|
||||
# 2651: attribute does not apply to any entity
|
||||
ov_add_compiler_flags(/Qdiag-disable:2651)
|
||||
ie_add_compiler_flags(/Qdiag-disable:2651)
|
||||
# 3180: unrecognized OpenMP pragma
|
||||
ov_add_compiler_flags(/Qdiag-disable:3180)
|
||||
ie_add_compiler_flags(/Qdiag-disable:3180)
|
||||
# 11075: To get full report use -Qopt-report:4 -Qopt-report-phase ipo
|
||||
ov_add_compiler_flags(/Qdiag-disable:11075)
|
||||
ie_add_compiler_flags(/Qdiag-disable:11075)
|
||||
# 15335: was not vectorized: vectorization possible but seems inefficient.
|
||||
# Use vector always directive or /Qvec-threshold0 to override
|
||||
ov_add_compiler_flags(/Qdiag-disable:15335)
|
||||
ie_add_compiler_flags(/Qdiag-disable:15335)
|
||||
else()
|
||||
#
|
||||
# Common enabled warnings
|
||||
#
|
||||
|
||||
# allow linker eliminating the unused code and data from the final executable
|
||||
ov_add_compiler_flags(-ffunction-sections -fdata-sections)
|
||||
ie_add_compiler_flags(-ffunction-sections -fdata-sections)
|
||||
# emits text showing the command-line option controlling a diagnostic
|
||||
ov_add_compiler_flags(-fdiagnostics-show-option)
|
||||
ie_add_compiler_flags(-fdiagnostics-show-option)
|
||||
|
||||
# This enables all the warnings about constructions that some users consider questionable, and that are easy to avoid
|
||||
ov_add_compiler_flags(-Wall)
|
||||
ie_add_compiler_flags(-Wall)
|
||||
# Warn if an undefined identifier is evaluated in an #if directive. Such identifiers are replaced with zero.
|
||||
ov_add_compiler_flags(-Wundef)
|
||||
ie_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
|
||||
@@ -471,7 +468,7 @@ else()
|
||||
#
|
||||
|
||||
if(CMAKE_COMPILE_WARNING_AS_ERROR AND CMAKE_VERSION VERSION_LESS 3.24)
|
||||
ov_add_compiler_flags(-Werror)
|
||||
ie_add_compiler_flags(-Werror)
|
||||
endif()
|
||||
|
||||
#
|
||||
@@ -480,7 +477,7 @@ else()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
|
||||
# 177: function "XXX" was declared but never referenced
|
||||
ov_add_compiler_flags(-diag-disable=remark,177,2196)
|
||||
ie_add_compiler_flags(-diag-disable=remark,177,2196)
|
||||
endif()
|
||||
|
||||
#
|
||||
@@ -496,8 +493,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")
|
||||
ov_add_compiler_flags(-sDISABLE_EXCEPTION_CATCHING=0)
|
||||
# ov_add_compiler_flags(-sUSE_PTHREADS=1)
|
||||
ie_add_compiler_flags(-sDISABLE_EXCEPTION_CATCHING=0)
|
||||
# ie_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}")
|
||||
@@ -510,6 +507,7 @@ 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}")
|
||||
|
||||
@@ -521,11 +519,11 @@ endif()
|
||||
check_cxx_compiler_flag("-Wunused-but-set-variable" UNUSED_BUT_SET_VARIABLE_SUPPORTED)
|
||||
|
||||
#
|
||||
# ov_link_system_libraries(target <PUBLIC | PRIVATE | INTERFACE> <lib1 [lib2 lib3 ...]>)
|
||||
# link_system_libraries(target <PUBLIC | PRIVATE | INTERFACE> <lib1 [lib2 lib3 ...]>)
|
||||
#
|
||||
# Links provided libraries and include their INTERFACE_INCLUDE_DIRECTORIES as SYSTEM
|
||||
#
|
||||
function(ov_link_system_libraries TARGET_NAME)
|
||||
function(link_system_libraries TARGET_NAME)
|
||||
set(MODE PRIVATE)
|
||||
|
||||
foreach(arg IN LISTS ARGN)
|
||||
|
||||
@@ -136,8 +136,6 @@ 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(ov_build_target_faster TARGET_NAME)
|
||||
function(ie_faster_build TARGET_NAME)
|
||||
if(NOT ENABLE_FASTER_BUILD)
|
||||
return()
|
||||
endif()
|
||||
|
||||
cmake_parse_arguments(FASTER_BUILD "UNITY" "" "PCH" ${ARGN})
|
||||
cmake_parse_arguments(IE_FASTER_BUILD "UNITY" "" "PCH" ${ARGN})
|
||||
|
||||
if(FASTER_BUILD_UNITY)
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES UNITY_BUILD ON)
|
||||
if(IE_FASTER_BUILD_UNITY)
|
||||
set_target_properties(${TARGET_NAME}
|
||||
PROPERTIES
|
||||
UNITY_BUILD ON
|
||||
)
|
||||
endif()
|
||||
|
||||
if(FASTER_BUILD_PCH)
|
||||
target_precompile_headers(${TARGET_NAME} ${FASTER_BUILD_PCH})
|
||||
if(IE_FASTER_BUILD_PCH)
|
||||
target_precompile_headers(${TARGET_NAME}
|
||||
${IE_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(DEFINED ENV{CI_BUILD_NUMBER} AND NOT (WIN32 OR CMAKE_CROSSCOMPILING))
|
||||
if(CI_BUILD_NUMBER)
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR_DEFAULT ON)
|
||||
else()
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR_DEFAULT OFF)
|
||||
|
||||
@@ -183,11 +183,6 @@ 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}>
|
||||
@@ -224,11 +219,11 @@ macro(ov_add_frontend)
|
||||
set(protobuf_target_name "protobuf::${protobuf_target_name}")
|
||||
endif()
|
||||
|
||||
ov_link_system_libraries(${TARGET_NAME} PRIVATE ${protobuf_target_name})
|
||||
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 $<$<COMPILE_LANGUAGE:CXX>:-Wno-suggest-override>)
|
||||
target_compile_options(${TARGET_NAME} PRIVATE -Wno-suggest-override)
|
||||
endif()
|
||||
|
||||
# install protobuf if it is not installed yet
|
||||
@@ -247,8 +242,8 @@ macro(ov_add_frontend)
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${flatbuffers_INCLUDE_DIRECTORIES})
|
||||
endif()
|
||||
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME}
|
||||
EXCLUDE_PATTERNS ${PROTO_SRCS} ${PROTO_HDRS} ${proto_files} ${flatbuffers_schema_files})
|
||||
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
|
||||
@@ -268,7 +263,7 @@ macro(ov_add_frontend)
|
||||
add_dependencies(ov_frontends ${TARGET_NAME})
|
||||
|
||||
# must be called after all target_link_libraries
|
||||
ov_add_api_validator_post_build_step(TARGET ${TARGET_NAME})
|
||||
ie_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
|
||||
|
||||
@@ -2,12 +2,14 @@
|
||||
# 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)
|
||||
@@ -26,8 +28,6 @@ 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,8 +44,6 @@ 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}
|
||||
@@ -61,8 +59,6 @@ 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,24 +24,21 @@ 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}/${build_type})
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/bin/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
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)
|
||||
elseif(APPLE)
|
||||
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})
|
||||
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)
|
||||
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,6 +19,7 @@ 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)
|
||||
|
||||
@@ -24,6 +24,7 @@ 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,24 +63,21 @@ 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}/${build_type})
|
||||
set(OV_CPACK_RUNTIMEDIR runtime/bin/${ARCH_FOLDER}/${build_type})
|
||||
set(OV_CPACK_ARCHIVEDIR runtime/lib/${ARCH_FOLDER}/${build_type})
|
||||
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)
|
||||
elseif(APPLE)
|
||||
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})
|
||||
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)
|
||||
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})
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@ 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)
|
||||
ov_add_clang_format_target(${OV_PLUGIN_NAME}_clang FOR_SOURCES ${OV_PLUGIN_SOURCES})
|
||||
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,10 +117,6 @@ 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)
|
||||
|
||||
@@ -39,6 +39,7 @@ 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,9 +5,6 @@
|
||||
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
|
||||
@@ -40,9 +37,6 @@ 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
|
||||
@@ -132,6 +126,12 @@ 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)
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#
|
||||
# Common cmake options
|
||||
#
|
||||
ov_option (ENABLE_PROXY "Proxy plugin for OpenVINO Runtime" ON)
|
||||
ov_option (ENABLE_PROXY "Proxy plugin for OpenVINO Runtime" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_INTEL_CPU "CPU plugin for OpenVINO Runtime" ON "RISCV64 OR X86 OR X86_64 OR AARCH64 OR ARM" OFF)
|
||||
|
||||
@@ -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 MINGW OR (CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0) OR (NOT BUILD_SHARED_LIBS AND ENABLE_INTEL_CPU))
|
||||
if (ANDROID OR (CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0) OR NOT BUILD_SHARED_LIBS)
|
||||
# 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,7 +84,6 @@ 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)
|
||||
@@ -105,12 +104,16 @@ 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)
|
||||
@@ -173,6 +176,7 @@ 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)
|
||||
|
||||
|
||||
@@ -91,7 +91,6 @@ macro(ov_cpack_settings)
|
||||
# - 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.2 2023.0.3
|
||||
2023.1.0
|
||||
)
|
||||
|
||||
#
|
||||
|
||||
@@ -77,7 +77,6 @@ macro(ov_cpack_settings)
|
||||
# - 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.2 2023.0.3
|
||||
2023.1.0
|
||||
)
|
||||
|
||||
find_host_program(rpmlint_PROGRAM NAMES rpmlint DOC "Path to rpmlint")
|
||||
|
||||
@@ -49,8 +49,10 @@ if(ENABLE_SAMPLES)
|
||||
set_and_check(gflags_DIR "@gflags_BINARY_DIR@")
|
||||
endif()
|
||||
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
endif()
|
||||
|
||||
#
|
||||
# Content
|
||||
|
||||
@@ -223,10 +223,6 @@ 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)
|
||||
@@ -347,15 +343,11 @@ 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_OPENVINO_LIB_DIR@")
|
||||
set(_ov_in_install_tree "@PACKAGE_ARM_COMPUTE_LIB_DIR@")
|
||||
if(_ov_in_install_tree)
|
||||
set_and_check(ARM_COMPUTE_LIB_DIR "@PACKAGE_OPENVINO_LIB_DIR@")
|
||||
set_and_check(ARM_COMPUTE_LIB_DIR "@PACKAGE_ARM_COMPUTE_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()
|
||||
|
||||
@@ -371,50 +363,16 @@ 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)
|
||||
_ov_find_dependency(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)
|
||||
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)
|
||||
@@ -497,7 +455,6 @@ 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)
|
||||
@@ -530,6 +487,8 @@ 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,8 +54,10 @@ if(ENABLE_SAMPLES)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
endif()
|
||||
|
||||
#
|
||||
# Content
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
pc_path=${pcfiledir}
|
||||
prefix=${pc_path}/@PKGCONFIG_OpenVINO_PREFIX@
|
||||
|
||||
exec_prefix=${prefix}/@OV_CPACK_RUNTIMEDIR@
|
||||
exec_prefix=${prefix}/@OV_WHEEL_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 testing models weren't generated, some tests will fail due .onnx models not found"
|
||||
WARNING_MESSAGE "ONNX frontend tests will be skipped"
|
||||
MESSAGE_MODE WARNING)
|
||||
endif()
|
||||
|
||||
|
||||
@@ -37,8 +37,6 @@ 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
|
||||
|
||||
@@ -4,30 +4,26 @@
|
||||
"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",
|
||||
"onnx/1.13.1#f11071c8aba52731a5205b028945acbb%1693130310.715",
|
||||
"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"
|
||||
"ade/0.1.2a#b569ff943843abd004e65536e265a445%1688125447.482"
|
||||
],
|
||||
"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",
|
||||
|
||||
@@ -1,30 +1,27 @@
|
||||
[requires]
|
||||
ade/0.1.2c
|
||||
ade/0.1.2a
|
||||
onetbb/[>=2021.2.1]
|
||||
pugixml/[>=1.10]
|
||||
protobuf/3.21.12
|
||||
ittapi/[>=3.23.0]
|
||||
zlib/[>=1.2.8]
|
||||
opencl-icd-loader/[>=2023.04.17]
|
||||
rapidjson/[>=1.1.0]
|
||||
opencl-icd-loader/2023.04.17
|
||||
xbyak/[>=6.62]
|
||||
snappy/[>=1.1.7]
|
||||
gflags/2.2.2
|
||||
onnx/1.14.1
|
||||
onnx/1.13.1
|
||||
nlohmann_json/[>=3.1.1]
|
||||
pybind11/[>=2.10.1]
|
||||
flatbuffers/[>=22.9.24]
|
||||
|
||||
[tool_requires]
|
||||
cmake/[>=3.20]
|
||||
pkgconf/1.9.5
|
||||
cmake/[>=3.15]
|
||||
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,407 +4,80 @@
|
||||
"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": [],
|
||||
|
||||
171
docs/Documentation/gen_ai.md
Normal file
171
docs/Documentation/gen_ai.md
Normal file
@@ -0,0 +1,171 @@
|
||||
# Optimize and Deploy Generative AI Models {#gen_ai_guide}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
Generative AI is an innovative technique that creates new data, such as text, images, video, or audio, using neural networks. OpenVINO accelerates Generative AI use cases as they mostly rely on model inference, allowing for faster development and better performance. When it comes to generative models, OpenVINO supports:
|
||||
|
||||
* Conversion, optimization and inference for text, image and audio generative models, for example, Llama 2, MPT, OPT, Stable Diffusion, Stable Diffusion XL, etc.
|
||||
* Int8 weight compression for text generation models.
|
||||
* Storage format reduction (fp16 precision for non-compressed models and int8 for compressed models).
|
||||
* Inference on CPU and GPU platforms, including integrated Intel® Processor Graphics, discrete Intel® Arc™ A-Series Graphics, and discrete Intel® Data Center GPU Flex Series.
|
||||
|
||||
|
||||
OpenVINO offers two main paths for Generative AI use cases:
|
||||
|
||||
* Using OpenVINO as a backend for Hugging Face frameworks (transformers, diffusers) through the `Optimum Intel <https://huggingface.co/docs/optimum/intel/inference>`__ extension.
|
||||
* Using OpenVINO native APIs (Python and C++) with custom pipeline code.
|
||||
|
||||
|
||||
In both cases, OpenVINO runtime and tools are used, the difference is mostly in the preferred API and the final solution's footprint. Native APIs enable the use of generative models in C++ applications, ensure minimal runtime dependencies, and minimize application footprint. The Native APIs approach requires the implementation of glue code (generation loop, text tokenization, or scheduler functions), which is hidden within Hugging Face libraries for a better developer experience.
|
||||
|
||||
It is recommended to start with Hugging Face frameworks. Experiment with different models and scenarios to find your fit, and then consider converting to OpenVINO native APIs based on your specific requirements.
|
||||
|
||||
Optimum Intel provides interfaces that enable model optimization (weight compression) using `Neural Network Compression Framework (NNCF) <https://github.com/openvinotoolkit/nncf>`__, and export models to the OpenVINO model format for use in native API applications.
|
||||
|
||||
The table below summarizes the differences between Hugging Face and Native APIs approaches.
|
||||
|
||||
.. list-table::
|
||||
:widths: 20 25 55
|
||||
:header-rows: 1
|
||||
|
||||
* -
|
||||
- Hugging Face through OpenVINO
|
||||
- OpenVINO Native API
|
||||
* - Model support
|
||||
- Broad set of Models
|
||||
- Broad set of Models
|
||||
* - APIs
|
||||
- Python (Hugging Face API)
|
||||
- Python, C++ (OpenVINO API)
|
||||
* - Model Format
|
||||
- Source Framework / OpenVINO
|
||||
- OpenVINO
|
||||
* - Inference code
|
||||
- Hugging Face based
|
||||
- Custom inference pipelines
|
||||
* - Additional dependencies
|
||||
- Many Hugging Face dependencies
|
||||
- Lightweight (e.g. numpy, etc.)
|
||||
* - Application footprint
|
||||
- Large
|
||||
- Small
|
||||
* - Pre/post-processing and glue code
|
||||
- Available at Hugging Face out-of-the-box
|
||||
- OpenVINO samples and notebooks
|
||||
* - Performance
|
||||
- Good
|
||||
- Best
|
||||
|
||||
|
||||
Running Generative AI Models using Hugging Face Optimum Intel
|
||||
##############################################################
|
||||
|
||||
Prerequisites
|
||||
+++++++++++++++++++++++++++
|
||||
|
||||
* Create a Python environment.
|
||||
* Install Optimum Intel:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
pip install optimum[openvino,nncf]
|
||||
|
||||
|
||||
To start using OpenVINO as a backend for Hugging Face, change the original Hugging Face code in two places:
|
||||
|
||||
.. code-block:: diff
|
||||
|
||||
-from transformers import AutoModelForCausalLM
|
||||
+from optimum.intel import OVModelForCausalLM
|
||||
|
||||
model_id = "meta-llama/Llama-2-7b-chat-hf"
|
||||
-model = AutoModelForCausalLM.from_pretrained(model_id)
|
||||
+model = OVModelForCausalLM.from_pretrained(model_id, export=True)
|
||||
|
||||
|
||||
After that, you can call ``save_pretrained()`` method to save model to the folder in the OpenVINO Intermediate Representation and use it further.
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
model.save_pretrained(model_dir)
|
||||
|
||||
|
||||
Alternatively, you can download and convert the model using CLI interface: ``optimum-cli export openvino --model meta-llama/Llama-2-7b-chat-hf llama_openvino``.
|
||||
In this case, you can load the converted model in OpenVINO representation directly from the disk:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
model_id = "llama_openvino"
|
||||
model = OVModelForCausalLM.from_pretrained(model_id)
|
||||
|
||||
|
||||
By default, inference will run on CPU. To select a different inference device, for example, GPU, add ``device="GPU"`` to the ``from_pretrained()`` call. To switch to a different device after the model has been loaded, use the ``.to()`` method. The device naming convention is the same as in OpenVINO native API:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
model.to("GPU")
|
||||
|
||||
|
||||
Optimum-Intel API also provides out-of-the-box model optimization through weight compression using NNCF which substantially reduces the model footprint and inference latency:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
model = OVModelForCausalLM.from_pretrained(model_id, export=True, load_in_8bit=True)
|
||||
|
||||
|
||||
Weight compression is applied by default to models larger than one billion parameters and is also available for CLI interface as the ``--int8`` option.
|
||||
|
||||
Below are some examples of using Optimum-Intel for model conversion and inference:
|
||||
|
||||
* `Stable Diffusion v2.1 using Optimum-Intel OpenVINO <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/236-stable-diffusion-v2/236-stable-diffusion-v2-optimum-demo.ipynb>`__
|
||||
* `Image generation with Stable Diffusion XL and OpenVINO <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/248-stable-diffusion-xl/248-stable-diffusion-xl.ipynb>`__
|
||||
* `Instruction following using Databricks Dolly 2.0 and OpenVINO <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/240-dolly-2-instruction-following/240-dolly-2-instruction-following.ipynb>`__
|
||||
* `Create an LLM-powered Chatbot using OpenVINO <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/254-llm-chatbot/254-llm-chatbot.ipynb>`__
|
||||
|
||||
Working with Models Tuned with LoRA
|
||||
++++++++++++++++++++++++++++++++++++
|
||||
|
||||
Low-rank Adaptation (LoRA) is a popular method to tune Generative AI models to a downstream task or custom data. However, it requires some extra steps to be done for efficient deployment using the Hugging Face API. Namely, the trained adapters should be fused into the baseline model to avoid extra computation. This is how it can be done for Large Language Models (LLMs):
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
model_id = "meta-llama/Llama-2-7b-chat-hf"
|
||||
lora_adaptor = "./lora_adaptor"
|
||||
|
||||
model = AutoModelForCausalLM.from_pretrained(model_id, use_cache=True)
|
||||
model = PeftModelForCausalLM.from_pretrained(model, lora_adaptor)
|
||||
model.merge_and_unload()
|
||||
model.get_base_model().save_pretrained("fused_lora_model")
|
||||
|
||||
|
||||
Now the model can be converted to OpenVINO using Optimum Intel Python API or CLI interfaces mentioned above.
|
||||
|
||||
Running Generative AI Models using Native OpenVINO APIs
|
||||
########################################################
|
||||
|
||||
To run Generative AI models using native OpenVINO APIs you need to follow regular **Сonvert -> Optimize -> Deploy** path with a few simplifications.
|
||||
|
||||
To convert model from Hugging Face you can use Optimum-Intel export feature that allows to export model in OpenVINO format without invoking conversion API and tools directly, as it is shown above. In this case, the conversion process is a bit more simplified. You can still use a regular conversion path if model comes from outside of Hugging Face ecosystem, i.e., in source framework format (PyTorch, etc.)
|
||||
|
||||
Model optimization can be performed within Hugging Face or directly using NNCF as described in the :doc:`weight compression guide <weight_compression>`.
|
||||
|
||||
Inference code that uses native API cannot benefit from Hugging Face pipelines. You need to write your custom code or take it from the available examples. Below are some examples of popular Generative AI scenarios:
|
||||
|
||||
* In case of LLMs for text generation, you need to handle tokenization, inference and token selection loop, and de-tokenization. If token selection involves beam search, it also needs to be written.
|
||||
* For image generation models, you need to make a pipeline that includes several model inferences: inference for source (e.g., text) encoder models, inference loop for diffusion process and inference for decoding part. Scheduler code is also required.
|
||||
|
||||
To write such pipelines, you can follow the examples provided as part of OpenVINO:
|
||||
|
||||
* `llama2.openvino <https://github.com/OpenVINO-dev-contest/llama2.openvino>`__
|
||||
* `LLM optimization by custom operation embedding for OpenVINO <https://github.com/luo-cheng2021/ov.cpu.llm.experimental>`__
|
||||
* `C++ Implementation of Stable Diffusion <https://github.com/yangsu2022/OV_SD_CPP>`__
|
||||
|
||||
|
||||
Additional Resources
|
||||
############################
|
||||
|
||||
* `Optimum Intel documentation <https://huggingface.co/docs/optimum/intel/inference>`_
|
||||
* :doc:`LLM Weight Compression <weight_compression>`
|
||||
* `Neural Network Compression Framework <https://github.com/openvinotoolkit/nncf>`_
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -14,6 +14,7 @@
|
||||
|
||||
Interactive Tutorials (Python) <tutorials>
|
||||
Sample Applications (Python & C++) <openvino_docs_OV_UG_Samples_Overview>
|
||||
Generative AI Optimization and Deployment <gen_ai_guide>
|
||||
|
||||
|
||||
This section will help you get a hands-on experience with OpenVINO even if you are just starting
|
||||
|
||||
@@ -22,17 +22,17 @@ and run a pre-trained network from an online database, such as
|
||||
or `Torchvision models <https://pytorch.org/hub/>`__.
|
||||
|
||||
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.
|
||||
you can use it directly, without the need to save as OpenVINO IR
|
||||
(`openvino.Model <api/ie_python_api/_autosummary/openvino.Model.html>`__ -
|
||||
`ov.Model <api/ie_python_api/_autosummary/openvino.runtime.Model.html>`__).
|
||||
`ov.Model <api/ie_python_api/_autosummary/openvino.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>`).
|
||||
maximum convenience. Note that for PyTorch models, Python API
|
||||
is the only conversion option. TensorFlow may present additional considerations
|
||||
:doc:`TensorFlow Frontend Capabilities and Limitations <openvino_docs_MO_DG_TensorFlow_Frontend>`.
|
||||
|
||||
|
||||
For better performance and more optimization options, OpenVINO offers a conversion
|
||||
For better performance and more optimization options, OpenVINO also 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.
|
||||
|
||||
@@ -50,7 +50,7 @@ and ``openvino.save_model``) and the ``ovc`` command line tool, which are descri
|
||||
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:
|
||||
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 compiled with ``openvino.compile_model`` and 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::
|
||||
@@ -64,7 +64,7 @@ You can use the Model conversion API in Python with the ``openvino.convert_model
|
||||
import torch
|
||||
from torchvision.models import resnet50
|
||||
|
||||
model = resnet50(pretrained=True)
|
||||
model = resnet50(weights='DEFAULT')
|
||||
|
||||
# prepare input_data
|
||||
input_data = torch.rand(1, 3, 224, 224)
|
||||
@@ -81,7 +81,7 @@ You can use the Model conversion API in Python with the ``openvino.convert_model
|
||||
# compile model
|
||||
compiled_model = ov.compile_model(ov_model)
|
||||
|
||||
# run the inference
|
||||
# run inference
|
||||
result = compiled_model(input_data)
|
||||
|
||||
.. tab-item:: Hugging Face Transformers
|
||||
|
||||
@@ -37,7 +37,6 @@
|
||||
<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"/>
|
||||
@@ -63,7 +62,6 @@
|
||||
<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,7 +188,6 @@ 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>`
|
||||
@@ -212,7 +211,6 @@ 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:`ov::pass::low_precision::LowPrecision <doxid-classov_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:`ngraph::pass::low_precision::LowPrecision <doxid-classngraph_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,17 +10,8 @@
|
||||
|
||||
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>`
|
||||
@@ -43,7 +34,6 @@ 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}
|
||||
|
||||
ov::pass::low_precision::ConvertSubtractConstant class represents the `ConvertSubtractConstant` transformation.
|
||||
ngraph::pass::low_precision::ConvertSubtractConstant class represents the `ConvertSubtractConstant` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# PullReshapeThroughDequantization transformation {#openvino_docs_OV_UG_lpt_PullReshapeThroughDequantization}
|
||||
|
||||
ov::pass::low_precision::PullReshapeThroughDequantization class represents the `PullReshapeThroughDequantization` transformation.
|
||||
ngraph::pass::low_precision::PullReshapeThroughDequantization class represents the `PullReshapeThroughDequantization` transformation.
|
||||
@@ -1,3 +1,3 @@
|
||||
# PullTransposeThroughDequantization transformation {#openvino_docs_OV_UG_lpt_PullTransposeThroughDequantization}
|
||||
|
||||
ov::pass::low_precision::PullTransposeThroughDequantization class represents the `PullTransposeThroughDequantization` transformation.
|
||||
ngraph::pass::low_precision::PullTransposeThroughDequantization class represents the `PullTransposeThroughDequantization` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# AlignQuantizationIntervals transformation {#openvino_docs_OV_UG_lpt_AlignQuantizationIntervals}
|
||||
|
||||
ov::pass::low_precision::AlignQuantizationIntervals class represents the `AlignQuantizationIntervals` transformation.
|
||||
ngraph::pass::low_precision::AlignQuantizationIntervals class represents the `AlignQuantizationIntervals` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# AlignQuantizationParameters transformation {#openvino_docs_OV_UG_lpt_AlignQuantizationParameters}
|
||||
|
||||
ov::pass::low_precision::AlignQuantizationParameters class represents the `AlignQuantizationParameters` transformation.
|
||||
ngraph::pass::low_precision::AlignQuantizationParameters class represents the `AlignQuantizationParameters` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# CreateAttribute transformation {#openvino_docs_OV_UG_lpt_CreateAttribute}
|
||||
|
||||
ov::pass::low_precision::CreateAttribute class represents the `CreateAttribute` transformation.
|
||||
ngraph::pass::low_precision::CreateAttribute class represents the `CreateAttribute` transformation.
|
||||
@@ -1,3 +1,3 @@
|
||||
# CreatePrecisionsDependentAttribute transformation {#openvino_docs_OV_UG_lpt_CreatePrecisionsDependentAttribute}
|
||||
|
||||
ov::pass::low_precision::CreatePrecisionsDependentAttribute class represents the `CreatePrecisionsDependentAttribute` transformation.
|
||||
ngraph::pass::low_precision::CreatePrecisionsDependentAttribute class represents the `CreatePrecisionsDependentAttribute` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# MarkupAvgPoolPrecisionPreserved transformation {#openvino_docs_OV_UG_lpt_MarkupAvgPoolPrecisionPreserved}
|
||||
|
||||
ov::pass::low_precision::MarkupAvgPoolPrecisionPreserved class represents the `MarkupAvgPoolPrecisionPreserved` transformation.
|
||||
ngraph::pass::low_precision::MarkupAvgPoolPrecisionPreserved class represents the `MarkupAvgPoolPrecisionPreserved` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# MarkupBias transformation {#openvino_docs_OV_UG_lpt_MarkupBias}
|
||||
|
||||
ov::pass::low_precision::MarkupBias class represents the `MarkupBias` transformation.
|
||||
ngraph::pass::low_precision::MarkupBias class represents the `MarkupBias` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# MarkupCanBeQuantized transformation {#openvino_docs_OV_UG_lpt_MarkupCanBeQuantized}
|
||||
|
||||
ov::pass::low_precision::MarkupCanBeQuantized class represents the `MarkupCanBeQuantized` transformation.
|
||||
ngraph::pass::low_precision::MarkupCanBeQuantized class represents the `MarkupCanBeQuantized` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# MarkupPerTensorQuantization transformation {#openvino_docs_OV_UG_lpt_MarkupPerTensorQuantization}
|
||||
|
||||
ov::pass::low_precision::MarkupPerTensorQuantization class represents the `MarkupPerTensorQuantization` transformation.
|
||||
ngraph::pass::low_precision::MarkupPerTensorQuantization class represents the `MarkupPerTensorQuantization` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# MarkupPrecisions transformation {#openvino_docs_OV_UG_lpt_MarkupPrecisions}
|
||||
|
||||
ov::pass::low_precision::MarkupPrecisions class represents the `MarkupPrecisions` transformation.
|
||||
ngraph::pass::low_precision::MarkupPrecisions class represents the `MarkupPrecisions` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# PropagatePrecisions transformation {#openvino_docs_OV_UG_lpt_PropagatePrecisions}
|
||||
|
||||
ov::pass::low_precision::PropagatePrecisions class represents the `PropagatePrecisions` transformation.
|
||||
ngraph::pass::low_precision::PropagatePrecisions class represents the `PropagatePrecisions` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# PropagateSharedValue transformation {#openvino_docs_OV_UG_lpt_PropagateSharedValue}
|
||||
|
||||
ov::pass::low_precision::PropagateSharedValue class represents the `PropagateSharedValue` transformation.
|
||||
ngraph::pass::low_precision::PropagateSharedValue class represents the `PropagateSharedValue` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# PropagateThroughPrecisionPreserved transformation {#openvino_docs_OV_UG_lpt_PropagateThroughPrecisionPreserved}
|
||||
|
||||
ov::pass::low_precision::PropagateThroughPrecisionPreserved class represents the `PropagateThroughPrecisionPreserved` transformation.
|
||||
ngraph::pass::low_precision::PropagateThroughPrecisionPreserved class represents the `PropagateThroughPrecisionPreserved` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# PropagateToInput transformation {#openvino_docs_OV_UG_lpt_PropagateToInput}
|
||||
|
||||
ov::pass::low_precision::PropagateToInput class represents the `PropagateToInput` transformation.
|
||||
ngraph::pass::low_precision::PropagateToInput class represents the `PropagateToInput` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# UpdateSharedPrecisionPreserved transformation {#openvino_docs_OV_UG_lpt_UpdateSharedPrecisionPreserved}
|
||||
|
||||
ov::pass::low_precision::UpdateSharedPrecisionPreserved class represents the `UpdateSharedPrecisionPreserved` transformation.
|
||||
ngraph::pass::low_precision::UpdateSharedPrecisionPreserved class represents the `UpdateSharedPrecisionPreserved` transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# ClampTransformation transformation {#openvino_docs_OV_UG_lpt_ClampTransformation}
|
||||
|
||||
ov::pass::low_precision::ClampTransformation class represents the `Clamp` operation transformation.
|
||||
ngraph::pass::low_precision::ClampTransformation class represents the `Clamp` operation transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# PReluTransformation transformation {#openvino_docs_OV_UG_lpt_PReluTransformation}
|
||||
|
||||
ov::pass::low_precision::PReluTransformation class represents the `PRelu` operation transformation.
|
||||
ngraph::pass::low_precision::PReluTransformation class represents the `PRelu` operation transformation.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# ReluTransformation transformation {#openvino_docs_OV_UG_lpt_ReluTransformation}
|
||||
|
||||
ov::pass::low_precision::ReluTransformation class represents the `Relu` operation transformation.
|
||||
ngraph::pass::low_precision::ReluTransformation class represents the `Relu` operation transformation.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# AddTransformation transformation {#openvino_docs_OV_UG_lpt_AddTransformation}
|
||||
|
||||
ov::pass::low_precision::AddTransformation class represents the `Add` operation transformation.
|
||||
ngraph::pass::low_precision::AddTransformation class represents the `Add` operation transformation.
|
||||
|
||||
The transformation propagates dequantization subtraction from one input branch to another and propagates dequantization multiplication from the same branch through `Add` operation. In transformation result, one `Add` operation input branch is in low precision without dequantization operations (empty branch), another input branch is in original precision with updated dequantization operations (full branch).
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user