lkml.org 
[lkml]   [2011]   [Dec]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [patch 0/3] kvm tool: Serial emulation overhaul
From
Date
On Mon, 2011-12-12 at 12:12 +0100, Ingo Molnar wrote:
> * Sasha Levin <levinsasha928@gmail.com> 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.



\
 
 \ /
  Last update: 2011-12-12 18:43    [W:0.094 / U:0.240 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site