Re: [patch 0/3] kvm tool: Serial emulation overhaul
From: Sasha Levin
Date: Mon Dec 12 2011 - 12:40:31 EST
On Mon, 2011-12-12 at 12:12 +0100, Ingo Molnar wrote:
> * Sasha Levin <levinsasha928@xxxxxxxxx> wrote:
>
> > 50k cycles for every single byte is pretty much as good as it
> > will get with serial console. See slide #5 in Marcelo's KVM
> > Forum 2010 presentation[1] where he timed a heavyweight exit
> > to about 40k cycles.
>
> > [1]
> > http://www.linux-kvm.org/wiki/images/e/ea/2010-forum-mtosatti_walkthrough_entry_exit.pdf
>
> But what we do here is a PIO exit. That, according to Marcelo's
> measurements, is about 10K cycles, back to back. [*]
>
> So where does the extra overhead come from?
>
> We shouldn't care that there's virtio-console - the goal of
> tools/kvm it speed everything up as much as possible, so we
> should not jump to the next IO abstraction unless we know where
> every cycle was spent with simpler IO models ...
>
> Thanks,
>
> Ingo
>
> [*] Also, those 10K cycles include some significant Qemu
> overhead - a couple of thousand cycles - that should be much
> lower in the tools/kvm case.
No, everything on slide 5 is part of a PIO exit. Starting from 'out' and
up to until it's back to the guest. A total of over 40k cycles.
KVM tools does have less overhead than qemu regarding PIO exits, but
even if you take those completely out of the equation we're still pretty
close to 40k cycles.
--
Sasha.
--
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/