public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <ak@suse.de>
To: Chuck Ebbert <76306.1226@compuserve.com>
Cc: Stephane Eranian <eranian@hpl.hp.com>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 10/17] 2.6.17.1 perfmon2 patch for review: PMU context switch
Date: Fri, 30 Jun 2006 21:37:15 +0200	[thread overview]
Message-ID: <200606302137.15644.ak@suse.de> (raw)
In-Reply-To: <200606301519_MC3-1-C3E0-AD22@compuserve.com>


> But that is using cpu_clk_unhalted (isn't it?)  If so, it would slow down
> when the system is idle.
> The BIOS writer's guide, Ch. 10.2, says only events outside of the
> processor, 

The other events don't happen by definition. 

If the system is C1 idle there are no cache misses, no pipe line events,
nothing - just cache snoops and waiting for interrupts and TSC
ticking.

> like northbridge DMA accesses, stop counting during halt. 
> (And by definition cpu_clk_unhalted.)

It also depends on which C state and how the BIOS implements your C state.

e.g. there is C1/C2/C3 and then there are various modi of C1
(HLT aka C1 is actually some SMM code in the BIOS that does different
stuff). 
 
I think there is at least one mode that ramps down large parts of the
CPU (it's called C1 clock ramping - that is what has caused the TSC
sync problems on some dual core systems).

I guess your BIOS is not very aggressive in its SMM code in
disabling the CPU.

C2/C3 also depend on SMM code, but when implemented should definitely
stop everything.
 
Intel also has different implementations of C1/C2/C3 depending
on CPU and BIOS. Especially lowend code 

But I still maintain something must be wrong with your 
measurements.

-Andi

  reply	other threads:[~2006-06-30 19:37 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-30 19:17 [PATCH 10/17] 2.6.17.1 perfmon2 patch for review: PMU context switch Chuck Ebbert
2006-06-30 19:37 ` Andi Kleen [this message]
  -- strict thread matches above, loose matches on Subject: below --
2006-07-06 17:30 Chuck Ebbert
2006-07-06 20:16 ` Stephane Eranian
2006-07-01 15:21 Chuck Ebbert
2006-07-04 15:28 ` Stephane Eranian
2006-06-30 18:33 Chuck Ebbert
2006-06-30 18:42 ` Andi Kleen
2006-06-30 18:43 ` Stephane Eranian
2006-06-30 20:40 ` Stephane Eranian
2006-06-23  9:13 Stephane Eranian
2006-06-30 12:27 ` Andi Kleen
2006-06-30 12:36   ` Stephane Eranian
2006-06-30 12:59     ` Andi Kleen
2006-06-30 13:29       ` Stephane Eranian
2006-06-30 13:41         ` Andi Kleen
2006-06-30 14:12           ` Stephane Eranian
2006-06-30 14:33             ` Andi Kleen
2006-06-30 16:02               ` Stephane Eranian
2006-06-30 17:08                 ` Andi Kleen
2006-06-30 20:47                   ` Stephane Eranian
2006-07-03  9:49       ` Stephane Eranian
2006-07-03 19:25         ` Andi Kleen
2006-07-03 19:22           ` Stephane Eranian
2006-07-03 19:36             ` Andi Kleen

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=200606302137.15644.ak@suse.de \
    --to=ak@suse.de \
    --cc=76306.1226@compuserve.com \
    --cc=eranian@hpl.hp.com \
    --cc=linux-kernel@vger.kernel.org \
    /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