qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/2] coroutine: dynamically scale pool size


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH 0/2] coroutine: dynamically scale pool size
Date: Fri, 4 Jul 2014 09:50:08 +0200
User-agent: Mutt/1.5.23 (2014-03-12)

On Fri, Jul 04, 2014 at 01:10:39PM +0800, Ming Lei wrote:
> On Thu, Jul 3, 2014 at 9:51 PM, Stefan Hajnoczi <address@hidden> wrote:
> > The coroutine pool reuses exited coroutines to make qemu_coroutine_create()
> > cheap.  The size of the pool is capped to prevent it from hogging memory 
> > after
> > a period of high coroutine activity.  Previously the max size was hardcoded 
> > to
> > 64 but this doesn't scale with guest size.
> >
> > A guest with lots of disks can do more parallel I/O and therefore requires a
> > larger coroutine pool size.  This series tries to solve the problem by 
> > scaling
> > pool size according to the number of drives.
> >
> > Ming: Please let me know if this eliminates the rt_sigprocmask system calls 
> > you
> > are seeing.  It should solve part of the performance regression you have 
> > seen
> > in qemu.git/master virtio-blk dataplane.
> 
> With both the two coroutine patches and the block plug&unplug patches,
> performance of qemu.git/master virtio-blk dataplane can recover to level of
> QEMU 2.0.

/me does the happy dance

Thanks for your great efforts in investigating and fixing the
regression!

Stefan

Attachment: pgpqyzRlUl5Xn.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]