openvino/tests/stress_tests
Ilya Lavrenov 6ca47b074d
Library versions & made tests relocatable (#12416)
* Fixes for cases when TBB_DIR env var is set

* Don't use make in build_samples.sh script

* First version of Windows installer

* WIndows NSIS installer

* Improved version of debian packages

* Improvements

* Improvements

* Debian packages now look good

* Library versioning

* Fixed tests to run against debian packages

* Fixed frontend tests

* Fixed code style

* FIxed Windows

* Fixed python tests

* Fixed paths in tests

* fdvfdv

* Fixes

* USe versioning only for debian packages

* Relocatable tests

* Fixed

* Fixed all tests

* Fixed clang-format

* Fixed more tests

* Fixed some tests

* Absolute paths in .ci

* Fixes

* Added support of OpenCV 3.4

* Trying to fix gnaUnitTests
2022-08-08 13:59:24 +04:00
..
.automation Update nightly memcheck models scope (#10709) 2022-03-02 18:03:28 +08:00
common Moved stress tests to OV API 2.0 (#9791) 2022-01-31 17:07:25 +03:00
memcheck_tests Library versions & made tests relocatable (#12416) 2022-08-08 13:59:24 +04:00
memleaks_tests Library versions & made tests relocatable (#12416) 2022-08-08 13:59:24 +04:00
scripts Update mo_tool parameter for converter.py (#11319) 2022-03-30 18:32:53 +03:00
unittests Library versions & made tests relocatable (#12416) 2022-08-08 13:59:24 +04:00
.gitignore publish master branch snapshot, revision 8d31237e2c3f673cbb0f0ba110fc10f5cce1d2bb 2020-05-22 02:23:12 +03:00
CMakeLists.txt Update year to 2022 in copyright notice (#9755) 2022-01-19 01:07:49 +03:00
README.md Fixed path to setupvars.sh ti readme (#7537) 2021-09-17 05:20:28 +03:00

README.md

Stress Tests Suite

This test suite contains tests evaluating the behavior of various OpenVINO use cases under stress conditions:

  • MemCheckTests measuring memory required for the use cases and fail when memory usage exceeds a pre-defined level.

  • StressMemLeaksTests ensure that the use cases does not increase memory levels when executing continuously.

  • StressUnitTests executing various Inference Engine use cases in parallel threads and processes.

Each test refers to configuration files located in <test dir>\.automation folder.

Getting Started

Stress tests are based on the googletest framework. You can filter tests with --gtest_filter and explore tests available with --gtest_list_tests options.

Tests measuring memory have a temporary limitation - those need to be executed one at a time to mitigate memory statistics pollution. You can use gtest-parallel for massive tests execution.

Pre-requisites

Building Tests

To build the tests, you need to have OpenVINO™ installed or build from source. Before build the tests, open a terminal, set OpenVINO™ environment, and after that run the commands below:

source <OpenVINO_install_dir>/setupvars.sh
mkdir build && cd build
cmake .. && make -j$(nproc)

Preparing Test Data

Stress tests may work with models from Open Model Zoo. To use it, download and convert models to IRs using ./scripts/get_testdata.py script. Script will update test config file with data required for OMZ models execution.

From Intel network you can use models from cache at vdp_tests file share. Refer to VDP shared folders on using file shares.

Running Tests

gtest-parallel <openvino_bin>/StressMemLeaksTests

For MemCheckTests preferable way is:

python ./scripts/run_memcheck.py --gtest_parallel <gtest_parallel_py_path> 
<openvino_bin>/MemCheckTests -- --test_conf=<test_conf_path> --refs_conf=<refs_conf_path>

MemCheckTests logs can be used to gather reference values based on current memory consumption:

mkdir -p MemCheckTests-logs && \
gtest-parallel -d ./MemCheckTests-logs ./MemCheckTests && \
grep -rh ./MemCheckTests-logs -e ".*<model " | sed -e "s/.*<model /<model /" | sort