Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Jan 2008 05:35:15 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        freebsd-acpi@freebsd.org
Cc:        "Alexandre \"Sunny\" Kovalenko" <alex.kovalenko@verizon.net>
Subject:   Re: [RFC] Patch to enable temperature ceiling in powerd
Message-ID:  <200801310535.15540.jhb@freebsd.org>
In-Reply-To: <1201733779.902.18.camel@RabbitsDen>
References:  <1201733779.902.18.camel@RabbitsDen>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 30 January 2008 05:56:19 pm Alexandre "Sunny" Kovalenko wrote:
> Some time ago I have put together patch for powerd, which allows user to
> specify the temperature threshold at which powerd will lower CPU
> frequency no matter what the load was at the time. I recently had to
> adapt it to the 7.0-PRERELEASE for someone with the overheating laptop,
> which got me to think that it might be useful for someone else yet.
> 
> Basic idea is fairly simple -- check temperature in TZ0 and, if it has
> reached certain value, either override frequency with the lowest
> available (in the case of 'max' setting) or change idle time to 100% and
> let adaptive algorithm decrease frequency gradually.
> 
> I imagine it also could be poor man's substitute for the low noise
> acoustic policy ;)
> 
> If there is an interest, I will go ahead and submit a PR, otherwise it
> will live in the mail archives for someone to find. Any comments,
> suggestions or criticisms are welcome.
> 
> Temperature threshold (in Celsius) could be set by means of '-T' command
> line option (as in '-T 60').

A couple of suggestions:

- I would make the default temperature 0 instead of 200 and just disable the
  feature altogether if it is set to 0 (i.e. don't read the current
  temperature and don't do any checks if it is 0).
- I would allow the temperature to be specified in either C, K or F with a
  suffix to indicate the scale.  (e.g., "80C", "120F", "300K")
- I would let the thermal zone name be configurable with a default of "tz0".
  (e.g. "-z tz3").  You would then snprintf the sysctl mib name that gets
  passed to sysctlbyname(3).

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200801310535.15540.jhb>