Intel Pentium Dual Core E5200 and Enhanced Speedstep
Gabriel Lavoie
glavoie at gmail.com
Tue Dec 9 04:16:11 PST 2008
2008/12/9 Ian Smith <smithi at nimnet.asn.au>
> On Mon, 8 Dec 2008 13:37:09 -0500 Gabriel Lavoie <glavoie at gmail.com>
> wrote:
>
> > I have a small problem/question about my Pentium Dual Core E5200. I
> > have this system running as a server since 1 month and I just noticed
> > that the CPU frequency may not be running at the highest speed. With
> > my other computer that has a Core 2 Duo, I noticed that under Windows
> > and Linux, the CPU frequency steps down at 2 GHz when the CPU is idle
> > and increases at 2.66 GHz when the CPU is under load. With this
> > FreeBSD Pentium Dual Core, I just noticed using sysctl that the
> > frequency after booting the system is at 1.25 GHz and it doesn't go
> > up automatically at 2.5 GHz under load.
> >
> > dev.cpu.0.freq: 1254
> > dev.cpu.0.freq_levels: 2508/-1 2194/-1 1881/-1 1567/-1 1254/-1 940/-1
> > 627/-1 313/-1
> >
> > If I do "sysctl dev.cpu.0.freq=2508", the frequency gets changed:
> >
> > [root at headless /home/wildchild]# sysctl dev.cpu.0.freq=2508
> > dev.cpu.0.freq: 1254 -> 2508
> > [root at headless /home/wildchild]# sysctl -a | grep cpu.0.freq
> > dev.cpu.0.freq: 2508
> > dev.cpu.0.freq_levels: 2508/-1 2194/-1 1881/-1 1567/-1 1254/-1 940/-1
> > 627/-1 313/-1
> >
> > Why isn't the frequency isn't increased automatically under load? And
> > why is it at 1.254 GHz after boot and not at the maximum frequency?
>
> It seems you are not running powerd, which is what monitors the load and
> adjusts frequency. Add powerd_enable="YES" to rc.conf and either reboot
> or just run '/etc/rc.d/powerd start' (or run powerd -v in a terminal to
> verify that it's shifting freqs according to your load requirements)
Will check about that.
>
>
> Speculation on the second matter below ..
>
> > Another thing I noticed with "dmesg" is the following error (CPU
> > supports Enhanced Speedstep, but is not recognized.):
>
> Which FreeBSD version? (uname -a)
[wildchild at headless ~]$ uname -a
FreeBSD headless.mutehq.net 7.0-RELEASE-p6 FreeBSD 7.0-RELEASE-p6 #0: Mon
Nov 24 10:59:10 UTC 2008
root at amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC
amd64
>
>
> > cpu0: <ACPI CPU> on acpi0
> > ACPI Warning (tbutils-0243): Incorrect checksum in table [OEMB] - D,
> > should be 8 [20070320]
>
> This looks ungood. You maybe should quote the earlier dmesgs re ACPI
> too. This sounds like an issue to take to the acpi at freebsd.org list.
Hum, about ACPI, if I remember well, there is a BIOS option to
enable/disable ACPI 2 tables. I will take a look at that.
>
>
> > est0: <Enhanced SpeedStep Frequency Control> on cpu0
> > est: CPU supports Enhanced Speedstep, but is not recognized.
> > est: cpu_vendor GenuineIntel, msr 61a4c2006004c20
> > device_attach: est0 attach returned 6
>
> 6 = fail. Either bad vendor ACPI (you've not mentioned what vendor or
> model) or maybe an older FreeBSD version than would recognise your cpu
> revision; you may need to run 7-STABLE or a 7.1 beta; dunno about 6.4.
>
> Either way, EST isn't functioning, or you'd have a larger range of freqs
> available than these eight, and milliWatt figures instead of those -1.
> There's no sign of 2.66GHz either, if that's expected?
2.66 GHz isn't expected, the CPU is an Intel Pentium Dual Core E5200 @ 2.5
GHz. It's one of the newest 45nm CPUs that were released in August 2008. The
motherboard is an ASUS P5KPL-CM and the BIOS is updated to the latest
version.
>
>
> > p4tcc0: <CPU Frequency Thermal Control> on cpu0
>
> p4tcc attached ok. That's what provides the 8 freqs you have, in 12.5%
> steps from 8/8 downto 1/8 of the base freq. While this helps control
> temperature it's not as effective as EST (which also modifies cpu core
> voltage) for managing power use, so you need to locate that problem.
>
> > cpu1: <ACPI CPU> on acpi0
> > est1: <Enhanced SpeedStep Frequency Control> on cpu1
> > est: CPU supports Enhanced Speedstep, but is not recognized.
> > est: cpu_vendor GenuineIntel, msr 61a4c2006004c20
> > device_attach: est1 attach returned 6
>
> Ditto, and presumably you have a p4tcc1 as as well?
Yes.
>
>
> > Why do I get this error?
> >
> > I found this problem with my machine after I looked at an article
> > telling that the new 45nm Intel CPUs were idling at around 3-4W when
> > Speedstep is decreasing their frequency. And I guess it means that
> > I've been running my server at 1.25 GHz all the time since I
> > installed it, which would explain why some compiling jobs were slow!
>
> Sure. Why it starts at 50% I don't know, unless something thinks there
> is a temperature problem? Anyway, you need powerd, and you likely need
> to check the acpi@ list about getting your EST working .. you may even
> need a BIOS upgrade or hacking on your ACPI ASL, but hopefully not ..
>
> And post them more details; at least the full /var/run/dmesg.boot and
> the results of 'sysctl hw.acpi dev.cpu' .. saving rounds of questions.
About the 50%, if I check the CPU frequency in the BIOS, it is always at
50%, probably because there is not much possible CPU load in configuring it.
My Core 2 Duo desktop computer has a similar behaviour if I check the
frequency when idle, either under Windows, Linux or in the BIOS. The max CPU
frequency is 2.66 GHz and it always idles at 2 GHz.
>
>
> cheers, Ian
Thanks,
Gabriel
--
Gabriel Lavoie
glavoie at gmail.com
More information about the freebsd-questions
mailing list