def openvino_ref(request, artifacts): """Fixture function for command-line option. Return path to root directory with installed OpenVINO. If --openvino_ref command-line option is not specified firstly build and install instrumented package with OpenVINO repository specified in --openvino_root_dir option. """ openvino_ref = request.config.getoption("openvino_ref") if openvino_ref: validate_path_arg(openvino_ref, is_dir=True) return openvino_ref openvino_root_dir = request.config.getoption("openvino_root_dir", skip=True) validate_path_arg(openvino_root_dir, is_dir=True) build_dir = openvino_root_dir / "build_instrumented" openvino_ref_path = artifacts / "ref_pkg" log.info("--openvino_ref is not specified. Preparing instrumented build at %s", build_dir) build_target = {"sea_itt_lib": Path(build_dir / "thirdparty" / "itt_collector" / "sea_itt_lib")} return_code, output = make_build( openvino_root_dir, build_dir, openvino_ref_path, build_target=build_target, cmake_additional_args=["-DSELECTIVE_BUILD=COLLECT"], log=log ) assert return_code == 0, f"Command exited with non-zero status {return_code}:\n {output}" return openvino_ref_path
def test_minimized_pkg(test_id, model, openvino_root_dir, artifacts): # pylint: disable=unused-argument """Build and install OpenVINO package with collected conditional compilation statistics.""" out = artifacts / test_id install_prefix = out / "install_pkg" build_dir = openvino_root_dir / "build_minimized" out_csv = glob.glob(f"{out}.pid*.csv") assert len(out_csv) == 1, f'Multiple or none "{out}.pid*.csv" files' log.info("Building minimized build at %s", build_dir) return_code, output = make_build( openvino_root_dir, build_dir, install_prefix, cmake_additional_args=[f"-DSELECTIVE_BUILD_STAT={out_csv[0]}"], log=log, ) assert return_code == 0, f"Command exited with non-zero status {return_code}:\n {output}"