introduce binderRpcBenchmark
VRRRRRRRRRRRRRRRRRMMMMMMM!!!
Some caveats:
- we are partially benchmarking the scheduler
- this is a microbenchmark
Results running on host (we'll want to watch and tune these on real
devices with core clamping and thermal throttling off):
-------------------------------------------------------------
Benchmark Time CPU Iterations
-------------------------------------------------------------
BM_getRootObject 45959 ns 39054 ns 18345
BM_pingTransaction 26128 ns 23360 ns 28705
BM_repeatString 394286 ns 200186 ns 3508
BM_repeatBinder 39357 ns 37437 ns 17705
Bug: 182940634
Test: run benchmark on host and on cuttlefish
Change-Id: I5084a00ddf207eaeb803da98587ca04df65add4d
diff --git a/libs/binder/tests/Android.bp b/libs/binder/tests/Android.bp
index afc4b1b..e39408c 100644
--- a/libs/binder/tests/Android.bp
+++ b/libs/binder/tests/Android.bp
@@ -151,6 +151,22 @@
require_root: true,
}
+cc_benchmark {
+ name: "binderRpcBenchmark",
+ defaults: ["binder_test_defaults"],
+ host_supported: true,
+ srcs: [
+ "binderRpcBenchmark.cpp",
+ "IBinderRpcBenchmark.aidl",
+ ],
+ shared_libs: [
+ "libbase",
+ "libbinder",
+ "liblog",
+ "libutils",
+ ],
+}
+
cc_test {
name: "binderThroughputTest",
defaults: ["binder_test_defaults"],