Todd Lipcon has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/16249 )
Change subject: rpc: Change InboundCall arena to 4kB by default ...................................................................... rpc: Change InboundCall arena to 4kB by default This changes the initial block size of the protobuf::Arena used by InboundCall to 4kb instead of the 256 byte default. This reduces the number of allocations required per call significantly for larger requests/responses. 4kb was chosen as it's not so large that it would cause a lot of wasted memory (even with thousands of concurrent RPCs in the queue or being handled it's only <10MB total), but still large enough that it provided a substantial speedup. In the future we might try to keep a per-RPC estimate of how much arena size was actually used, and use that to pre-size the arena for future calls, but didn't seem worth the complexity for now. Benchmarked with: $ KUDU_ALLOW_SLOW_TESTS=1 ./build/latest/bin/table_locations-itest \ --gtest_filter=TableLocationsTest.GetTableLocationsBenchmark \ --rpc_num_service_threads=32 \ --benchmark_num_threads=48 Before: 59408 req/sec After: 74787 req/sec (1.25x) Alexey notes that there isn't any measurable speedup for smaller RPCs like in the GetTableSchema benchmark. Change-Id: Id20a3cbb5c2da1b6bfc519d852b90687297d4739 Reviewed-on: http://gerrit.cloudera.org:8080/16249 Reviewed-by: Alexey Serbin <aser...@cloudera.com> Tested-by: Kudu Jenkins --- M src/kudu/rpc/inbound_call.cc 1 file changed, 9 insertions(+), 2 deletions(-) Approvals: Alexey Serbin: Looks good to me, approved Kudu Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/16249 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Id20a3cbb5c2da1b6bfc519d852b90687297d4739 Gerrit-Change-Number: 16249 Gerrit-PatchSet: 3 Gerrit-Owner: Todd Lipcon <t...@apache.org> Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241) Gerrit-Reviewer: Todd Lipcon <t...@apache.org>