diff --git a/ovmobilebench/builders/openvino.py b/ovmobilebench/builders/openvino.py index 3d5a5e6..2cea848 100644 --- a/ovmobilebench/builders/openvino.py +++ b/ovmobilebench/builders/openvino.py @@ -1,6 +1,7 @@ """OpenVINO build system.""" import logging +import os from pathlib import Path from ovmobilebench.config.schema import OpenVINOConfig @@ -63,6 +64,7 @@ def _configure_cmake(self): str(self.build_dir), "-GNinja", f"-DCMAKE_BUILD_TYPE={self.config.build_type}", + f"-DOUTPUT_ROOT={os.getcwd()}/{self.build_dir}", ] # Android-specific configuration @@ -122,8 +124,8 @@ def _build(self): def get_artifacts(self) -> dict[str, Path]: """Get paths to build artifacts.""" artifacts = { - "benchmark_app": self.build_dir / "bin" / "arm64-v8a" / "benchmark_app", - "libs": self.build_dir / "bin" / "arm64-v8a", + "benchmark_app": self.build_dir / "bin" / "aarch64" / "Release" / "benchmark_app", + "libs": self.build_dir / "bin" / "aarch64" / "Release", } # Verify artifacts exist diff --git a/ovmobilebench/pipeline.py b/ovmobilebench/pipeline.py index 3d4becb..a71abbd 100644 --- a/ovmobilebench/pipeline.py +++ b/ovmobilebench/pipeline.py @@ -104,7 +104,9 @@ def deploy(self) -> None: logger.info("[DRY RUN] Would deploy to devices") return - bundle_path = self.artifacts_dir / "packages" / f"ovbundle_{self.config.project.run_id}" + bundle_path = ( + self.artifacts_dir / "packages" / f"ovbundle_{self.config.project.run_id}.tar.gz" + ) for serial in self.config.device.serials: logger.info(f"Deploying to device: {serial}") diff --git a/ovmobilebench/runners/benchmark.py b/ovmobilebench/runners/benchmark.py index c8f8b0e..c10b361 100644 --- a/ovmobilebench/runners/benchmark.py +++ b/ovmobilebench/runners/benchmark.py @@ -49,7 +49,7 @@ def run_single( } if rc != 0: - logger.error(f"Benchmark failed: {stderr}") + logger.error(f"Benchmark failed:\n{stdout}\n{stderr}") return result diff --git a/tests/builders/test_builders_openvino.py b/tests/builders/test_builders_openvino.py index cdbe119..3ba3210 100644 --- a/tests/builders/test_builders_openvino.py +++ b/tests/builders/test_builders_openvino.py @@ -286,8 +286,8 @@ def test_get_artifacts_success(self, mock_ensure_dir, build_config): artifacts = builder.get_artifacts() expected = { - "benchmark_app": Path("/build/dir/bin/arm64-v8a/benchmark_app"), - "libs": Path("/build/dir/bin/arm64-v8a"), + "benchmark_app": Path("/build/dir/bin/aarch64/Release/benchmark_app"), + "libs": Path("/build/dir/bin/aarch64/Release"), } assert artifacts == expected diff --git a/tests/runners/test_runners_benchmark.py b/tests/runners/test_runners_benchmark.py index 2148083..5be3329 100644 --- a/tests/runners/test_runners_benchmark.py +++ b/tests/runners/test_runners_benchmark.py @@ -301,7 +301,7 @@ def test_run_single_logs_error_on_failure(self, mock_device, run_config, benchma # Check that error was logged mock_logger.error.assert_called_once() error_call = mock_logger.error.call_args[0][0] - assert "Benchmark failed: benchmark failed" in error_call + assert "Benchmark failed:\n\nbenchmark failed" in error_call def test_run_matrix_logs_progress(self, mock_device, run_config): """Test that run_matrix logs progress information."""