At Mon, 22 Oct 2012 16:46:35 +0900, MORITA Kazutaka wrote: > > 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.
I tested multiple I/Os with a single machine, but my patch still showed a better performance. I ran the following command, which can cause 500 I/O requests at the same time: $. /script/vditest test -w -B 4096 -a The current implementation shows about 3600 IOPS, and my patch does about 3900 IOPS. I'll try more tests, but my patch looks better for now. Thanks, Kazutaka -- sheepdog mailing list [email protected] http://lists.wpkg.org/mailman/listinfo/sheepdog
