[
https://issues.apache.org/jira/browse/HBASE-15971?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
stack updated HBASE-15971:
--------------------------
Attachment: hits.patched1.0.vs.unpatched1.0.vs.098.png
One difference is the sort in the scheduler by priority in SimpleRpcScheduler.
In 1.0 we do the following as our default scheduler:
{code}
CallPriorityComparator callPriority = new CallPriorityComparator(conf,
this.priority);
callExecutor = new BalancedQueueRpcExecutor("B.default", handlerCount,
numCallQueues,
conf, abortable, BoundedPriorityBlockingQueue.class, maxQueueLength,
callPriority);
{code}
In 0.98 we do:
{code}
callExecutor = new BalancedQueueRpcExecutor("B.Default", handlerCount,
numCallQueues, maxQueueLength, conf, abortable);
{code}
In the graph, you see three humps. The first is branch-1 with the same default
as 0.98. It does 290k with 24% idle. Next is branch-1 default. It does 210k
with 40% of cpu idle. The third hump is default 0.98 with 21% of cpu idle.
Loading for the record is workloadc using asynchbase (because it seems to be
able to put up more load):
{code}
% for i in `seq 0 24`; do for i in `cat /tmp/slaves`; do echo $i; ssh $i "sh -c
'nohup ./bin/run_ycsb.sh > /dev/null 2>&1 &'"; done; done
{code}
The script is attached (stolen from Busbey)
> Regression: Random Read/WorkloadC slower in 1.x than 0.98
> ---------------------------------------------------------
>
> Key: HBASE-15971
> URL: https://issues.apache.org/jira/browse/HBASE-15971
> Project: HBase
> Issue Type: Sub-task
> Components: rpc
> Reporter: stack
> Assignee: stack
> Priority: Critical
> Attachments: 098.hits.png, 098.png, HBASE-15971.branch-1.001.patch,
> branch-1.hits.png, branch-1.png, handlers.fp.png, hits.fp.png,
> hits.patched1.0.vs.unpatched1.0.vs.098.png, run_ycsb.sh
>
>
> branch-1 is slower than 0.98 doing YCSB random read/workloadC. It seems to be
> doing about 1/2 the throughput of 0.98.
> In branch-1, we have low handler occupancy compared to 0.98. Hacking in
> reader thread occupancy metric, is about the same in both. In parent issue,
> hacking out the scheduler, I am able to get branch-1 to go 3x faster so will
> dig in here.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)