Re: [PATCH] cpuidle: avoid singing capacitors

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

 



 

>-----Original Message-----
>From: Pierre Ossman [mailto:drzeus-list@xxxxxxxxx] 
>Sent: Tuesday, March 04, 2008 9:19 AM
>To: Pallipadi, Venkatesh
>Cc: Dave Jones; Andi Kleen; Alan Stern; LKML; Adam Belay; Lee 
>Revell; linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx; Pavel Machek
>Subject: Re:  [PATCH] cpuidle: avoid singing capacitors
>
>On Tue, 4 Mar 2008 07:14:23 +0100
>Pierre Ossman <drzeus-list@xxxxxxxxx> wrote:
>
>> 
>> Many devices today are of a less than stellar quality, and singing
>> capacitors are a common problem. A high-pitch noise is 
>created, caused
>> by power fluctuations as the processor enters and leaves 
>deep sleep at
>> a high frequency.
>> 
>> Instead of just disabling the deep sleep (which wastes power), this
>> patch allows you to reduces the number of times it is entered so that
>> the frequency can be kept inaudible.
>> 
>> Signed-off-by: Pierre Ossman <drzeus@xxxxxxxxx>
>> --
>
>Hold off on this. It turns out it still has major problems. 
>The menu algorithm now and then gets really bad at predicting 
>sleep times, completely killing this avoidance scheme.
>
>(On that subject, does anyone except Adam understand that 
>algorithm? Some comments wouldn't hurt...)

Prediction is based on cumulative time till "non expected wakeup". So,
prediction will come into play only when there are very short wakeups
due to "unexpected wakeups".

>So for now, I'm back to thinking that measuring the interval 
>between deep sleeps is the better approach. I could use some 
>ideas for a good clock source though. I haven't dug much 
>deeper than jiffies when it comes to kernel timekeeping.

I think best solution is to use get_last_residency that is already
there. If the last residency or expected_us is very low, you can avoid
deep idle states. That way you don't have to depend on jiffies being
updated at the time you are checking it.

Thanks,
Venki
_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux