[ 
https://issues.apache.org/jira/browse/HADOOP-10278?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13890056#comment-13890056
 ] 

Chris Li commented on HADOOP-10278:
-----------------------------------

[~daryn]

Implemented and benchmarked it. All around less clutter and custom locking 
required. I do like this solution.

Benchmarked performance:
using RPCCallBenchmark -s 4 -c 10
Average server time increased by 1.5% (0.05 p value, 
1-tailed/2-sample-equal-variance t test)
Other results were insignificant

If the performance hit is acceptable, I think this solution is easier, and I 
can re-submit this patch.

-----

Raw results
Group   calls/s Server CPU      Client CPU
Poll    32356.0 48018   47837
Poll    31497.0 46129   44052
Poll    32456.0 46400   43643
Poll    31253.0 46343   44152
Poll    31572.0 46241   44123
Take    30831.0 46521   45315
Take    31764.0 45549   43827
Take    32534.0 45949   44028
Take    32153.0 45699   44215
Take    31455.0 45823   43926

T Tests:
Throughput      0.419851632864817
Server CPU      0.0509472764018302
Client CPU      0.279864716054668

> Refactor to make CallQueue pluggable
> ------------------------------------
>
>                 Key: HADOOP-10278
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10278
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: ipc
>            Reporter: Chris Li
>         Attachments: HADOOP-10278.patch, subtask1.3.patch, subtask1.4.patch, 
> subtask1.5.patch
>
>
> * Refactor CallQueue into an interface, base, and default implementation that 
> matches today's behavior
> * Make the call queue impl configurable, keyed on port so that we minimize 
> coupling



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to