diff --git a/tools/run_tests/performance/scenario_config.py b/tools/run_tests/performance/scenario_config.py index 21ed19916f9..395c8df25e0 100644 --- a/tools/run_tests/performance/scenario_config.py +++ b/tools/run_tests/performance/scenario_config.py @@ -25,6 +25,9 @@ SCALABLE = "scalable" INPROC = "inproc" SWEEP = "sweep" PSM = "psm" +# A small superset of the benchmarks required to produce +# https://grafana-dot-grpc-testing.appspot.com/ +DASHBOARD = "dashboard" DEFAULT_CATEGORIES = (SCALABLE, SMOKETEST) SECURE_SECARGS = { @@ -527,7 +530,7 @@ class CXXLanguage(Language): minimal_stack=not secure, categories=smoketest_categories + inproc_categories - + [SCALABLE], + + [SCALABLE, DASHBOARD], ) for rpc_type in [ @@ -536,6 +539,9 @@ class CXXLanguage(Language): "streaming_from_client", "streaming_from_server", ]: + maybe_dashboard = ( + [DASHBOARD] if rpc_type in ("unary", "streaming") else [] + ) for synchronicity in ["sync", "async"]: yield _ping_pong_scenario( "cpp_protobuf_%s_%s_ping_pong_%s" @@ -546,6 +552,7 @@ class CXXLanguage(Language): async_server_threads=1, minimal_stack=not secure, secure=secure, + categories=list(DEFAULT_CATEGORIES) + maybe_dashboard, ) for size in geometric_progression( @@ -576,6 +583,11 @@ class CXXLanguage(Language): # see b/198275705 maybe_scalable = [SWEEP] + maybe_dashboard = ( + [DASHBOARD] + if rpc_type in ("unary", "streaming") + else [] + ) yield _ping_pong_scenario( "cpp_protobuf_%s_%s_qps_unconstrained_%s" % (synchronicity, rpc_type, secstr), @@ -587,7 +599,9 @@ class CXXLanguage(Language): minimal_stack=not secure, server_threads_per_cq=2, client_threads_per_cq=2, - categories=inproc_categories + maybe_scalable, + categories=inproc_categories + + maybe_scalable + + maybe_dashboard, ) # TODO(vjpai): Re-enable this test. It has a lot of timeouts diff --git a/tools/run_tests/performance/scenario_config_exporter.py b/tools/run_tests/performance/scenario_config_exporter.py index baa41f47e34..436557f5691 100755 --- a/tools/run_tests/performance/scenario_config_exporter.py +++ b/tools/run_tests/performance/scenario_config_exporter.py @@ -188,7 +188,15 @@ def main() -> None: argp.add_argument( "--category", default="all", - choices=["all", "inproc", "scalable", "smoketest", "sweep", "psm"], + choices=[ + "all", + "inproc", + "scalable", + "smoketest", + "sweep", + "psm", + "dashboard", + ], help="Select scenarios for a category of tests.", ) argp.add_argument(