Re: [PATCH 10/17] 2.6.17.1 perfmon2 patch for review: PMU context switch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Chuck,

On Sat, Jul 01, 2006 at 11:21:22AM -0400, Chuck Ebbert wrote:
> In-Reply-To: <[email protected]>
> 
> On Fri, 30 Jun 2006 13:40:32 -0700, Stephane Eranian wrote:
> 
> > As Andi is suggesting, I think this may depends on how the BIOS implements
> > the low-power state. I have tried the same command on my dual Opteron 250
> > 2.4GHz and I get:
> > $ pfmon --us-c -ecpu_clk_unhalted,interrupts_masked_cycles -k --system-wide -t 10
> > <session to end in 10 seconds>
> > CPU0                     9,520,303 CPU_CLK_UNHALTED
> > CPU0                     3,726,315 INTERRUPTS_MASKED_CYCLES
> > CPU1                    21,268,151 CPU_CLK_UNHALTED
> > CPU1                    14,515,389 INTERRUPTS_MASKED_CYCLES
> 
> That is similar to what I get with idle=halt. Are you not using ACPI
> for idle?
> 
> Try this:
> 
> $ pfmon -ecpu_clk_unhalted,interrupts_masked_cycles_with_interrupt_pending,interrupts_masked_cycles,cycles_no_fpu_ops_retired -k --system-wide -t 10
> <session to end in 10 seconds>
> CPU0     95016828 CPU_CLK_UNHALTED
> CPU0     36472783 INTERRUPTS_MASKED_CYCLES_WITH_INTERRUPT_PENDING
> CPU0     67484408 INTERRUPTS_MASKED_CYCLES
> CPU0    445326968 CYCLES_NO_FPU_OPS_RETIRED
> 
> That's what I get with idle=halt.  Since the kernel doesn't do FP
> the last line should equal clock cycles.  If it were running at full
> speed it would be 16 billion...

Here is what I get on my dual 2.4GHz Opteron 250:

booted with idle=halt
$ pfmon --us-c -ecpu_clk_unhalted,interrupts_masked_cycles_with_interrupt_pending,interrupts_masked_cycles,cycles_no_fpu_ops_retired -k --system-wide -t 10
<session to end in 10 seconds>
CPU0                    11,356,210 CPU_CLK_UNHALTED                               
CPU0                             0 INTERRUPTS_MASKED_CYCLES_WITH_INTERRUPT_PENDING
CPU0                     3,836,107 INTERRUPTS_MASKED_CYCLES                       
CPU0                23,910,784,532 CYCLES_NO_FPU_OPS_RETIRED                      
CPU1                    19,303,632 CPU_CLK_UNHALTED                               
CPU1                             0 INTERRUPTS_MASKED_CYCLES_WITH_INTERRUPT_PENDING
CPU1                    13,942,265 INTERRUPTS_MASKED_CYCLES                       
CPU1                23,911,872,654 CYCLES_NO_FPU_OPS_RETIRED                      

As you can see, CYCLES_NO_FPU_OPS_RETIRED on each CPU is as expected  for 10s.

booted with idle=poll
$ pfmon --us-c -ecpu_clk_unhalted,interrupts_masked_cycles_with_interrupt_pending,interrupts_masked_cycles,cycles_no_fpu_ops_retired -k --system-wide -t 10
<session to end in 10 seconds>
CPU0                23,906,091,982 CPU_CLK_UNHALTED                               
CPU0                             0 INTERRUPTS_MASKED_CYCLES_WITH_INTERRUPT_PENDING
CPU0                     3,771,569 INTERRUPTS_MASKED_CYCLES                       
CPU0                23,906,090,750 CYCLES_NO_FPU_OPS_RETIRED                      
CPU1                23,906,629,241 CPU_CLK_UNHALTED                               
CPU1                             0 INTERRUPTS_MASKED_CYCLES_WITH_INTERRUPT_PENDING
CPU1                    14,805,078 INTERRUPTS_MASKED_CYCLES                       
CPU1                23,906,194,343 CYCLES_NO_FPU_OPS_RETIRED                      

CYCLES_NO_FPU_OPS_RETIRED is as expected and, in this case, it is equal to CPU_CLK_UNHALTED
because we are busy looping.

If I don't specify anything, I get like idle=halt which is expected.

-- 
-Stephane
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux