Management of Thermal
Mel
fbsd.mobile at rachie.is-a-geek.net
Wed Oct 10 05:59:08 PDT 2007
On Monday 08 October 2007 11:16:01 Lars Engels wrote:
> Quoting Norberto Meijome <freebsd at meijome.net>:
> > On Mon, 8 Oct 2007 17:27:56 +1000
> > Norberto Meijome <freebsd at meijome.net> wrote:
> >
> > Powerd is enabled.
> >
> > I am currently doing not much at all (listening to music stream,
> > load of 0.24, 0.45, 0.69) and tz0 = 78C. it drops down a lot more
> > when running on batteries only
>
> Hi Norberto,
>
> your temperature values are a little bit too high. On my Notebook
> (model name : Intel(R) Pentium(R) M processor 1.73GHz) the CPU is
> at between 50°C - 60°C when I use normal desktop applications and up
> to 80°C when I compile something.
> You could open your case and look if there's dust in the airflow so
> the fans cannot blow out all the hot air.
> I only use the powerd with "-a adaptive -b adaptive" flags. There
> should be no need for the cpufreq module.
Experience with a HP laptop shows this to be not true. It currently is working
perfectly with a laptop cooling pad and not going anywhere near critical
values, but before that, we had to use the following in /etc/sysctl.conf to
prevent the computer from locking up (I suspect that the Intel CPU shuts
itself down before burning out):
hw.acpi.thermal.user_override=1
hw.acpi.thermal.tz0._PSV="75C"
hw.acpi.thermal.tz0._CRT="80C"
These values are 5C lower then detected values. I started with 10C lower and
reached critical too early. 5C works perfectly. Logging the temp[1] each
minute I could see the effect of the cooling fans once it reached 75C.
[1]
# cat /usr/local/sbin/tempd
#!/bin/sh
FACILITY=kern.notice
SLEEP=60
while true; do
MSG=$(sysctl -n hw.acpi.thermal.tz0.temperature)
/usr/bin/logger -p ${FACILITY} -i -t tempd "CPU temp: ${MSG}"
sleep ${SLEEP}
done
# cat /usr/local/etc/rc.d/tempd
#!/bin/sh
# vim: ts=4 sw=4 syn=sh noet nobackup
# REQUIRE: syslog
# PROVIDE: tempd
# KEYWORD: FreeBSD
. /etc/rc.subr
name=tempd
rcvar=`set_rcvar`
command="/usr/local/sbin/${name}"
pidfile="/var/run/${name}.pid"
start_cmd=${name}_start
tempd_start()
{
/usr/sbin/daemon -f -p ${pidfile} -c ${command}
}
load_rc_config $name
run_rc_command "$1"
--
Mel
More information about the freebsd-mobile
mailing list