[GHA] Windows pytest optimizations (#21650)
* parallel runs * enabled pip cache * pip cache fix
This commit is contained in:
parent
0a21205ad4
commit
59e9f50ec6
44
.github/workflows/windows.yml
vendored
44
.github/workflows/windows.yml
vendored
@ -12,6 +12,7 @@ concurrency:
|
|||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
|
|
||||||
env:
|
env:
|
||||||
|
PIP_CACHE_PATH: /mount/caches/pip/win
|
||||||
PYTHON_VERSION: '3.11'
|
PYTHON_VERSION: '3.11'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
@ -88,8 +89,10 @@ jobs:
|
|||||||
uses: ./openvino/.github/actions/setup_python
|
uses: ./openvino/.github/actions/setup_python
|
||||||
with:
|
with:
|
||||||
version: ${{ env.PYTHON_VERSION }}
|
version: ${{ env.PYTHON_VERSION }}
|
||||||
should-setup-pip-paths: 'false'
|
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||||
self-hosted-runner: 'false'
|
should-setup-pip-paths: 'true'
|
||||||
|
self-hosted-runner: 'true'
|
||||||
|
show-cache-info: 'true'
|
||||||
|
|
||||||
- name: Install python dependencies
|
- name: Install python dependencies
|
||||||
run: |
|
run: |
|
||||||
@ -249,7 +252,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
version: ${{ env.PYTHON_VERSION }}
|
version: ${{ env.PYTHON_VERSION }}
|
||||||
should-setup-pip-paths: 'false'
|
should-setup-pip-paths: 'false'
|
||||||
self-hosted-runner: 'false'
|
self-hosted-runner: 'true'
|
||||||
|
|
||||||
- name: Build cpp samples
|
- name: Build cpp samples
|
||||||
run: |
|
run: |
|
||||||
@ -287,7 +290,7 @@ jobs:
|
|||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
shell: pwsh
|
shell: pwsh
|
||||||
runs-on: aks-win-4-cores-8gb
|
runs-on: aks-win-8-cores-16gb
|
||||||
env:
|
env:
|
||||||
OPENVINO_REPO: "${{ github.workspace }}\\openvino"
|
OPENVINO_REPO: "${{ github.workspace }}\\openvino"
|
||||||
OPENVINO_CONTRIB_REPO: "${{ github.workspace }}\\openvino_contrib"
|
OPENVINO_CONTRIB_REPO: "${{ github.workspace }}\\openvino_contrib"
|
||||||
@ -330,8 +333,9 @@ jobs:
|
|||||||
uses: ./openvino/.github/actions/setup_python
|
uses: ./openvino/.github/actions/setup_python
|
||||||
with:
|
with:
|
||||||
version: ${{ env.PYTHON_VERSION }}
|
version: ${{ env.PYTHON_VERSION }}
|
||||||
|
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||||
should-setup-pip-paths: 'false'
|
should-setup-pip-paths: 'false'
|
||||||
self-hosted-runner: 'false'
|
self-hosted-runner: 'true'
|
||||||
|
|
||||||
- name: Install OpenVINO Python wheels
|
- name: Install OpenVINO Python wheels
|
||||||
run: |
|
run: |
|
||||||
@ -345,6 +349,9 @@ jobs:
|
|||||||
|
|
||||||
- name: Install Python API tests dependencies
|
- name: Install Python API tests dependencies
|
||||||
run: |
|
run: |
|
||||||
|
# To enable pytest parallel features
|
||||||
|
python3 -m pip install pytest-xdist[psutil]
|
||||||
|
|
||||||
# For torchvision to OpenVINO preprocessing converter
|
# For torchvision to OpenVINO preprocessing converter
|
||||||
python3 -m pip install -r ${{ env.INSTALL_TEST_DIR }}/python/preprocess/torchvision/requirements.txt
|
python3 -m pip install -r ${{ env.INSTALL_TEST_DIR }}/python/preprocess/torchvision/requirements.txt
|
||||||
|
|
||||||
@ -370,13 +377,17 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/mo/unit_tests --ignore=${{ env.INSTALL_TEST_DIR }}/mo/unit_tests/mo/front/mxnet --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-ModelOptimizer.xml
|
python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/mo/unit_tests --ignore=${{ env.INSTALL_TEST_DIR }}/mo/unit_tests/mo/front/mxnet --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-ModelOptimizer.xml
|
||||||
|
|
||||||
|
- name: Install Python Layer tests dependencies
|
||||||
|
run: |
|
||||||
|
# layer test requirements
|
||||||
|
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||||
|
|
||||||
# Ticket - 115085
|
# Ticket - 115085
|
||||||
- name: PyTorch Layer Tests
|
- name: PyTorch Layer Tests
|
||||||
if: ${{ 'false' }}
|
if: ${{ 'false' }}
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/pytorch_tests -n logical -m precommit --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-pytorch.xml
|
||||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/pytorch_tests -m precommit --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-pytorch.xml
|
|
||||||
env:
|
env:
|
||||||
TEST_DEVICE: CPU
|
TEST_DEVICE: CPU
|
||||||
|
|
||||||
@ -384,11 +395,9 @@ jobs:
|
|||||||
if: fromJSON(needs.smart_ci.outputs.affected_components).ONNX_FE.test
|
if: fromJSON(needs.smart_ci.outputs.affected_components).ONNX_FE.test
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
|
||||||
|
|
||||||
:: requires 'unit_tests' from 'tools/mo'
|
:: requires 'unit_tests' from 'tools/mo'
|
||||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\mo;%PYTHONPATH%
|
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\mo;%PYTHONPATH%
|
||||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/onnx_tests -m "not launch_only_if_manually_specified and precommit" --junitxml=${INSTALL_TEST_DIR}/TEST-onnx.xml
|
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/onnx_tests -n logical -m "not launch_only_if_manually_specified and precommit" --junitxml=${INSTALL_TEST_DIR}/TEST-onnx.xml
|
||||||
env:
|
env:
|
||||||
TEST_DEVICE: CPU
|
TEST_DEVICE: CPU
|
||||||
TEST_PRECISION: FP16
|
TEST_PRECISION: FP16
|
||||||
@ -397,8 +406,6 @@ jobs:
|
|||||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
|
||||||
|
|
||||||
:: requires 'unit_tests' from 'tools/mo'
|
:: requires 'unit_tests' from 'tools/mo'
|
||||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\mo;%PYTHONPATH%
|
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\mo;%PYTHONPATH%
|
||||||
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
|
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
|
||||||
@ -410,8 +417,6 @@ jobs:
|
|||||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
|
||||||
|
|
||||||
:: requires 'unit_tests' from 'tools/mo'
|
:: requires 'unit_tests' from 'tools/mo'
|
||||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\mo;%PYTHONPATH%
|
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\mo;%PYTHONPATH%
|
||||||
|
|
||||||
@ -423,14 +428,12 @@ jobs:
|
|||||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
|
||||||
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
|
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 2 Layer Tests - Legacy FE
|
- name: TensorFlow 2 Layer Tests - Legacy FE
|
||||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
|
||||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow2_keras_tests/test_tf2_keras_activation.py --ir_version=11 --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf2_Activation.xml -k "sigmoid"
|
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow2_keras_tests/test_tf2_keras_activation.py --ir_version=11 --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf2_Activation.xml -k "sigmoid"
|
||||||
env:
|
env:
|
||||||
TEST_DEVICE: CPU
|
TEST_DEVICE: CPU
|
||||||
@ -440,7 +443,6 @@ jobs:
|
|||||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TFL_FE.test
|
if: fromJSON(needs.smart_ci.outputs.affected_components).TFL_FE.test
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
|
||||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_lite_tests/ --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tfl_fe.xml
|
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_lite_tests/ --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tfl_fe.xml
|
||||||
env:
|
env:
|
||||||
TEST_DEVICE: CPU
|
TEST_DEVICE: CPU
|
||||||
@ -460,8 +462,6 @@ jobs:
|
|||||||
if: fromJSON(needs.smart_ci.outputs.affected_components).MO.test
|
if: fromJSON(needs.smart_ci.outputs.affected_components).MO.test
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
|
||||||
|
|
||||||
:: Used for 'test_utils' installed in '<test_package>\python\openvino\test_utils'
|
:: Used for 'test_utils' installed in '<test_package>\python\openvino\test_utils'
|
||||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\python\openvino\test_utils;${{ env.INSTALL_TEST_DIR }}\python;%PYTHONPATH%
|
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\python\openvino\test_utils;${{ env.INSTALL_TEST_DIR }}\python;%PYTHONPATH%
|
||||||
|
|
||||||
@ -474,8 +474,6 @@ jobs:
|
|||||||
if: fromJSON(needs.smart_ci.outputs.affected_components).MO.test
|
if: fromJSON(needs.smart_ci.outputs.affected_components).MO.test
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
|
||||||
|
|
||||||
:: Used for 'test_utils' installed in '<test_package>\python\openvino\test_utils'
|
:: Used for 'test_utils' installed in '<test_package>\python\openvino\test_utils'
|
||||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\python\openvino\test_utils;${{ env.INSTALL_TEST_DIR }}\python;%PYTHONPATH%
|
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\python\openvino\test_utils;${{ env.INSTALL_TEST_DIR }}\python;%PYTHONPATH%
|
||||||
|
|
||||||
@ -490,8 +488,6 @@ jobs:
|
|||||||
fromJSON(needs.smart_ci.outputs.affected_components).PDPD_FE.test
|
fromJSON(needs.smart_ci.outputs.affected_components).PDPD_FE.test
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
|
||||||
|
|
||||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/py_frontend_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_py_fontend.xml
|
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/py_frontend_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_py_fontend.xml
|
||||||
|
|
||||||
- name: OVC unit tests
|
- name: OVC unit tests
|
||||||
@ -778,7 +774,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
version: ${{ env.PYTHON_VERSION }}
|
version: ${{ env.PYTHON_VERSION }}
|
||||||
should-setup-pip-paths: 'false'
|
should-setup-pip-paths: 'false'
|
||||||
self-hosted-runner: 'false'
|
self-hosted-runner: 'true'
|
||||||
|
|
||||||
- name: Install python dependencies
|
- name: Install python dependencies
|
||||||
shell: cmd
|
shell: cmd
|
||||||
|
Loading…
Reference in New Issue
Block a user