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

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

Updated tests for using a rwlock:

Test groups:
        polltimeout_rwlock with 363 samples - uses a ReentrantReadWriteLock to 
protect against queue swaps (as a necessity, it also replaces queue.put() with 
queue.offer()
        polltimeout_longer with 362 samples - same as above
        trunk with 362 samples


Interestingly, the rwlock version uses less of the server's cpu than with just 
a poll. However it decreases throughput by half a percent.

{noformat}
=================
Test: client
=================
        *** polltimeout_rwlock vs polltimeout_longer
                Changed by 0.43%, p=0.00540
         polltimeout_rwlock vs trunk
                Changed by -0.13%, p=0.44964
        *** polltimeout_longer vs trunk
                Changed by -0.56%, p=0.00084

=================
Test: throughput
=================
        *** polltimeout_rwlock vs polltimeout_longer
                Changed by 0.46%, p=0.00006
        *** polltimeout_rwlock vs trunk
                Changed by 0.60%, p=0.00000
         polltimeout_longer vs trunk
                Changed by 0.13%, p=0.23419

=================
Test: server
=================
        *** polltimeout_rwlock vs polltimeout_longer
                Changed by 0.37%, p=0.03796
        *** polltimeout_rwlock vs trunk
                Changed by -1.72%, p=0.00000
        *** polltimeout_longer vs trunk
                Changed by -2.09%, p=0.00000



ttest assumes 2 sample same variance, 2 tailed.
*** marks where p value reaches significance (<0.05)
{noformat}

> 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-atomicref.patch, 
> HADOOP-10278-atomicref.patch, HADOOP-10278-atomicref.patch, HADOOP-10278.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