[sheepdog] [PATCH 0/3] work: implement a dynamically changing thread pool

MORITA Kazutaka morita.kazutaka at lab.ntt.co.jp
Mon Oct 22 09:46:35 CEST 2012


At Mon, 22 Oct 2012 15:35:46 +0800,
Liu Yuan wrote:
> 
> On 10/22/2012 02:50 PM, Liu Yuan wrote:
> > On 10/22/2012 02:43 PM, MORITA Kazutaka wrote:
> >> I think of trying it, but I wish more users would test it too.
> > 
> > I have tested it on my laptop and get the similar result.
> > 
> > What I am only concerned is that if pthread signal & wakeup use a signal
> > wakeup queue instead of multi-queues, the wakeup itself would be huge
> > bottleneck. I'll try to figure it out what pthread signal use. For
> > pthread_create, which use clone() sys call that scale well on SMP machine.
> > 
> 
> pthread signal use Futex, it might not be a scaling problem. But the new
> queue_work() are serialized by a mutex (cond_mutex), so probably your
> patch set won't perform as well as single IO source against heavy
> multiple IO sources, which is the normal use case?

Processing parallel I/O is more common.  I'll try to do the benchmark
and improve this patch if it doesn't show a good performance.

Thanks,

Kazutaka



More information about the sheepdog mailing list