diff --git a/tests/stress_tests/.automation/memcheck_tests/nightly_configs/desktop_test_config.xml b/tests/stress_tests/.automation/memcheck_tests/nightly_configs/desktop_test_config.xml index 14960077f3c..10f94df96a2 100644 --- a/tests/stress_tests/.automation/memcheck_tests/nightly_configs/desktop_test_config.xml +++ b/tests/stress_tests/.automation/memcheck_tests/nightly_configs/desktop_test_config.xml @@ -125,7 +125,6 @@ intel/person-attributes-recognition-crossroad-0230/FP32/person-attributes-recognition-crossroad-0230.xml intel/face-detection-0100/FP32/face-detection-0100.xml intel/face-detection-0102/FP32/face-detection-0102.xml - intel/person-reidentification-retail-0031/FP32/person-reidentification-retail-0031.xml intel/person-reidentification-retail-0300/FP32/person-reidentification-retail-0300.xml intel/instance-segmentation-security-0010/FP32/instance-segmentation-security-0010.xml intel/instance-segmentation-security-0083/FP32/instance-segmentation-security-0083.xml diff --git a/tests/stress_tests/.automation/memcheck_tests/weekly_configs/desktop_test_config.xml b/tests/stress_tests/.automation/memcheck_tests/weekly_configs/desktop_test_config.xml index 14960077f3c..10f94df96a2 100644 --- a/tests/stress_tests/.automation/memcheck_tests/weekly_configs/desktop_test_config.xml +++ b/tests/stress_tests/.automation/memcheck_tests/weekly_configs/desktop_test_config.xml @@ -125,7 +125,6 @@ intel/person-attributes-recognition-crossroad-0230/FP32/person-attributes-recognition-crossroad-0230.xml intel/face-detection-0100/FP32/face-detection-0100.xml intel/face-detection-0102/FP32/face-detection-0102.xml - intel/person-reidentification-retail-0031/FP32/person-reidentification-retail-0031.xml intel/person-reidentification-retail-0300/FP32/person-reidentification-retail-0300.xml intel/instance-segmentation-security-0010/FP32/instance-segmentation-security-0010.xml intel/instance-segmentation-security-0083/FP32/instance-segmentation-security-0083.xml diff --git a/tests/stress_tests/scripts/get_testdata.py b/tests/stress_tests/scripts/get_testdata.py index 928e26bd3a9..6f02d109df6 100755 --- a/tests/stress_tests/scripts/get_testdata.py +++ b/tests/stress_tests/scripts/get_testdata.py @@ -116,36 +116,30 @@ def main(): help='Skip errors caused by OMZ while downloading and converting.') args = parser.parse_args() - # Step 0: prepare models list + # parse models from test config tree = ET.parse(str(args.test_conf)) root = tree.getroot() - models_names = [] + models_from_cfg = [] for attributes in root: if attributes.tag == "models": models = [child.text for child in attributes] - models_names = [Path(model).stem for model in models] + models_from_cfg = [Path(model).stem for model in models] break - os.makedirs(str(args.omz_models_out_dir), exist_ok=True) - models_list_path = args.omz_models_out_dir / "models_list.txt" - log.info("List of models from {models_list_path} used for downloader.py and converter.py: " - "{models_names}".format(models_list_path=models_list_path, models_names=",".join(models_names))) - with open(str(models_list_path), "w") as file: - file.writelines([name + "\n" for name in models_names]) - - # Step 1: prepare Open Model Zoo + # prepare Open Model Zoo if args.omz_repo: omz_path = Path(args.omz_repo).resolve() else: omz_path = Path(abs_path('..')) / "_open_model_zoo" - # Clone Open Model Zoo into temporary path + # clone Open Model Zoo into temporary path if os.path.exists(str(omz_path)): shutil.rmtree(str(omz_path)) cmd = 'git clone https://github.com/opencv/open_model_zoo {omz_path}'.format(omz_path=omz_path) run_in_subprocess(cmd) - # Step 3: prepare models + # prepare models downloader_path = omz_path / "tools" / "downloader" / "downloader.py" + models_list_path = args.omz_models_out_dir / "models_list.txt" cmd = '{downloader_path} --list {models_list_path}' \ ' --num_attempts {num_attempts}' \ ' --output_dir {models_dir}' \ @@ -155,9 +149,21 @@ def main(): models_dir=args.omz_models_out_dir, cache_dir=args.omz_cache_dir, jobs_num=DOWNLOADER_JOBS_NUM) + models_available = subprocess.check_output(cmd + " --print_all", shell=True, universal_newlines=True).split("\n") + models_to_run = set(models_from_cfg).intersection(models_available) + + os.makedirs(str(args.omz_models_out_dir), exist_ok=True) + log.info("List of models from {models_list_path} used for downloader.py and converter.py: " + "{models_to_run}".format(models_list_path=models_list_path, models_to_run=",".join(models_to_run))) + with open(str(models_list_path), "w") as file: + file.writelines([name + "\n" for name in models_to_run]) + if set(models_from_cfg) - models_to_run: + log.warning("List of models defined in config but not available in OMZ: {}" + .format(",".join(set(models_from_cfg) - models_to_run))) + run_in_subprocess(cmd, check_call=not args.skip_omz_errors) - # Step 4: prepare virtual environment and install requirements + # prepare virtual environment and install requirements python_executable = sys.executable if not args.no_venv: Venv = VirtualEnv("./.stress_venv") @@ -171,7 +177,7 @@ def main(): Venv.create_n_install_requirements(*requirements) python_executable = Venv.get_venv_executable() - # Step 5: convert models to IRs + # convert models to IRs converter_path = omz_path / "tools" / "downloader" / "converter.py" # NOTE: remove --precision if both precisions (FP32 & FP16) required cmd = '{executable} {converter_path} --list {models_list_path}' \