Re: [patch] enhance powerd(8) to handle max temperature
- From: Pietro Cerutti <gahr@xxxxxxx>
- Date: Mon, 30 Jul 2007 23:31:33 +0200
Kris Kennaway wrote:
On Mon, Jul 30, 2007 at 11:28:59AM +0200, Pietro Cerutti wrote:
Hajimu UMEMOTO wrote:
Hi,You are right, but the passive colling mechanism could not be available
gahr> Hi list,On Fri, 27 Jul 2007 16:43:29 +0200
Pietro Cerutti <gahr@xxxxxxx> said:
gahr> here is a patch to allow powerd(8) accept a "-t tval" option to set a
gahr> temperature limit above which performance should be decreased.
gahr> It's a first draft, and I identified the following problems:
gahr> - the CPU temperature takes some time to decrease, so powerd keeps
gahr> decreasing the CPU frequency until the temperature is below the limit.
gahr> The effect is a "increase to maximum, decrease to minimum, increase to
gahr> maximum, decrease to minimum, ...." which may not be desirable.
gahr> - the temperature is retrieved by the hw.acpi.thermal.tz0.temperature
gahr> sysctl MIB. Support for other methods would be desirable.
gahr> The patches to powerd.c and powerd.8 are here:
gahr> http://www.gahr.ch/FreeBSD/patches/powerd.c.diff
gahr> http://www.gahr.ch/FreeBSD/patches/powerd.8.diff
gahr> Any comment is welcome!
We have a passive cooling mechanism already in our kernel. It runs
according to an ACPI specification.
on some systems where thermal is available, and I'm still waiting for
answers about acpi_thermal not sending notifies.
See my previous post:
http://lists.freebsd.org/pipermail/freebsd-hackers/2007-July/021361.html
What's wrong with including this feature directly in powerd?
In general duplication is undesirable. You should focus on trying to
solve the problems with using the ACPI method. For example, the acpi
passive cooling probably uses a better algorithm than your patches,
e.g. including appropriate hysteresis.
Hi Kris,
I agree with you in that duplication is undesirable.
But isn't having both powerd and passive cooling dealing with CPU
frequency control already a form of duplication?
I can't test it, since I can't use passive cooling, but how do not these
two systems interfere with each other wrt setting the CPU frequency?
What if, for example, my CPU temperature rises above _PSV but the CPU
usage drops below 65%?
In this case, the CPU frequency should be increased according to
powerd's algorithm and should be decreased according to passive
cooling's algorithm.
Wouldn't it be better to have one subsystem deal with both usage and
temperature in order to decide which is the best next frequency to be set?
My patch is really just a first draft that I wrote in order to have
feedbacks on the general idea to implement a temperature controlling
system inside powerd, and doesn't implement hysteresis as you noted, and
your feedback is that it's not a good idea, which I respect.
Given the above, would you like to elaborate?
Thank you for your time!
Kris
_______________________________________________
freebsd-hackers@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@xxxxxxxxxxx"
--
Pietro Cerutti
PGP Public Key:
http://gahr.ch/pgp
Attachment:
signature.asc
Description: OpenPGP digital signature
- Follow-Ups:
- Re: [patch] enhance powerd(8) to handle max temperature
- From: Hajimu UMEMOTO
- Re: [patch] enhance powerd(8) to handle max temperature
- References:
- [patch] enhance powerd(8) to handle max temperature
- From: Pietro Cerutti
- Re: [patch] enhance powerd(8) to handle max temperature
- From: Hajimu UMEMOTO
- Re: [patch] enhance powerd(8) to handle max temperature
- From: Pietro Cerutti
- Re: [patch] enhance powerd(8) to handle max temperature
- From: Kris Kennaway
- [patch] enhance powerd(8) to handle max temperature
- Prev by Date: Re: gcc -m32 option on amd64.
- Next by Date: [panic]page fault while in kernel mode
- Previous by thread: Re: [patch] enhance powerd(8) to handle max temperature
- Next by thread: Re: [patch] enhance powerd(8) to handle max temperature
- Index(es):
Relevant Pages
|
|