You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@kudu.apache.org by "Todd Lipcon (Code Review)" <ge...@cloudera.org> on 2017/11/06 04:39:09 UTC

[kudu-CR] rpc: fix service lookup to use the proper lock type

Hello Alexey Serbin,

I'd like you to do a code review. Please visit

    http://gerrit.cloudera.org:8080/8478

to review the following change.


Change subject: rpc: fix service lookup to use the proper lock type
......................................................................

rpc: fix service lookup to use the proper lock type

Looking up the RPC service in the service map was using an exclusive
lock rather than a per-CPU read-lock.

Fixing this yielded a ~5% improvement on the average throughput
of rpc-bench. I ran:

rpc-bench --server-reactors 96 --async-call-concurrency 100 \
  -worker-threads 40 -client-threads 48 -run-seconds 1 \
  --gtest_filter=\*Async --gtest_repeat=100 2>&1 | tee /tmp/log

before and after the change. Running 100 short benchmarks is preferable
to a long one since this benchmark has quite a bit of variability
depending on reactor thread hashing, etc. I grepped out the reqs/sec
number and then ran a t-test using R:

data:  d.before and d.after
t = -4.538, df = 165.27, p-value = 1.088e-05
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -59048.87 -23244.07
sample estimates:
mean of x mean of y
 785314.9  826461.4

Special thanks to Sergei Politov from Yugabyte for finding this.

Change-Id: I871765dffc5208dbdfc6b7f9f7fa2160611631b9
---
M src/kudu/rpc/messenger.cc
1 file changed, 1 insertion(+), 1 deletion(-)



  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/78/8478/1
-- 
To view, visit http://gerrit.cloudera.org:8080/8478
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I871765dffc5208dbdfc6b7f9f7fa2160611631b9
Gerrit-Change-Number: 8478
Gerrit-PatchSet: 1
Gerrit-Owner: Todd Lipcon <to...@apache.org>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>

[kudu-CR] rpc: fix service lookup to use the proper lock type

Posted by "Todd Lipcon (Code Review)" <ge...@cloudera.org>.
Todd Lipcon has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/8478 )

Change subject: rpc: fix service lookup to use the proper lock type
......................................................................

rpc: fix service lookup to use the proper lock type

Looking up the RPC service in the service map was using an exclusive
lock rather than a per-CPU read-lock.

Fixing this yielded a ~5% improvement on the average throughput
of rpc-bench. I ran:

rpc-bench --server-reactors 96 --async-call-concurrency 100 \
  -worker-threads 40 -client-threads 48 -run-seconds 1 \
  --gtest_filter=\*Async --gtest_repeat=100 2>&1 | tee /tmp/log

before and after the change. Running 100 short benchmarks is preferable
to a long one since this benchmark has quite a bit of variability
depending on reactor thread hashing, etc. I grepped out the reqs/sec
number and then ran a t-test using R:

data:  d.before and d.after
t = -4.538, df = 165.27, p-value = 1.088e-05
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -59048.87 -23244.07
sample estimates:
mean of x mean of y
 785314.9  826461.4

Special thanks to Sergei Politov from Yugabyte for finding this.

Change-Id: I871765dffc5208dbdfc6b7f9f7fa2160611631b9
Reviewed-on: http://gerrit.cloudera.org:8080/8478
Tested-by: Kudu Jenkins
Reviewed-by: Alexey Serbin <as...@cloudera.com>
---
M src/kudu/rpc/messenger.cc
1 file changed, 1 insertion(+), 1 deletion(-)

Approvals:
  Kudu Jenkins: Verified
  Alexey Serbin: Looks good to me, approved

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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I871765dffc5208dbdfc6b7f9f7fa2160611631b9
Gerrit-Change-Number: 8478
Gerrit-PatchSet: 2
Gerrit-Owner: Todd Lipcon <to...@apache.org>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon <to...@apache.org>

[kudu-CR] rpc: fix service lookup to use the proper lock type

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/8478 )

Change subject: rpc: fix service lookup to use the proper lock type
......................................................................


Patch Set 1: Code-Review+2


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I871765dffc5208dbdfc6b7f9f7fa2160611631b9
Gerrit-Change-Number: 8478
Gerrit-PatchSet: 1
Gerrit-Owner: Todd Lipcon <to...@apache.org>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Comment-Date: Mon, 06 Nov 2017 05:20:50 +0000
Gerrit-HasComments: No