Re: [ANNOUNCE] Native Linux KVM tool v2
From: Ingo Molnar
Date: Thu Jun 16 2011 - 04:08:34 EST
* Pekka Enberg <penberg@xxxxxxxxxx> wrote:
> Hi Ingo,
>
> On Thu, Jun 16, 2011 at 10:24 AM, Ingo Molnar <mingo@xxxxxxx> wrote:
> > - executing AIO in the vcpu thread eats up precious vcpu execution
> > time: combined QCOW2 throughput would be limited by a single
> > core's performance, and any time spent on QCOW2 processing would
> > not be spent running the guest CPU. (In such a model we certainly
> > couldnt do more intelligent, CPU-intense storage solutions like on
> > the fly compress/decompress of QCOW2 data.)
>
> Most image formats have optional on-the-fly
> compression/decompression so we'd need to keep the current I/O
> thread scheme anyway.
Yeah - although high-performance setups will probably not use that.
> > I'd only consider KAIO it if it provides some *real* measurable
> > performance advantage of at least 10% in some important usecase.
> > A few percent probably wouldnt be worth it.
>
> I've only been following AIO kernel development from the sidelines
> but I really haven't seen any reports of significant gains over
> read()/write() from a thread pool. Are there any such reports?
I've measured such gains myself a couple of years ago, using an
Oracle DB and a well-known OLTP benchmark, on a 64-way system.
I also profiled+tuned the kernel-side AIO implementation to be more
scalable so i'm reasonably certain that the gains exist, and they
were above 10%.
So the kaio gains existed back then but they needed sane userspace
(POSIX AIO with signal notification sucks) and needed a well-tuned
in-kernel implementation as well. (the current AIO code might have
bitrotted)
Also, synchronous read()/write() [and scheduler() :-)] scalability
improvements have not stopped in the past few years so the
performance picture might have shifted in favor of a thread pool.
Thanks,
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/