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

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®