| # Copyright 2025 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/components.gni") |
| import("//build/testing/perf/test.gni") |
| |
| group("benchmarks") { |
| testonly = true |
| deps = [ ":ipc_comparison_benchmarks" ] |
| } |
| |
| executable("bin") { |
| testonly = true |
| output_name = "ipc_comparison_bench" |
| |
| sources = [ |
| "batch_case.cc", |
| "batch_case.h", |
| "config.h", |
| "main.cc", |
| "sequential_case.cc", |
| "sequential_case.h", |
| "stream_case.cc", |
| "stream_case.h", |
| "timer.h", |
| "vmo_case.cc", |
| "vmo_case.h", |
| ] |
| |
| deps = [ |
| "fidl:test.ipc_cpp", |
| "//sdk/lib/async-default", |
| "//sdk/lib/async-loop:async-loop-cpp", |
| "//sdk/lib/async-loop:async-loop-default", |
| "//sdk/lib/syslog/cpp", |
| "//zircon/system/ulib/perftest", |
| ] |
| } |
| |
| fuchsia_test_component("component") { |
| component_name = "ipc_comparison_bench" |
| manifest = "meta/ipc_comparison_bench.cml" |
| deps = [ ":bin" ] |
| } |
| |
| fuchsia_test_package("package") { |
| package_name = "ipc_comparison_bench" |
| test_components = [ ":component" ] |
| } |
| |
| fuchsia_component_perf_test("ipc_comparison_benchmarks") { |
| package = ":package" |
| package_name = "ipc_comparison_bench" |
| component_name = "ipc_comparison_bench" |
| expected_metric_names_filepath = "//src/tests/end_to_end/perf/expected_metric_names/fuchsia.ipc.comparison.txt" |
| results_path_test_arg = "--out" |
| |
| environments = performance_testing_environments |
| } |