xref: /aosp_15_r20/external/grpc-grpc/test/cpp/qps/BUILD (revision cc02d7e222339f7a4f6ba5f422e6413f4bd931f2)
1*cc02d7e2SAndroid Build Coastguard Worker# Copyright 2017 gRPC authors.
2*cc02d7e2SAndroid Build Coastguard Worker#
3*cc02d7e2SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
4*cc02d7e2SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
5*cc02d7e2SAndroid Build Coastguard Worker# You may obtain a copy of the License at
6*cc02d7e2SAndroid Build Coastguard Worker#
7*cc02d7e2SAndroid Build Coastguard Worker#     http://www.apache.org/licenses/LICENSE-2.0
8*cc02d7e2SAndroid Build Coastguard Worker#
9*cc02d7e2SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*cc02d7e2SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
11*cc02d7e2SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*cc02d7e2SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
13*cc02d7e2SAndroid Build Coastguard Worker# limitations under the License.
14*cc02d7e2SAndroid Build Coastguard Worker
15*cc02d7e2SAndroid Build Coastguard Workerload("//bazel:custom_exec_properties.bzl", "LARGE_MACHINE")
16*cc02d7e2SAndroid Build Coastguard Workerload("//bazel:grpc_build_system.bzl", "grpc_cc_binary", "grpc_cc_library", "grpc_cc_test", "grpc_package", "grpc_py_binary")
17*cc02d7e2SAndroid Build Coastguard Workerload("//test/cpp/qps:qps_benchmark_script.bzl", "json_run_localhost_batch", "qps_json_driver_batch")
18*cc02d7e2SAndroid Build Coastguard Worker
19*cc02d7e2SAndroid Build Coastguard Workerlicenses(["notice"])
20*cc02d7e2SAndroid Build Coastguard Worker
21*cc02d7e2SAndroid Build Coastguard Workergrpc_package(name = "test/cpp/qps")
22*cc02d7e2SAndroid Build Coastguard Worker
23*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_library(
24*cc02d7e2SAndroid Build Coastguard Worker    name = "parse_json",
25*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["parse_json.cc"],
26*cc02d7e2SAndroid Build Coastguard Worker    hdrs = ["parse_json.h"],
27*cc02d7e2SAndroid Build Coastguard Worker    external_deps = ["protobuf"],
28*cc02d7e2SAndroid Build Coastguard Worker    deps = ["//:grpc++"],
29*cc02d7e2SAndroid Build Coastguard Worker)
30*cc02d7e2SAndroid Build Coastguard Worker
31*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_library(
32*cc02d7e2SAndroid Build Coastguard Worker    name = "qps_worker_impl",
33*cc02d7e2SAndroid Build Coastguard Worker    srcs = [
34*cc02d7e2SAndroid Build Coastguard Worker        "client_async.cc",
35*cc02d7e2SAndroid Build Coastguard Worker        "client_callback.cc",
36*cc02d7e2SAndroid Build Coastguard Worker        "client_sync.cc",
37*cc02d7e2SAndroid Build Coastguard Worker        "qps_server_builder.cc",
38*cc02d7e2SAndroid Build Coastguard Worker        "qps_worker.cc",
39*cc02d7e2SAndroid Build Coastguard Worker        "server_async.cc",
40*cc02d7e2SAndroid Build Coastguard Worker        "server_callback.cc",
41*cc02d7e2SAndroid Build Coastguard Worker        "server_sync.cc",
42*cc02d7e2SAndroid Build Coastguard Worker    ],
43*cc02d7e2SAndroid Build Coastguard Worker    hdrs = [
44*cc02d7e2SAndroid Build Coastguard Worker        "client.h",
45*cc02d7e2SAndroid Build Coastguard Worker        "qps_server_builder.h",
46*cc02d7e2SAndroid Build Coastguard Worker        "qps_worker.h",
47*cc02d7e2SAndroid Build Coastguard Worker        "server.h",
48*cc02d7e2SAndroid Build Coastguard Worker    ],
49*cc02d7e2SAndroid Build Coastguard Worker    deps = [
50*cc02d7e2SAndroid Build Coastguard Worker        ":histogram",
51*cc02d7e2SAndroid Build Coastguard Worker        ":interarrival",
52*cc02d7e2SAndroid Build Coastguard Worker        ":usage_timer",
53*cc02d7e2SAndroid Build Coastguard Worker        "//:grpc",
54*cc02d7e2SAndroid Build Coastguard Worker        "//:grpc++",
55*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:benchmark_service_proto",
56*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:control_proto",
57*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:payloads_proto",
58*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:worker_service_proto",
59*cc02d7e2SAndroid Build Coastguard Worker        "//test/core/end2end:ssl_test_data",
60*cc02d7e2SAndroid Build Coastguard Worker        "//test/core/util:grpc_test_util",
61*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_config",
62*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_util",
63*cc02d7e2SAndroid Build Coastguard Worker    ],
64*cc02d7e2SAndroid Build Coastguard Worker)
65*cc02d7e2SAndroid Build Coastguard Worker
66*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_library(
67*cc02d7e2SAndroid Build Coastguard Worker    name = "driver_impl",
68*cc02d7e2SAndroid Build Coastguard Worker    srcs = [
69*cc02d7e2SAndroid Build Coastguard Worker        "driver.cc",
70*cc02d7e2SAndroid Build Coastguard Worker        "report.cc",
71*cc02d7e2SAndroid Build Coastguard Worker    ],
72*cc02d7e2SAndroid Build Coastguard Worker    hdrs = [
73*cc02d7e2SAndroid Build Coastguard Worker        "driver.h",
74*cc02d7e2SAndroid Build Coastguard Worker        "report.h",
75*cc02d7e2SAndroid Build Coastguard Worker    ],
76*cc02d7e2SAndroid Build Coastguard Worker    deps = [
77*cc02d7e2SAndroid Build Coastguard Worker        ":histogram",
78*cc02d7e2SAndroid Build Coastguard Worker        ":parse_json",
79*cc02d7e2SAndroid Build Coastguard Worker        ":qps_worker_impl",
80*cc02d7e2SAndroid Build Coastguard Worker        "//:grpc++",
81*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:control_proto",
82*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:messages_proto",
83*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:report_qps_scenario_service_proto",
84*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:worker_service_proto",
85*cc02d7e2SAndroid Build Coastguard Worker        "//test/core/util:grpc_test_util",
86*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_util",
87*cc02d7e2SAndroid Build Coastguard Worker    ],
88*cc02d7e2SAndroid Build Coastguard Worker)
89*cc02d7e2SAndroid Build Coastguard Worker
90*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_library(
91*cc02d7e2SAndroid Build Coastguard Worker    name = "benchmark_config",
92*cc02d7e2SAndroid Build Coastguard Worker    srcs = [
93*cc02d7e2SAndroid Build Coastguard Worker        "benchmark_config.cc",
94*cc02d7e2SAndroid Build Coastguard Worker    ],
95*cc02d7e2SAndroid Build Coastguard Worker    hdrs = [
96*cc02d7e2SAndroid Build Coastguard Worker        "benchmark_config.h",
97*cc02d7e2SAndroid Build Coastguard Worker    ],
98*cc02d7e2SAndroid Build Coastguard Worker    external_deps = [
99*cc02d7e2SAndroid Build Coastguard Worker        "absl/flags:flag",
100*cc02d7e2SAndroid Build Coastguard Worker    ],
101*cc02d7e2SAndroid Build Coastguard Worker    deps = [
102*cc02d7e2SAndroid Build Coastguard Worker        ":driver_impl",
103*cc02d7e2SAndroid Build Coastguard Worker        ":histogram",
104*cc02d7e2SAndroid Build Coastguard Worker        "//:grpc++",
105*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:control_proto",
106*cc02d7e2SAndroid Build Coastguard Worker    ],
107*cc02d7e2SAndroid Build Coastguard Worker)
108*cc02d7e2SAndroid Build Coastguard Worker
109*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_library(
110*cc02d7e2SAndroid Build Coastguard Worker    name = "histogram",
111*cc02d7e2SAndroid Build Coastguard Worker    hdrs = [
112*cc02d7e2SAndroid Build Coastguard Worker        "histogram.h",
113*cc02d7e2SAndroid Build Coastguard Worker        "stats.h",
114*cc02d7e2SAndroid Build Coastguard Worker    ],
115*cc02d7e2SAndroid Build Coastguard Worker    deps = [
116*cc02d7e2SAndroid Build Coastguard Worker        "//src/proto/grpc/testing:stats_proto",
117*cc02d7e2SAndroid Build Coastguard Worker        "//test/core/util:grpc_test_util",
118*cc02d7e2SAndroid Build Coastguard Worker    ],
119*cc02d7e2SAndroid Build Coastguard Worker)
120*cc02d7e2SAndroid Build Coastguard Worker
121*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_binary(
122*cc02d7e2SAndroid Build Coastguard Worker    name = "qps_json_driver",
123*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["qps_json_driver.cc"],
124*cc02d7e2SAndroid Build Coastguard Worker    external_deps = [
125*cc02d7e2SAndroid Build Coastguard Worker        "absl/flags:flag",
126*cc02d7e2SAndroid Build Coastguard Worker    ],
127*cc02d7e2SAndroid Build Coastguard Worker    deps = [
128*cc02d7e2SAndroid Build Coastguard Worker        ":benchmark_config",
129*cc02d7e2SAndroid Build Coastguard Worker        ":driver_impl",
130*cc02d7e2SAndroid Build Coastguard Worker        "//:grpc++",
131*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_config",
132*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_util",
133*cc02d7e2SAndroid Build Coastguard Worker    ],
134*cc02d7e2SAndroid Build Coastguard Worker)
135*cc02d7e2SAndroid Build Coastguard Worker
136*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_test(
137*cc02d7e2SAndroid Build Coastguard Worker    name = "inproc_sync_unary_ping_pong_test",
138*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["inproc_sync_unary_ping_pong_test.cc"],
139*cc02d7e2SAndroid Build Coastguard Worker    deps = [
140*cc02d7e2SAndroid Build Coastguard Worker        ":benchmark_config",
141*cc02d7e2SAndroid Build Coastguard Worker        ":driver_impl",
142*cc02d7e2SAndroid Build Coastguard Worker        "//:grpc++",
143*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_config",
144*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_util",
145*cc02d7e2SAndroid Build Coastguard Worker    ],
146*cc02d7e2SAndroid Build Coastguard Worker)
147*cc02d7e2SAndroid Build Coastguard Worker
148*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_library(
149*cc02d7e2SAndroid Build Coastguard Worker    name = "interarrival",
150*cc02d7e2SAndroid Build Coastguard Worker    hdrs = ["interarrival.h"],
151*cc02d7e2SAndroid Build Coastguard Worker    deps = ["//:grpc++"],
152*cc02d7e2SAndroid Build Coastguard Worker)
153*cc02d7e2SAndroid Build Coastguard Worker
154*cc02d7e2SAndroid Build Coastguard Workerqps_json_driver_batch()
155*cc02d7e2SAndroid Build Coastguard Worker
156*cc02d7e2SAndroid Build Coastguard Workerjson_run_localhost_batch()
157*cc02d7e2SAndroid Build Coastguard Worker
158*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_test(
159*cc02d7e2SAndroid Build Coastguard Worker    name = "qps_interarrival_test",
160*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["qps_interarrival_test.cc"],
161*cc02d7e2SAndroid Build Coastguard Worker    uses_event_engine = False,
162*cc02d7e2SAndroid Build Coastguard Worker    uses_polling = False,
163*cc02d7e2SAndroid Build Coastguard Worker    deps = [
164*cc02d7e2SAndroid Build Coastguard Worker        ":histogram",
165*cc02d7e2SAndroid Build Coastguard Worker        ":interarrival",
166*cc02d7e2SAndroid Build Coastguard Worker        "//test/core/util:grpc_test_util_base",
167*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_config",
168*cc02d7e2SAndroid Build Coastguard Worker    ],
169*cc02d7e2SAndroid Build Coastguard Worker)
170*cc02d7e2SAndroid Build Coastguard Worker
171*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_test(
172*cc02d7e2SAndroid Build Coastguard Worker    name = "qps_openloop_test",
173*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["qps_openloop_test.cc"],
174*cc02d7e2SAndroid Build Coastguard Worker    exec_properties = LARGE_MACHINE,
175*cc02d7e2SAndroid Build Coastguard Worker    tags = ["no_windows"],  # LARGE_MACHINE is not configured for windows RBE
176*cc02d7e2SAndroid Build Coastguard Worker    deps = [
177*cc02d7e2SAndroid Build Coastguard Worker        ":benchmark_config",
178*cc02d7e2SAndroid Build Coastguard Worker        ":driver_impl",
179*cc02d7e2SAndroid Build Coastguard Worker        ":qps_worker_impl",
180*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_config",
181*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_util",
182*cc02d7e2SAndroid Build Coastguard Worker    ],
183*cc02d7e2SAndroid Build Coastguard Worker)
184*cc02d7e2SAndroid Build Coastguard Worker
185*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_test(
186*cc02d7e2SAndroid Build Coastguard Worker    name = "secure_sync_unary_ping_pong_test",
187*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["secure_sync_unary_ping_pong_test.cc"],
188*cc02d7e2SAndroid Build Coastguard Worker    deps = [
189*cc02d7e2SAndroid Build Coastguard Worker        ":benchmark_config",
190*cc02d7e2SAndroid Build Coastguard Worker        ":driver_impl",
191*cc02d7e2SAndroid Build Coastguard Worker        "//:grpc++",
192*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_config",
193*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_util",
194*cc02d7e2SAndroid Build Coastguard Worker    ],
195*cc02d7e2SAndroid Build Coastguard Worker)
196*cc02d7e2SAndroid Build Coastguard Worker
197*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_library(
198*cc02d7e2SAndroid Build Coastguard Worker    name = "usage_timer",
199*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["usage_timer.cc"],
200*cc02d7e2SAndroid Build Coastguard Worker    hdrs = ["usage_timer.h"],
201*cc02d7e2SAndroid Build Coastguard Worker    deps = ["//:gpr"],
202*cc02d7e2SAndroid Build Coastguard Worker)
203*cc02d7e2SAndroid Build Coastguard Worker
204*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_binary(
205*cc02d7e2SAndroid Build Coastguard Worker    name = "qps_worker",
206*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["worker.cc"],
207*cc02d7e2SAndroid Build Coastguard Worker    external_deps = [
208*cc02d7e2SAndroid Build Coastguard Worker        "absl/flags:flag",
209*cc02d7e2SAndroid Build Coastguard Worker    ],
210*cc02d7e2SAndroid Build Coastguard Worker    deps = [
211*cc02d7e2SAndroid Build Coastguard Worker        ":qps_worker_impl",
212*cc02d7e2SAndroid Build Coastguard Worker        "//:grpc++",
213*cc02d7e2SAndroid Build Coastguard Worker        "//test/core/util:grpc_test_util",
214*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_config",
215*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_util",
216*cc02d7e2SAndroid Build Coastguard Worker    ],
217*cc02d7e2SAndroid Build Coastguard Worker)
218*cc02d7e2SAndroid Build Coastguard Worker
219*cc02d7e2SAndroid Build Coastguard Workergrpc_py_binary(
220*cc02d7e2SAndroid Build Coastguard Worker    name = "scenario_runner",
221*cc02d7e2SAndroid Build Coastguard Worker    testonly = True,
222*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["scenario_runner.py"],
223*cc02d7e2SAndroid Build Coastguard Worker    data = ["scenario_runner_cc"],
224*cc02d7e2SAndroid Build Coastguard Worker    python_version = "PY3",
225*cc02d7e2SAndroid Build Coastguard Worker)
226*cc02d7e2SAndroid Build Coastguard Worker
227*cc02d7e2SAndroid Build Coastguard Workergrpc_cc_binary(
228*cc02d7e2SAndroid Build Coastguard Worker    name = "scenario_runner_cc",
229*cc02d7e2SAndroid Build Coastguard Worker    srcs = ["scenario_runner.cc"],
230*cc02d7e2SAndroid Build Coastguard Worker    external_deps = [
231*cc02d7e2SAndroid Build Coastguard Worker        "absl/flags:flag",
232*cc02d7e2SAndroid Build Coastguard Worker    ],
233*cc02d7e2SAndroid Build Coastguard Worker    deps = [
234*cc02d7e2SAndroid Build Coastguard Worker        ":benchmark_config",
235*cc02d7e2SAndroid Build Coastguard Worker        ":driver_impl",
236*cc02d7e2SAndroid Build Coastguard Worker        "//:grpc++",
237*cc02d7e2SAndroid Build Coastguard Worker        "//test/core/util:grpc_test_util",
238*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_config",
239*cc02d7e2SAndroid Build Coastguard Worker        "//test/cpp/util:test_util",
240*cc02d7e2SAndroid Build Coastguard Worker    ],
241*cc02d7e2SAndroid Build Coastguard Worker)
242