At 09:24 PM 3/25/2010, Ian Smith wrote:
>On Wed, 24 Mar 2010, John Long wrote:
> > At 11:27 PM 3/22/2010, Alexander Motin wrote:
> > >John Long wrote:
> > >>    Hello, I am putting together a couple update servers. Went with c2d
> > >> E7500 on gigabyte G41M-ES2L boards. fbsd 8.0 release generic (so far)
> > >>    amd64, 1g mem, 1tb wd cavier blk, fresh system.
> > >>    My Kill-a-watt shows 41 watts idle and when I enable powerd then it
> > >>    climbs to 43 watts idle.
>
>I'm interested in this apparently strange finding.  Can you show sysctl
>dev.cpu after boot but before running powerd, and after starting powerd?
>
>I wonder particularly what dev.cpu.o.freq is before running powerd, ie
>whether it boots up at full speed?  We've seen some that haven't,
>perhaps influenced by BIOS settings?

Bios is most recent re their site. F6 I believe. boots to same 41 watts.
%sysctl dev.cpu
dev.cpu.0.%desc: ACPI CPU
dev.cpu.0.%driver: cpu
dev.cpu.0.%location: handle=\_PR_.CPU0
dev.cpu.0.%pnpinfo: _HID=none _UID=0
dev.cpu.0.%parent: acpi0
dev.cpu.0.freq: 2933
dev.cpu.0.freq_levels: 2933/-1 2566/-1 2199/-1 1833/-1 1466/-1 1099/-1 733/-1 366/-1
dev.cpu.0.cx_supported: C1/1 C2/1 C3/150
dev.cpu.0.cx_lowest: C1
dev.cpu.0.cx_usage: 100.00% 0.00% 0.00% last 500us
dev.cpu.1.%desc: ACPI CPU
dev.cpu.1.%driver: cpu
dev.cpu.1.%location: handle=\_PR_.CPU1
dev.cpu.1.%pnpinfo: _HID=none _UID=0
dev.cpu.1.%parent: acpi0
dev.cpu.1.cx_supported: C1/1 C2/1 C3/150
dev.cpu.1.cx_lowest: C1
dev.cpu.1.cx_usage: 100.00% 0.00% 0.00% last 500us
%powerd -n adp

about 3 secs later
%sysctl dev.cpu
dev.cpu.0.%desc: ACPI CPU
dev.cpu.0.%driver: cpu
dev.cpu.0.%location: handle=\_PR_.CPU0
dev.cpu.0.%pnpinfo: _HID=none _UID=0
dev.cpu.0.%parent: acpi0
dev.cpu.0.freq: 1833
dev.cpu.0.freq_levels: 2933/-1 2566/-1 2199/-1 1833/-1 1466/-1 1099/-1 733/-1 366/-1
dev.cpu.0.cx_supported: C1/1 C2/1 C3/150
dev.cpu.0.cx_lowest: C1
dev.cpu.0.cx_usage: 100.00% 0.00% 0.00% last 500us
dev.cpu.1.%desc: ACPI CPU
dev.cpu.1.%driver: cpu
dev.cpu.1.%location: handle=\_PR_.CPU1
dev.cpu.1.%pnpinfo: _HID=none _UID=0
dev.cpu.1.%parent: acpi0
dev.cpu.1.cx_supported: C1/1 C2/1 C3/150
dev.cpu.1.cx_lowest: C1
dev.cpu.1.cx_usage: 100.00% 0.00% 0.00% last 500us

wait about 10 more sec and it is down to min freq and pwr is up to 44 watts.
%sysctl dev.cpu
dev.cpu.0.%desc: ACPI CPU
dev.cpu.0.%driver: cpu
dev.cpu.0.%location: handle=\_PR_.CPU0
dev.cpu.0.%pnpinfo: _HID=none _UID=0
dev.cpu.0.%parent: acpi0
dev.cpu.0.freq: 366
dev.cpu.0.freq_levels: 2933/-1 2566/-1 2199/-1 1833/-1 1466/-1 1099/-1 733/-1 366/-1
dev.cpu.0.cx_supported: C1/1 C2/1 C3/150
dev.cpu.0.cx_lowest: C1
dev.cpu.0.cx_usage: 100.00% 0.00% 0.00% last 500us
dev.cpu.1.%desc: ACPI CPU
dev.cpu.1.%driver: cpu
dev.cpu.1.%location: handle=\_PR_.CPU1
dev.cpu.1.%pnpinfo: _HID=none _UID=0
dev.cpu.1.%parent: acpi0
dev.cpu.1.cx_supported: C1/1 C2/1 C3/150
dev.cpu.1.cx_lowest: C1
dev.cpu.1.cx_usage: 100.00% 0.00% 0.00% last 500us

>Turning on debug.cpufreq.verbose and hw.acpi.verbose may add clues?

Either of the above makes no change in dev.cpu out but sysctl -a gets really noisy in places
cpufreq: dup done, inserting new level 1833 after 2199
cpufreq: expand set added rel setting 62% to 1833 level
cpufreq: dup set considering derived setting 1466
cpufreq: removed last relative driver: p4tcc1
cpufreq: dup done, inserting new level 1466 after 1833
cpufreq: expand set added rel setting 50% to 1466 level
cpufreq: dup set considering derived setting 1099
cpufreq: removed last relative driver: p4tcc1
cpufreq: dup done, inserting new level 1099 after 1466
cpufreq: expand set added rel setting 37% to 1099 level
cpufreq: dup set considering derived setting 733
cpufreq: removed last relative driver: p4tcc1
cpufreq: dup done, inserting new level 733 after 1099
cpufreq: expand set added rel setting 25% to 733 level
cpufreq: dup set considering derived setting 366
cpufreq: removed last relative driver: p4tcc1
cpufreq: dup done, inserting new level 366 after 733
cpufreq: expand set added rel setting 12% to 366 level
cpufreq: setting rel freq 10000 on p4tcc1 (cpu 1)
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: get returning known freq 2933
cpufreq: adding 8 relative settings
cpufreq: adding abs setting 2933 at head
cpufreq: expand set added rel setting 100% to 2933 level
cpufreq: dup set considering derived setting 2566
cpufreq: removed last relative driver: p4tcc0
cpufreq: dup done, inserting new level 2566 after 2933
cpufreq: expand set added rel setting 87% to 2566 level
cpufreq: dup set considering derived setting 2199
cpufreq: removed last relative driver: p4tcc0
cpufreq: dup done, inserting new level 2199 after 2566
cpufreq: expand set added rel setting 75% to 2199 level
cpufreq: dup set considering derived setting 1833
cpufreq: removed last relative driver: p4tcc0
cpufreq: dup done, inserting new level 1833 after 2199
cpufreq: expand set added rel setting 62% to 1833 level
cpufreq: dup set considering derived setting 1466
cpufreq: removed last relative driver: p4tcc0
cpufreq: dup done, inserting new level 1466 after 1833
cpufreq: expand set added rel setting 50% to 1466 level
cpufreq: dup set considering derived setting 1099
........

Hundreds of those lines,  Keeps repeating, fast to slow to fast etc...

>
> > >>    It shows that the freq is controlled well, goes down to 365 mhz but
> > >>    the tdp is not decreased, rather it increases.
>
>Yes you're only getting p4tcc throttling as Alexander points out. You'll
>need to get est working to get power reduction from lower frequencies,
>which likely won't correspond to these f/8 step throttling frequencies.
>
>As Jeremy suggested, here's how to turn throttling off, and something
>like what you could expect with est working:
>http://lists.freebsd.org/pipermail/freebsd-stable/2010-March/055666.html

from link:
I would recommend you to disable it by setting:
hint.p4tcc.0.disabled=1
hint.acpi_throttle.0.disabled=1

I get unknown oid on both. Not sure how to disable p4tcc here. What I have to work with.
dev.p4tcc.0.%desc: CPU Frequency Thermal Control
dev.p4tcc.0.%driver: p4tcc
dev.p4tcc.0.%parent: cpu0
dev.p4tcc.0.freq_settings: 10000/-1 8750/-1 7500/-1 6250/-1 5000/-1 3750/-1 2500/-1 1250/-1
dev.p4tcc.1.%desc: CPU Frequency Thermal Control
dev.p4tcc.1.%driver: p4tcc
dev.p4tcc.1.%parent: cpu1
dev.p4tcc.1.freq_settings: 10000/-1 8750/-1 7500/-1 6250/-1 5000/-1 3750/-1 2500/-1 1250/-1

Tried variations of dev instead of hint, no go.

going to c3 lowers it about a watt with powerd running to 43. c2 would be somewhere inbetween?

%sysctl -a | grep lowest
debug.cpufreq.lowest: 0
hw.acpi.cpu.cx_lowest: C1
dev.cpu.0.cx_lowest: C1
dev.cpu.1.cx_lowest: C1
%
%sysctl -a | grep C1
hw.acpi.cpu.cx_lowest: C1
dev.cpu.0.cx_supported: C1/1 C2/1 C3/150
dev.cpu.0.cx_lowest: C1
dev.cpu.1.cx_supported: C1/1 C2/1 C3/150
dev.cpu.1.cx_lowest: C1
%
%sysctl hw.acpi.cpu.cx_lowest=C2
hw.acpi.cpu.cx_lowest: C1 -> C2

42/43 watts now
%sysctl dev.cpu.0.cx_lowest=C2
dev.cpu.0.cx_lowest: C2 -> C2
%sysctl dev.cpu.1.cx_lowest=C2
dev.cpu.1.cx_lowest: C2 -> C2
no other change with above 2 lines.

%killall powerd
It drops to 41 watts while still in C2

>
> > >>    If I disable eist, c1 and c3 helpers in bios, as per suggestion in
> > >> mail archive, then it adds 1 watt to both figures. I was hoping to get
> > >>    this total tdp down to a very low amount, and it is but it should
> > >>    theoretically go lower with powerd, right?
>
>If powerd were actually reducing frequency (and voltage) via est it
>certainly would.  Finding out why est is failing to attach on your
>hardware is the only likely path to success, try focusing on that and
>ignoring side issues.  Have you browsed freebsd-acpi archives re this?

Sounds right, I did not find the est code yet to peruse it some. Otherwise I am out of clues on what to do.

> > >>    load   3%, current freq  365 MHz ( 7), wanted freq  365 MHz
> > >>    load   0%, current freq  365 MHz ( 7), wanted freq  365 MHz
> > >
> > >Your ACPI BIOS seems not reporting tables required to control EIST. So
> > >powerd probably uses only thermal throttling, which is not really
> > >effective for power saving on modern CPUs. You should check your BIOS
> > >options or may be update BIOS.
> > >
> > >If you have no luck with EIST - try to use C-states if BIOS reports at
> > >least them. It also can be quite effective.
> > >
> > >--
> > >Alexander Motin
> >
> > Thanks for the info, I did try to kick it to C3 and that helped poquito
> > amount. Everything is enabled in bios that matters to this, that does help a
> > little too but powerd actually raises tdp a little. See other recent reply
> > for more info.
>
>Have you tried C2?  Are you running the latest BIOS?  And perhaps your
>ACPI ASL may be amenable to repair, if Gigabyte ACPI is broken here?

Changes to the asl are a bit more than I would want to get into. If I can find the est code then I might dig further..

Bios is most recent, has EIST, c1e and c2e I believe enabled. That seems to do the best all by itself. Maybe It does no good to beat a dead horse?? :-) I see an ITE IT8718F-S chip on board. mbmon does work somewhat but its code is way old and does not see the newer chip versions. some good docs with mbmon in usr/local/share/docs tho..
%mbmon -d -A
Summary of Detection:
 * ISA monitor(s):
  ** Nat.Semi.Con. Chip LM78 found.
  ** Int.Tec.Exp. Chip IT8705F/IT8712F or SIS950 found

vcore is 1.14 now but most of the rest are not correct readings. It is 1.28 without bios settings enabled. It never gets lower. Probably if I declock it below 2.93. 1.05 is what I was hoping to go down to or lower at 365mhz.

%mbmon
Temp.= 191.0,  0.0,  0.0; Rot.=  874, 3358, 2657
Vcore = 1.14, 1.92; Volt. = 3.31, 4.92,  1.09, -14.19, -6.12

Temp.= 191.0,  0.0,  0.0; Rot.=  874, 3358, 2657
Vcore = 1.15, 1.92; Volt. = 3.31, 4.92,  1.09, -14.19, -6.12
%
%powerd -n adp
%mbmon
Temp.= 191.0,  0.0,  0.0; Rot.=  874, 3358, 2657
Vcore = 1.18, 1.92; Volt. = 3.31, 4.92,  1.22, -14.19, -6.12

Temp.= 191.0,  0.0,  0.0; Rot.=  874, 3358, 2657
Vcore = 1.14, 1.92; Volt. = 3.31, 4.92,  1.16, -14.19, -6.12

It jumped up in vcore a little there with powerd. C1E and C2E which include P-states are what I am really after and I think that the bios by itself provides those changes better than any other changes in these settings.

>
>cheers, Ian

Thanks to everyone that responded.

John

_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"

Reply via email to