Alexey Serbin has submitted this change and it was merged. ( 
http://gerrit.cloudera.org:8080/24329 )

Change subject: KUDU-1865 reduce cross-thread allocations in RPC (part 2)
......................................................................

KUDU-1865 reduce cross-thread allocations in RPC (part 2)

With this update, the OutboundCall::call_response_ member field
of the CallResponse type is no longer allocated on the heap.  Instead,
it's allocated on the stack and the move semantics is used to pass
the object around.

I ran the same test scenario as in the 'part 1' to trace the asymmetry
in tcmalloc's cross-thread allocations/deallocations and confirmed
that the entries related to CallResponse were gone.

I also ran the test scenario to account for the total number of updates
in tcmalloc's central free lists.  This patch results in ~1.07x times
reduction in the total number of updates in the central free lists with
the default setting of TCMALLOC_MAX_TOTAL_THREAD_CACHE_BYTES:

  before: 367
  after:  341

The requests-per-second performance hasn't changed per reports from
the RpcBench.BenchmarkCalls scenario.

Change-Id: Ia5b8771f4092d5e566e91b7c7fdbf560c5fd3851
Reviewed-on: http://gerrit.cloudera.org:8080/24329
Tested-by: Alexey Serbin <[email protected]>
Reviewed-by: Michael Smith <[email protected]>
Reviewed-by: Abhishek Chennaka <[email protected]>
---
M src/kudu/rpc/connection.cc
M src/kudu/rpc/outbound_call.cc
M src/kudu/rpc/outbound_call.h
M src/kudu/rpc/rpc_controller.cc
4 files changed, 77 insertions(+), 78 deletions(-)

Approvals:
  Alexey Serbin: Verified
  Michael Smith: Looks good to me, but someone else must approve
  Abhishek Chennaka: Looks good to me, approved

--
To view, visit http://gerrit.cloudera.org:8080/24329
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Ia5b8771f4092d5e566e91b7c7fdbf560c5fd3851
Gerrit-Change-Number: 24329
Gerrit-PatchSet: 5
Gerrit-Owner: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Abhishek Chennaka <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Joe McDonnell <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Michael Smith <[email protected]>
Gerrit-Reviewer: Zoltan Martonka <[email protected]>

Reply via email to