public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Matthew Garrett <mjg@redhat.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Jack Steiner <steiner@sgi.com>,
	tglx@linutronix.de, davej@redhat.com, yinghan@google.com,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] x86: Reduce clock calibration time during slave cpu startup
Date: Sun, 7 Aug 2011 01:36:42 +0100	[thread overview]
Message-ID: <20110807003642.GA4442@srcf.ucam.org> (raw)
In-Reply-To: <20110805213836.GB21114@elte.hu>

On Fri, Aug 05, 2011 at 11:38:36PM +0200, Ingo Molnar wrote:

> Well, it still uses heuristics: it assumes frequency is the same when 
> the cpuid data tells us that two CPUs are on the same socket, right?

If we only assume that when we have a constant TSC then it's a pretty 
safe assumption - the delay loop will be calibrated against the TSC, and 
the TSC will be constant across the package regardless of what frequency 
the cores are actually running at.

> Cannot we directly see the frequency(ies) of the CPU, and decide 
> based on that whether the calibration result can be cached?

Kind of? We can look at the aperf/mperf ratio and compare that against 
the TSC to work out the frequency. But that only gives you meaningful 
results with a constant TSC, so since you're still depending on that you 
might as well skip the extra check.

The only time this should give problems is if someone produces a 
multi-core x86 with per-core (rather than per-package) TSC and runs the 
TSC at different frequencies per-core. Since that'd probably cost more 
than not doing it, I think we're probably safe.

-- 
Matthew Garrett | mjg59@srcf.ucam.org

  reply	other threads:[~2011-08-07  0:36 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-27 13:57 [PATCH] x86: Reduce clock calibration time during slave cpu startup Jack Steiner
2011-07-27 14:05 ` Dave Jones
     [not found]   ` <20110727141527.GA8453@sgi.com>
     [not found]     ` <20110727155200.GA25381@redhat.com>
2011-08-01 18:45       ` [PATCH v2] " Jack Steiner
2011-08-05 10:46         ` Ingo Molnar
2011-08-05 13:13           ` Jack Steiner
2011-08-05 13:16           ` Jack Steiner
2011-08-05 21:38             ` Ingo Molnar
2011-08-07  0:36               ` Matthew Garrett [this message]
2011-08-08 20:44                 ` Jack Steiner
2011-08-09 15:06                 ` Ingo Molnar
2011-08-09 15:18                   ` Matthew Garrett
2011-08-11 20:14                     ` [PATCH v3] " Jack Steiner
2011-08-06  0:21             ` [PATCH v2] " Yinghai Lu
2011-08-06  6:58               ` Ingo Molnar
2011-08-06 10:51               ` Robin Holt
2011-08-06 14:39               ` Jack Steiner
2011-08-26 23:56 ` [PATCH] " Andrew Morton
2011-08-26 23:57   ` Andrew Morton
2011-08-29 15:04   ` Jack Steiner

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=20110807003642.GA4442@srcf.ucam.org \
    --to=mjg@redhat.com \
    --cc=davej@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=steiner@sgi.com \
    --cc=tglx@linutronix.de \
    --cc=yinghan@google.com \
    /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