high cpu temp and fan speed problem

Ian Smith smithi at nimnet.asn.au
Wed May 12 05:56:03 UTC 2010


On Mon, 10 May 2010, Nathan BIAGINI wrote:
 > 2010/5/10 Ian Smith <smithi at nimnet.asn.au>
[..]
 > > cpu0: <ACPI CPU> on acpi0
 > > est0: <Enhanced SpeedStep Frequency Control> on cpu0
 > > p4tcc0: <CPU Frequency Thermal Control> on cpu0
 > > cpu1: <ACPI CPU> on acpi0
 > > est1: <Enhanced SpeedStep Frequency Control> on cpu1
 > > p4tcc1: <CPU Frequency Thermal Control> on cpu1
 > > =======
 > >
 > > Right, it's a Core2 Duo at 2GHz, using est (absolute) frequency control,
 > > and p4tcc (relative) frequency thermal control.  See cpufreq(4) ie 'man
 > > cpufreq'.  This combination seems to be a problem for these in some
 > > recent machines.  While at 250MHz it should be using only 4.375 watts,
 > > that doesn't seem to be working right on these, and you may be better
 > > off (regarding heat) using the fewer frequencies provided just by est.
 > >
 > > =======
 > > dev.cpu.0.freq: 250
 > > dev.cpu.0.freq_levels: 2000/35000 1750/30625 1500/26250 1250/21875
 > > 1000/17500 750/13125 500/8750 250/4375
 > > dev.cpu.0.cx_supported: C1/1 C2/57
 > > dev.cpu.0.cx_lowest: C1
 > > dev.cpu.0.cx_usage: 100.00% 0.00% last 500us
 > > =======
 > >
 > > So, cpufreq seems only to be seeing your 2000 frequency, and each of
 > > these other frequencies are 7/8, 6/8 .. 1/8 of 2000MHz, generated by
 > > p4tcc, which seems odd, unless 1000 is a 'real' supported frequency?
 > >
 > > Please try adding the following lines to your /boot/loader.conf and
 > > rebooting, then paste what 'sysctl dev.cpu' says after that?  Also check
 > > if just doing this makes any difference to your overheating issue, as it
 > > has for some people.
 > >
 > > hint.p4tcc.0.disable="1"
 > > hint.acpi_throttle.0.disable="1"
 > > hint.p4tcc.1.disable="1"
 > > hint.acpi_throttle.1.disable="1"
 > >
 > > You need both pairs; if you just disable p4tcc, acpi_throttle would
 > > attach and provide those same frequencies, so would be no advantage.
 > >
 > > You may also find 'Fighting for the power' by Alexander Motin useful, in
 > > particular enabling your available C2 state to reduce idle power use:
 > >
 > > http://lists.freebsd.org/pipermail/freebsd-current/2009-May/006436.html
[..]

 > Ok, thanks for it. The topic of Alexandre is very useful! So, i modify my
 > loader.conf an rc.conf file by adding lines you told me to write
 > (loader.conf) and lines to enable C2 and others to reduce number of sounds
 > genertaed interrupts (see 'Fighting for the power' of Alexandre).

Yes C2 should help overall, even on CPU-intensive tasks like buildworld, 
and advice on how to to power-down subsystems you're not using is handy.

Is there any mention in your BIOS settings about 'C1E' or similar?

 > I reboot and as you have asked me, the output of systcl dev.cpu after 
 > reboot : http://pastebin.com/bajvzy1W

 : dev.cpu.0.freq: 250
 : dev.cpu.0.freq_levels: 2000/35000 1750/30625 1500/26250 1250/21875 
 :  1000/17500 750/13125 500/8750 250/4375
 : dev.cpu.0.cx_supported: C1/1 C2/57
 : dev.cpu.0.cx_lowest: C2
 : dev.cpu.0.cx_usage: 5.51% 94.48% last 229us

Well now I'm confused, unless your C2D actually is really providing all 
of those frequencies out of the box, without any throttling driver?

Are you sure that after booting with those hints in /boot/loader.conf 
(check: in /boot directory) that no lines at all are shown matching:

 % egrep 'p4tcc|acpi_throttle' /var/run/dmesg.boot

If that shows nothing, then I've been way off-base about this ..

 > I tried to see how to behave my laptop (regarding fan noise and heat).
 > Overall, i think it's a bit better, less noisy but not really perfect (sorry
 > about my vagueness).
 > 
 > I didn't do all steps of the topic of Alexandre and maybe after do them, it
 > will be better again...

First, a little (understandable) confusion; the 'Fighting for the power' 
post was by AlexandER Motin (mav at freebsd.org), the developer of recent 
snd_hda and mods to the powerd algorithms, among other things.  It was 
AlexandRE Kovalenko, note spelling, (cc'd), who replied offering to look 
through your BIOS ASL code if you dump it out and post it somewhere, as 
detailed on the ACPI debugging page.

 > I tried to do an high cpu task but same behavor, system shuting down (heat
 > exceed 92°C, critical...)

Hmm, there was no 92C mentioned before; _HOT was 90C and I don't think 
FreeBSD uses _HOT at all, just _PSV and _CRT (any corrections welcome)

 > I will to learn more about acpi debug and ASL from the handbokk and share
 > you more about these.

Good idea.  Generating your ASL is simple using those instructions, and 
Alexandre has a track record at spotting problems, especially thermal, 
among others who might be interested in looking through it.

But please confirm there's no mention of p4tcc or acpi_thermal in dmesg?

cheers, Ian


More information about the freebsd-mobile mailing list