mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* 2.6.35.4: intel_idle has reduced residency in high C states.
@ 2010-09-26 21:25 Corrado Zoccolo
  2010-09-30 22:08 ` Len Brown
  0 siblings, 1 reply; 2+ messages in thread
From: Corrado Zoccolo @ 2010-09-26 21:25 UTC (permalink / raw)
  To: lenb, Linux-Kernel, Arjan van de Ven

Hi Len,
I tested intel_idle on my Acer Aspire One netbook (Atom based), and
got lower residency in high C states compared to acpi_idle:
Immediately after boot, PowerTOP 1.11 reports for intel_idle:
Your CPU supports the following C-states : C1 C2 C4
Your BIOS reports the following C-states : C1 C2 C4
Cn                Avg residency
C0 (cpu occupata)      ( 2,3%)
polling           0,0ms ( 0,0%)
C1 mwait         54,4ms (57,3%)
C2 mwait          1,7ms ( 2,8%)
C4 mwait          3,1ms (37,6%)
P-states (frequencies)
  1,60 Ghz     0,0%
  1333 Mhz     0,0%
  1066 Mhz     0,0%
   800 Mhz   100,0%
Wakeups-from-idle per second : 149,4    interval: 15,0s
no ACPI power usage estimate available
Top causes for wakeups:
  74,0% ( 98,5)     <kernel core> : hrtimer_start_range_ns (tick_sched_timer)
   6,5% (  8,7)       <interrupt> : acpi
   4,0% (  5,3)     <kernel core> : hrtimer_start (tick_sched_timer)
   3,7% (  4,9)       <interrupt> : eth0
   1,9% (  2,5)                 X : __mod_timer (i915_hangcheck_elapsed)
   1,5% (  2,0)           lxpanel : hrtimer_start_range_ns (hrtimer_wakeup)
   1,3% (  1,7)        lxterminal : hrtimer_start_range_ns (hrtimer_wakeup)
   1,0% (  1,3)           lxpanel : __mod_timer (process_timeout)
   0,8% (  1,1)      <kernel IPI> : TLB shootdowns
   0,8% (  1,0)           ifplugd : hrtimer_start_range_ns (hrtimer_wakeup)
   0,7% (  0,9)                 X : queue_delayed_work (delayed_work_timer_fn)

while for acpi_idle:
Cn                Avg residency
C0 (cpu occupata)      ( 2,1%)
polling           0,0ms ( 0,0%)
C1 halt           0,1ms ( 0,0%)
C2               11,9ms (14,7%)
C3               12,1ms (83,2%)
P-states (frequencies)
  1,60 Ghz     0,0%
  1333 Mhz     0,0%
  1066 Mhz     0,3%
   800 Mhz    99,7%
Wakeups-from-idle per second : 81,2     interval: 15,0s
no ACPI power usage estimate available
Top causes for wakeups:
  60,3% ( 92,3)     <kernel core> : hrtimer_start_range_ns (tick_sched_timer)
  12,4% ( 18,9)       <interrupt> : extra timer interrupt
   5,9% (  9,0)      <kernel IPI> : Rescheduling interrupts
   5,6% (  8,6)       <interrupt> : acpi
   3,4% (  5,2)       <interrupt> : eth0
   2,7% (  4,1)     <kernel core> : hrtimer_start (tick_sched_timer)
   1,6% (  2,4)                 X : __mod_timer (i915_hangcheck_elapsed)
   1,3% (  2,0)           lxpanel : hrtimer_start_range_ns (hrtimer_wakeup)
   1,2% (  1,8)           lxpanel : __mod_timer (process_timeout)
   1,1% (  1,7)        lxterminal : hrtimer_start_range_ns (hrtimer_wakeup)
   0,7% (  1,0)           ifplugd : hrtimer_start_range_ns (hrtimer_wakeup)
   0,6% (  0,9)                 X : queue_delayed_work (delayed_work_timer_fn)
   0,3% (  0,5)     <kernel core> : enqueue_task_rt (sched_rt_period_timer)
   0,3% (  0,5)      <kernel IPI> : TLB shootdowns

This may be unrelated, but I noticed that compared with 2.6.34, the
load average immediately after boot is higher for 2.6.35.4 (and
decreases more slowly). This gives a higher multiplier in the menu
governor, so the residency numbers for 2.6.34 with acpi_idle are again
different:
Cn                Avg residency
C0 (cpu occupata)      ( 3,2%)
polling           0,0ms ( 0,0%)
C1 halt           0,1ms ( 0,0%)
C2                7,9ms (10,5%)
C3               11,7ms (86,3%)
P-states (frequencies)
  1,60 Ghz     0,0%
  1333 Mhz     0,0%
  1066 Mhz     0,9%
   800 Mhz    99,1%
Wakeups-from-idle per second : 87,1     interval: 15,0s
no ACPI power usage estimate available
Top causes for wakeups:
  67,1% (130,0)     <kernel core> : hrtimer_start_range_ns (tick_sched_timer)
   8,7% ( 16,9)       <interrupt> : extra timer interrupt
   6,5% ( 12,5)      <kernel IPI> : Rescheduling interrupts
   4,5% (  8,7)       <interrupt> : acpi
   2,3% (  4,5)     <kernel core> : hrtimer_start (tick_sched_timer)
   1,9% (  3,7)       <interrupt> : eth0
   1,4% (  2,7)                 X : __mod_timer (i915_hangcheck_elapsed)
   1,0% (  2,0)           lxpanel : hrtimer_start_range_ns (hrtimer_wakeup)
   0,9% (  1,8)           lxpanel : __mod_timer (process_timeout)
   0,9% (  1,7)        lxterminal : hrtimer_start_range_ns (hrtimer_wakeup)
   0,5% (  1,0)           ifplugd : hrtimer_start_range_ns (hrtimer_wakeup)
   0,4% (  0,8)       <interrupt> : ehci_hcd:usb1, uhci_hcd:usb2,
i915@pci:0000:00:02.0
   0,4% (  0,7)       <interrupt> : ata_piix
   0,4% (  0,7)                 X : queue_delayed_work (delayed_work_timer_fn)
The numbers for 2.6.34 look more sensible (avg residency in C2 << avg
residency in C3), so it may be good to re-evaluate the factors in menu
governor.

Thanks,
Corrado

---
__________________________________________________________________________

dott. Corrado Zoccolo                          mailto:czoccolo@gmail.com
PhD - Department of Computer Science - University of Pisa, Italy
--------------------------------------------------------------------------
The self-confidence of a warrior is not the self-confidence of the average
man. The average man seeks certainty in the eyes of the onlooker and calls
that self-confidence. The warrior seeks impeccability in his own eyes and
calls that humbleness.
                               Tales of Power - C. Castaneda

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: 2.6.35.4: intel_idle has reduced residency in high C states.
  2010-09-26 21:25 2.6.35.4: intel_idle has reduced residency in high C states Corrado Zoccolo
@ 2010-09-30 22:08 ` Len Brown
  0 siblings, 0 replies; 2+ messages in thread
From: Len Brown @ 2010-09-30 22:08 UTC (permalink / raw)
  To: Corrado Zoccolo; +Cc: Linux-Kernel, Arjan van de Ven

[-- Attachment #1: Type: TEXT/PLAIN, Size: 5851 bytes --]

On Sun, 26 Sep 2010, Corrado Zoccolo wrote:

> Hi Len,
> I tested intel_idle on my Acer Aspire One netbook (Atom based), and
> got lower residency in high C states compared to acpi_idle:
> Immediately after boot, PowerTOP 1.11 reports for intel_idle:
> Your CPU supports the following C-states : C1 C2 C4
> Your BIOS reports the following C-states : C1 C2 C4
> Cn                Avg residency
> C0 (cpu occupata)      ( 2,3%)

Corrado,
differences in C2 vs C4 residency don't matter much
when when the CPU is buy (C0) for 2 or 3% of the time.

For an apples/apples comparison of intel_idle vs acpi_idle,
CONFIG_INTEL_IDLE=y and boot with and without
intel_idle.max_cstate=0 to run with acpi_idle
and intel_idle, respectively.

thanks,
-Len Brown, Intel Open Source Technology Center



> polling           0,0ms ( 0,0%)
> C1 mwait         54,4ms (57,3%)
> C2 mwait          1,7ms ( 2,8%)
> C4 mwait          3,1ms (37,6%)
> P-states (frequencies)
>   1,60 Ghz     0,0%
>   1333 Mhz     0,0%
>   1066 Mhz     0,0%
>    800 Mhz   100,0%
> Wakeups-from-idle per second : 149,4    interval: 15,0s
> no ACPI power usage estimate available
> Top causes for wakeups:
>   74,0% ( 98,5)     <kernel core> : hrtimer_start_range_ns (tick_sched_timer)
>    6,5% (  8,7)       <interrupt> : acpi
>    4,0% (  5,3)     <kernel core> : hrtimer_start (tick_sched_timer)
>    3,7% (  4,9)       <interrupt> : eth0
>    1,9% (  2,5)                 X : __mod_timer (i915_hangcheck_elapsed)
>    1,5% (  2,0)           lxpanel : hrtimer_start_range_ns (hrtimer_wakeup)
>    1,3% (  1,7)        lxterminal : hrtimer_start_range_ns (hrtimer_wakeup)
>    1,0% (  1,3)           lxpanel : __mod_timer (process_timeout)
>    0,8% (  1,1)      <kernel IPI> : TLB shootdowns
>    0,8% (  1,0)           ifplugd : hrtimer_start_range_ns (hrtimer_wakeup)
>    0,7% (  0,9)                 X : queue_delayed_work (delayed_work_timer_fn)
> 
> while for acpi_idle:
> Cn                Avg residency
> C0 (cpu occupata)      ( 2,1%)
> polling           0,0ms ( 0,0%)
> C1 halt           0,1ms ( 0,0%)
> C2               11,9ms (14,7%)
> C3               12,1ms (83,2%)
> P-states (frequencies)
>   1,60 Ghz     0,0%
>   1333 Mhz     0,0%
>   1066 Mhz     0,3%
>    800 Mhz    99,7%
> Wakeups-from-idle per second : 81,2     interval: 15,0s
> no ACPI power usage estimate available
> Top causes for wakeups:
>   60,3% ( 92,3)     <kernel core> : hrtimer_start_range_ns (tick_sched_timer)
>   12,4% ( 18,9)       <interrupt> : extra timer interrupt
>    5,9% (  9,0)      <kernel IPI> : Rescheduling interrupts
>    5,6% (  8,6)       <interrupt> : acpi
>    3,4% (  5,2)       <interrupt> : eth0
>    2,7% (  4,1)     <kernel core> : hrtimer_start (tick_sched_timer)
>    1,6% (  2,4)                 X : __mod_timer (i915_hangcheck_elapsed)
>    1,3% (  2,0)           lxpanel : hrtimer_start_range_ns (hrtimer_wakeup)
>    1,2% (  1,8)           lxpanel : __mod_timer (process_timeout)
>    1,1% (  1,7)        lxterminal : hrtimer_start_range_ns (hrtimer_wakeup)
>    0,7% (  1,0)           ifplugd : hrtimer_start_range_ns (hrtimer_wakeup)
>    0,6% (  0,9)                 X : queue_delayed_work (delayed_work_timer_fn)
>    0,3% (  0,5)     <kernel core> : enqueue_task_rt (sched_rt_period_timer)
>    0,3% (  0,5)      <kernel IPI> : TLB shootdowns
> 
> This may be unrelated, but I noticed that compared with 2.6.34, the
> load average immediately after boot is higher for 2.6.35.4 (and
> decreases more slowly). This gives a higher multiplier in the menu
> governor, so the residency numbers for 2.6.34 with acpi_idle are again
> different:
> Cn                Avg residency
> C0 (cpu occupata)      ( 3,2%)
> polling           0,0ms ( 0,0%)
> C1 halt           0,1ms ( 0,0%)
> C2                7,9ms (10,5%)
> C3               11,7ms (86,3%)
> P-states (frequencies)
>   1,60 Ghz     0,0%
>   1333 Mhz     0,0%
>   1066 Mhz     0,9%
>    800 Mhz    99,1%
> Wakeups-from-idle per second : 87,1     interval: 15,0s
> no ACPI power usage estimate available
> Top causes for wakeups:
>   67,1% (130,0)     <kernel core> : hrtimer_start_range_ns (tick_sched_timer)
>    8,7% ( 16,9)       <interrupt> : extra timer interrupt
>    6,5% ( 12,5)      <kernel IPI> : Rescheduling interrupts
>    4,5% (  8,7)       <interrupt> : acpi
>    2,3% (  4,5)     <kernel core> : hrtimer_start (tick_sched_timer)
>    1,9% (  3,7)       <interrupt> : eth0
>    1,4% (  2,7)                 X : __mod_timer (i915_hangcheck_elapsed)
>    1,0% (  2,0)           lxpanel : hrtimer_start_range_ns (hrtimer_wakeup)
>    0,9% (  1,8)           lxpanel : __mod_timer (process_timeout)
>    0,9% (  1,7)        lxterminal : hrtimer_start_range_ns (hrtimer_wakeup)
>    0,5% (  1,0)           ifplugd : hrtimer_start_range_ns (hrtimer_wakeup)
>    0,4% (  0,8)       <interrupt> : ehci_hcd:usb1, uhci_hcd:usb2,
> i915@pci:0000:00:02.0
>    0,4% (  0,7)       <interrupt> : ata_piix
>    0,4% (  0,7)                 X : queue_delayed_work (delayed_work_timer_fn)
> The numbers for 2.6.34 look more sensible (avg residency in C2 << avg
> residency in C3), so it may be good to re-evaluate the factors in menu
> governor.
> 
> Thanks,
> Corrado
> 
> ---
> __________________________________________________________________________
> 
> dott. Corrado Zoccolo                          mailto:czoccolo@gmail.com
> PhD - Department of Computer Science - University of Pisa, Italy
> --------------------------------------------------------------------------
> The self-confidence of a warrior is not the self-confidence of the average
> man. The average man seeks certainty in the eyes of the onlooker and calls
> that self-confidence. The warrior seeks impeccability in his own eyes and
> calls that humbleness.
>                                Tales of Power - C. Castaneda
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-09-30 22:09 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-26 21:25 2.6.35.4: intel_idle has reduced residency in high C states Corrado Zoccolo
2010-09-30 22:08 ` Len Brown

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®