From: Avi Kivity <avi@redhat.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>, Pekka Enberg <penberg@kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
Sasha Levin <levinsasha928@gmail.com>
Subject: Re: [patch 0/3] kvm tool: Serial emulation overhaul
Date: Tue, 13 Dec 2011 16:23:52 +0200 [thread overview]
Message-ID: <4EE75FF8.5060208@redhat.com> (raw)
In-Reply-To: <alpine.LFD.2.02.1112131434320.3020@ionos>
On 12/13/2011 03:52 PM, Thomas Gleixner wrote:
> On Tue, 13 Dec 2011, Avi Kivity wrote:
>
> > On 12/13/2011 02:59 AM, Thomas Gleixner wrote:
> >
> > <snip trace>
> > > Why the heck is a paravirtualized guest using an local APIC timer
> > > emulation, instead of a paravirtualized clock event device?
> > >
> > > Just look at the trace. That's insane. We enter the guest for 2us to
> > > come back and handle the APIC_EOI for 11us. Then we go back to the
> > > guest for 9us and spend again 11us for handling a write to APIC_TMICT.
> > >
> > > That's 11us guest vs. 22us host time.
> >
> > Run your guest with x2apic enabled, the timing will be very different.
>
> And what magic do I have to use to make that happen other than having
> x2apic support enabled in the kernel? Or do I need a certain kernel
> version for host and guest to make that work?
With qemu, -cpu host or -cpu blah,+x2apic. kvm-tool does the equivalent
of -cpu host, so I'm surprised it doesn't show up. x2apic has been
recognized by the guest for a long time (ce69a784; 2.6.32, I'll be
surprised if you have anything older than that on your machine).
Does x2apic show up in your guest's /proc/cpuinfo?
> > The problem with paravirt clockevents is that if/when the APIC becomes
> > virtualized, then guests which were started with the paravirt
> > clockevents don't get accelerated when they are migrated onto newer
> > hardware. This problem has bitten us several times in the past; if you
> > want to see how it looks when applied on a large scale look at Xen -
> > they have a paravirt-the-fsck-out-of-everything mode and a full virt
> > mode (which should be way faster these days); the two aren't
> > compatible. Of course back when they started, they didn't have a
> > choice, but we do.
>
> Well, I can see the migration pain for life migration and I agree that
> paravirt the world and some more is a horror as well. Though there is
> a midground between everything and being smart about certain
> aspects.
Agree, clocksource is one example where the gain exceeds the pain.
> The whole APIC timer calibration and the back and forth
> conversion is definitely nothing which falls into the category of
> smart.
APIC timer calibration is silly but it hasn't proven to be a real-world
problem.
--
error compiling committee.c: too many arguments to function
next prev parent reply other threads:[~2011-12-13 14:24 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-10 13:27 [patch 0/3] kvm tool: Serial emulation overhaul Thomas Gleixner
2011-12-10 13:27 ` [patch 1/3] kvm tool: serial: Cleanup coding style Thomas Gleixner
2011-12-10 13:27 ` [patch 3/3] kvm tool: serial: Fix interrupt handling Thomas Gleixner
2011-12-10 13:27 ` [patch 2/3] kvm tool: serial: Simplify switch cases Thomas Gleixner
2011-12-10 15:17 ` [patch 0/3] kvm tool: Serial emulation overhaul Pekka Enberg
2011-12-10 20:51 ` Thomas Gleixner
2011-12-11 8:15 ` Pekka Enberg
2011-12-11 10:30 ` Ingo Molnar
2011-12-11 10:46 ` Ingo Molnar
2011-12-11 14:04 ` Thomas Gleixner
2011-12-11 15:53 ` Ingo Molnar
2011-12-12 5:30 ` Sasha Levin
2011-12-12 11:12 ` Ingo Molnar
2011-12-12 11:20 ` Alan Cox
2011-12-12 17:20 ` Ingo Molnar
2011-12-12 18:16 ` Avi Kivity
2011-12-12 18:16 ` Avi Kivity
2011-12-12 21:36 ` Alan Cox
2011-12-13 10:32 ` Avi Kivity
2011-12-12 11:23 ` Cyrill Gorcunov
2011-12-12 17:40 ` Sasha Levin
2011-12-12 17:45 ` Ingo Molnar
2011-12-12 9:42 ` Thomas Gleixner
2011-12-12 11:19 ` Pekka Enberg
2011-12-12 17:20 ` Ingo Molnar
2011-12-12 18:40 ` Pekka Enberg
2011-12-12 19:14 ` Pekka Enberg
2011-12-12 19:21 ` Ingo Molnar
2011-12-13 0:59 ` Thomas Gleixner
2011-12-13 7:03 ` Pekka Enberg
2011-12-13 11:05 ` Alan Cox
2011-12-13 10:58 ` Avi Kivity
2011-12-13 13:52 ` Thomas Gleixner
2011-12-13 14:23 ` Avi Kivity [this message]
2011-12-13 14:30 ` Sasha Levin
2011-12-13 14:51 ` Thomas Gleixner
2011-12-13 14:58 ` Avi Kivity
2011-12-12 21:03 ` James Courtier-Dutton
2011-12-12 18:19 ` Avi Kivity
2011-12-12 18:31 ` Pekka Enberg
2011-12-13 10:33 ` Avi Kivity
2011-12-12 10:27 ` Alan Cox
2011-12-12 10:59 ` Sasha Levin
2011-12-12 11:02 ` Alan Cox
2011-12-12 18:21 ` Avi Kivity
2011-12-12 17:21 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4EE75FF8.5060208@redhat.com \
--to=avi@redhat.com \
--cc=levinsasha928@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=penberg@kernel.org \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox