Microbenchmarks work with bazel
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0b593a9..e00c6b3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9903,6 +9903,7 @@
grpc_unsecure
gpr_test_util
gpr
+ grpc++_test_config
${_gRPC_GFLAGS_LIBRARIES}
)
diff --git a/Makefile b/Makefile
index 392c8f3..70a9d3c 100644
--- a/Makefile
+++ b/Makefile
@@ -13969,17 +13969,17 @@
else
-$(BINDIR)/$(CONFIG)/bm_fullstack_trickle: $(PROTOBUF_DEP) $(BM_FULLSTACK_TRICKLE_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_benchmark.a $(LIBDIR)/$(CONFIG)/libbenchmark.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/bm_fullstack_trickle: $(PROTOBUF_DEP) $(BM_FULLSTACK_TRICKLE_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_benchmark.a $(LIBDIR)/$(CONFIG)/libbenchmark.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a
$(E) "[LD] Linking $@"
$(Q) mkdir -p `dirname $@`
- $(Q) $(LDXX) $(LDFLAGS) $(BM_FULLSTACK_TRICKLE_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_benchmark.a $(LIBDIR)/$(CONFIG)/libbenchmark.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBSXX) $(LDLIBS_PROTOBUF) $(LDLIBS) $(LDLIBS_SECURE) $(GTEST_LIB) -o $(BINDIR)/$(CONFIG)/bm_fullstack_trickle
+ $(Q) $(LDXX) $(LDFLAGS) $(BM_FULLSTACK_TRICKLE_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_benchmark.a $(LIBDIR)/$(CONFIG)/libbenchmark.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a $(LDLIBSXX) $(LDLIBS_PROTOBUF) $(LDLIBS) $(LDLIBS_SECURE) $(GTEST_LIB) -o $(BINDIR)/$(CONFIG)/bm_fullstack_trickle
endif
endif
$(BM_FULLSTACK_TRICKLE_OBJS): CPPFLAGS += -Ithird_party/benchmark/include -DHAVE_POSIX_REGEX
-$(OBJDIR)/$(CONFIG)/test/cpp/microbenchmarks/bm_fullstack_trickle.o: $(LIBDIR)/$(CONFIG)/libgrpc_benchmark.a $(LIBDIR)/$(CONFIG)/libbenchmark.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(OBJDIR)/$(CONFIG)/test/cpp/microbenchmarks/bm_fullstack_trickle.o: $(LIBDIR)/$(CONFIG)/libgrpc_benchmark.a $(LIBDIR)/$(CONFIG)/libbenchmark.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a
deps_bm_fullstack_trickle: $(BM_FULLSTACK_TRICKLE_OBJS:.o=.dep)
diff --git a/build.yaml b/build.yaml
index d70bbe3..079a2ce 100644
--- a/build.yaml
+++ b/build.yaml
@@ -3619,6 +3619,7 @@
- grpc_unsecure
- gpr_test_util
- gpr
+ - grpc++_test_config
args:
- --benchmark_min_time=0
defaults: benchmark
diff --git a/test/cpp/microbenchmarks/BUILD b/test/cpp/microbenchmarks/BUILD
index 442da38..fc0294d 100644
--- a/test/cpp/microbenchmarks/BUILD
+++ b/test/cpp/microbenchmarks/BUILD
@@ -14,7 +14,7 @@
licenses(["notice"]) # Apache v2
-load("//bazel:grpc_build_system.bzl", "grpc_cc_test", "grpc_cc_library")
+load("//bazel:grpc_build_system.bzl", "grpc_cc_test", "grpc_cc_library", "grpc_cc_binary")
package(
features = [
@@ -33,6 +33,7 @@
grpc_cc_library(
name = "helpers",
+ testonly = 1,
srcs = ["helpers.cc"],
hdrs = [
"fullstack_context_mutators.h",
@@ -49,59 +50,68 @@
],
)
-grpc_cc_test(
+grpc_cc_binary(
name = "bm_closure",
+ testonly = 1,
srcs = ["bm_closure.cc"],
deps = [":helpers"],
)
-grpc_cc_test(
+grpc_cc_binary(
name = "bm_cq",
+ testonly = 1,
srcs = ["bm_cq.cc"],
deps = [":helpers"],
)
-grpc_cc_test(
+grpc_cc_binary(
name = "bm_cq_multiple_threads",
+ testonly = 1,
srcs = ["bm_cq_multiple_threads.cc"],
deps = [":helpers"],
)
-grpc_cc_test(
+grpc_cc_binary(
name = "bm_error",
+ testonly = 1,
srcs = ["bm_error.cc"],
deps = [":helpers"],
)
-grpc_cc_test(
+grpc_cc_binary(
name = "bm_fullstack_streaming_ping_pong",
+ testonly = 1,
srcs = ["bm_fullstack_streaming_ping_pong.cc"],
deps = [":helpers"],
)
-grpc_cc_test(
+grpc_cc_binary(
name = "bm_fullstack_streaming_pump",
+ testonly = 1,
srcs = ["bm_fullstack_streaming_pump.cc"],
deps = [":helpers"],
)
-grpc_cc_test(
+grpc_cc_binary(
name = "bm_fullstack_trickle",
+ testonly = 1,
srcs = ["bm_fullstack_trickle.cc"],
- deps = [":helpers"],
- external_deps = [
- "gflags",
+ deps = [
+ ":helpers",
+ "//test/cpp/util:test_config",
],
)
-grpc_cc_test(
+grpc_cc_binary(
name = "bm_fullstack_unary_ping_pong",
+ testonly = 1,
srcs = ["bm_fullstack_unary_ping_pong.cc"],
deps = [":helpers"],
)
-grpc_cc_test(
+grpc_cc_binary(
name = "bm_metadata",
+ testonly = 1,
srcs = ["bm_metadata.cc"],
deps = [":helpers"],
)
diff --git a/test/cpp/microbenchmarks/bm_fullstack_trickle.cc b/test/cpp/microbenchmarks/bm_fullstack_trickle.cc
index 5c44b97..135b471 100644
--- a/test/cpp/microbenchmarks/bm_fullstack_trickle.cc
+++ b/test/cpp/microbenchmarks/bm_fullstack_trickle.cc
@@ -26,6 +26,7 @@
#include "src/proto/grpc/testing/echo.grpc.pb.h"
#include "test/cpp/microbenchmarks/fullstack_context_mutators.h"
#include "test/cpp/microbenchmarks/fullstack_fixtures.h"
+#include "test/cpp/util/test_config.h"
extern "C" {
#include "src/core/ext/transport/chttp2/transport/chttp2_transport.h"
#include "src/core/ext/transport/chttp2/transport/internal.h"
@@ -420,6 +421,6 @@
int main(int argc, char** argv) {
::benchmark::Initialize(&argc, argv);
- ::google::ParseCommandLineFlags(&argc, &argv, false);
+ ::grpc::testing::InitTest(&argc, &argv, false);
::benchmark::RunSpecifiedBenchmarks();
}
diff --git a/tools/run_tests/generated/sources_and_headers.json b/tools/run_tests/generated/sources_and_headers.json
index 30fef6f..b84eef4 100644
--- a/tools/run_tests/generated/sources_and_headers.json
+++ b/tools/run_tests/generated/sources_and_headers.json
@@ -2775,6 +2775,7 @@
"benchmark",
"gpr",
"gpr_test_util",
+ "grpc++_test_config",
"grpc++_test_util_unsecure",
"grpc++_unsecure",
"grpc_benchmark",