From: Ingo Molnar <mingo@elte.hu>
To: Rusty Russell <rusty@rustcorp.com.au>
Cc: Thomas Gleixner <tglx@linutronix.de>,
Glauber de Oliveira Costa <gcosta@redhat.com>,
LKML <linux-kernel@vger.kernel.org>,
Jeremy Fitzhardinge <jeremy@goop.org>,
--cc@redhat.com, avi@quramnet.com,
kvm-devel@lists.sourceforge.net,
John Stultz <johnstul@us.ibm.com>
Subject: Re: [PATCH] raise tsc clocksource rating
Date: Tue, 30 Oct 2007 08:37:36 +0100 [thread overview]
Message-ID: <20071030073736.GA21843@elte.hu> (raw)
In-Reply-To: <200710301339.23628.rusty@rustcorp.com.au>
* Rusty Russell <rusty@rustcorp.com.au> wrote:
> No. tsc is very good, it's not perfect. If a paravirt clock
> registers 400 it really means "pick me over the tsc".
often the TSC is not perfect, but _IF_ it's perfect, using the paravirt
driver is a pessimisation in performance.
the main problem at the moment is that there's no mechanism at the
moment to convey to the guest the information that the TSC is "perfect",
and to convey the calibration values.
> That's *why* they use > 400: it's in the documentation.
static values do not capture conditional quality like that of the TSC.
and just in case it's not obvious: i am not arguing for the inclusion of
the patch, i'm just pointing out the plain fact that in the case where
the TSC _is_ reliable, 5 different clocksource drivers for has obvious
disadvantages. Anyone arguing against that simple point needs his head
examined :) Once we can pass around calibration information from the
host to the guest (which we dont do at the moment) there will be reason
not to use the native clocksource driver in the guest.
in the long run, the paravirt clocksource drivers must become _fallback_
drivers, for the case when the TSC is not perfect. Instead of the
current "lets try to make it reliable but also nearly as fast as the
TSC", which leads to inevitable breakage on SMP.
Ingo
next prev parent reply other threads:[~2007-10-30 7:38 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-29 23:10 [PATCH] raise tsc clocksource rating Glauber de Oliveira Costa
2007-10-29 22:17 ` Thomas Gleixner
2007-10-29 22:36 ` Ingo Molnar
2007-10-30 1:26 ` john stultz
2007-10-30 2:39 ` Rusty Russell
2007-10-30 7:37 ` Ingo Molnar [this message]
2007-10-30 10:52 ` Rusty Russell
2007-10-30 12:13 ` Glauber de Oliveira Costa
2007-10-29 22:42 ` Zachary Amsden
2007-10-29 22:45 ` Jeremy Fitzhardinge
2007-10-29 22:48 ` Ingo Molnar
2007-10-29 22:52 ` Jeremy Fitzhardinge
2007-10-29 22:55 ` Ingo Molnar
2007-10-29 23:17 ` Jeremy Fitzhardinge
2007-10-29 23:21 ` Ingo Molnar
2007-10-29 23:33 ` Jeremy Fitzhardinge
2007-10-30 0:45 ` Ian Pratt
2007-10-30 7:19 ` Ingo Molnar
2007-10-29 22:55 ` Zachary Amsden
2007-10-29 23:02 ` Ingo Molnar
2007-10-29 23:13 ` Zachary Amsden
2007-10-29 23:17 ` Ingo Molnar
2007-10-30 12:02 ` Glauber de Oliveira Costa
2007-10-30 17:58 ` Zachary Amsden
2007-10-29 23:24 ` Dan Hecht
2007-10-30 4:24 ` [kvm-devel] " Avi Kivity
2007-10-30 7:14 ` Ingo Molnar
2007-10-30 11:59 ` Glauber de Oliveira Costa
2007-10-30 0:17 ` H. Peter Anvin
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=20071030073736.GA21843@elte.hu \
--to=mingo@elte.hu \
--cc=--cc@redhat.com \
--cc=avi@quramnet.com \
--cc=gcosta@redhat.com \
--cc=jeremy@goop.org \
--cc=johnstul@us.ibm.com \
--cc=kvm-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=rusty@rustcorp.com.au \
--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