Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Undervolting with kernel 2.6 [Done!]
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next  
Reply to topic    Gentoo Forums Forum Index Gentoo on AMD64
View previous topic :: View next topic  
Author Message
Dio-Sama
n00b
n00b


Joined: 18 Mar 2005
Posts: 19

PostPosted: Sun Mar 05, 2006 1:57 pm    Post subject: Reply with quote

widan wrote:

[snip]You can't have both 800 and 1000 MHz normally (only one entry below 1400 MHz is allowed). [snip]

i did some testing on a mt-34 windows system with prime and rmclock. i added voltage steps for each multiplier from 4 to 9 and tested each 7hrs+ with prime, with no problems whatsoever. 800, 1000 and 1200 would make 3 steps below 1400, can you tell me why this is working perfectly fine?
morfic is trying to add more intermediate steps in his patch too, so who is right here?

cheers,
Ð.
_________________
"Death is but perchance to dream."
Back to top
View user's profile Send private message
widan
Veteran
Veteran


Joined: 07 Jun 2005
Posts: 1512
Location: Paris, France

PostPosted: Sun Mar 05, 2006 2:42 pm    Post subject: Reply with quote

The BIOS developer's guide says you should not have two low-fid entries:
Quote:
9.5.6.1 FID to VCO Frequency Relationship

Table 69 and Table 70 provide the core frequency-to-VCO frequency relationship for AMD Athlon™ 64 and AMD Opteron™ processors. These processors do not support frequency transitions in VCO frequency steps greater than 200 MHz. The processor driver, and the AMD PowerNow! driver use these tables when making P-state transitions.

Only one P-state is allowed in Table 69. The one P-state consists of a frequency from the “Minimum Core Frequency” column in Table 69 and is the minimum P-State supported by the processor. For processors that support P-state transitions, the power and thermal data sheet has a table of valid Pstates based on ordering part number that dictates which frequency in Table 69 is used for the minimum P-state supported by the processor.

...

Table 69. Low FID Frequency Table (< 1600 MHz)
Code:
          | Minimum Core  | VCO Frequency | Portal Core Frequencies
 FID[5:0] | Frequency MHz |      MHz      |       in Table 70
----------+---------------+---------------+-------------------------
 000000b  |      800      |      1600     |    1600, 1800
 000010b  |     1000      |      2000     |    1800, 2000, 2200
 000100b  |     1200      |      2400     |    2200, 2400, 2600
 000110b  |     1400      |      2800     |    2600, 2800, 3000

Also, when transitioning from a low-fid frequency, you're supposed to go to one of the "portal frequencies" (and same thing in the reverse order to go back to a low-fid state). So you can't transition between two low-fid frequencies directly.

That's the specifications. It does not mean the CPU can't do it, but it does mean that AMD doesn't certify that the CPUs can use multiple low-fid frequencies, or switch between low-fid states without going through a portal. It probably can be done, but it's not guaranteed to be stable. There are probably good reasons for those rules. If you follow the rules, you never change the VCO frequency by more than 200 MHz for each transition. If you don't follow them, the frequency jump might cause the PLL in the clock generator to lose lock for too much time, and the result could be a hard hang, or weird behavior.
Dio-Sama wrote:
i did some testing on a mt-34 windows system with prime and rmclock. i added voltage steps for each multiplier from 4 to 9 and tested each 7hrs+ with prime, with no problems whatsoever. 800, 1000 and 1200 would make 3 steps below 1400, can you tell me why this is working perfectly fine?

The problem is not that the CPU can or can't work at the low frequencies (there is no reason why it would not). The problem is that doing some of the transitions is not guaranteed to work 100% of the time. It will work at constant frequency, but it could hang when switching.
Back to top
View user's profile Send private message
Dio-Sama
n00b
n00b


Joined: 18 Mar 2005
Posts: 19

PostPosted: Mon Mar 06, 2006 11:32 am    Post subject: Reply with quote

so all in all the worst that could happen when adding more steps is a little whacky behaviour like crashes at some of the transitions...
i'm fine with that, so i guess i'll just wait for morfic to update his patch then.
_________________
"Death is but perchance to dream."
Back to top
View user's profile Send private message
Erdie
Advocate
Advocate


Joined: 20 May 2004
Posts: 2649
Location: Heidelberg - Germany

PostPosted: Wed Mar 15, 2006 9:01 am    Post subject: Reply with quote

I just tried out this hack by manually changing the kernel sources. This is really a good hint. I just saved about 10 degrees of temperature under heavy load. I am now running a 1.350 V@2GHz. I made a mistake at first and accidentally my machine runs a 1.1V@2GHz ;) But I could recompile my kernel modules without crash and now it is running save with 1.35V. This is really "cool", because the fan power management was broken since a certain time and i am running now the heatpipe fan at constant RPM with 5V. With this hack it will be not risky even at summer temperatures.

Erdie
_________________
Desktop AMD Ryzen 9 5900X 32GB RAM, Asus GF GTX 1060.
Notebook Tuxedo Pulse 15 Gen1 AMD Ryzen 7 4800H mit Radeon Vega 7
Raspberry Pi 1 + 2 + 3B+ + Zero W
Back to top
View user's profile Send private message
superwutze
Tux's lil' helper
Tux's lil' helper


Joined: 09 Dec 2004
Posts: 137
Location: Europe/Vienna

PostPosted: Wed Mar 15, 2006 3:24 pm    Post subject: Reply with quote

just ran some tests on my machine and wanted to share the results:

my system: tyan tiger k8w with 2 opteron 246 cpus, 2gb ram, ....

at first i patched a 2.6.15-r7 kernel and it borked. after some testing i realized that my system crashed the instant it changed frequencies. later i realized that it crashed only when i changed the voltage of the slowest mode. so i did the following:
original -> now
2ghz/1500mv -> 2ghz/1300mv
1.8ghz/1400mv -> 1.8ghz/1250mv
1ghz/1200mv -> 1ghz/1200mv
full load: 40/44 deg -> 34/37 deg (cpu0/cpu1)

and everything works fine! :lol:

then i simply copied the powernow-k8.c from 2.6.15 to 2.6.14 because i can't use 2.6.15. it kills my cordless desktop set, pptp tunnels don't work anymore and (most important) i can't watch tv anymore!!

of course i diffed the two at first, but the differences are minimal.

now i have a running system at 2.6.14, undervolting works perfect with ondemand governor, vpn with pptp and mppe works again but i still can't watch tv :? that worked last with 2.6.14-r3.

so long and happy undervolting,
andy
_________________
bill who? micro what?
Back to top
View user's profile Send private message
Elmo234
n00b
n00b


Joined: 08 Oct 2004
Posts: 48

PostPosted: Wed Mar 15, 2006 10:25 pm    Post subject: Reply with quote

I just started coding a program that is used as a daemon and undervolts the athlon64 cpu's.

I write the new vid's using /dev/cpu/*/msr

You can have a look at it here:

http://tuxamito.com.es/cpupw/
Back to top
View user's profile Send private message
tnt
Veteran
Veteran


Joined: 27 Feb 2004
Posts: 1227

PostPosted: Wed Mar 15, 2006 10:49 pm    Post subject: Reply with quote

Elmo234 wrote:
I just started coding a program that is used as a daemon and undervolts the athlon64 cpu's.

I write the new vid's using /dev/cpu/*/msr

You can have a look at it here:

http://tuxamito.com.es/cpupw/


you should announce that on:

cpufreq at lists.linux.org.uk
_________________
gentoo user
Back to top
View user's profile Send private message
freke
Veteran
Veteran


Joined: 23 Jan 2003
Posts: 1029
Location: Somewhere in Denmark

PostPosted: Thu Mar 16, 2006 9:52 pm    Post subject: Reply with quote

No doubt that an ebuild would be nice, but I think I'd rather have morfic sneak this one into the gentoo-sources...

It seems to be working flawlessly? At least I haven't seen any reports on it having broken anything so come on morfic, try and sneak it in ;)
Back to top
View user's profile Send private message
mark
Tux's lil' helper
Tux's lil' helper


Joined: 04 Jun 2002
Posts: 119

PostPosted: Sun Mar 19, 2006 7:12 pm    Post subject: Reply with quote

superwutze wrote:
just ran some tests on my machine and wanted to share the results:

my system: tyan tiger k8w with 2 opteron 246 cpus, 2gb ram, ....

at first i patched a 2.6.15-r7 kernel and it borked. after some testing i realized that my system crashed the instant it changed frequencies. later i realized that it crashed only when i changed the voltage of the slowest mode. so i did the following:
original -> now
2ghz/1500mv -> 2ghz/1300mv
1.8ghz/1400mv -> 1.8ghz/1250mv
1ghz/1200mv -> 1ghz/1200mv
full load: 40/44 deg -> 34/37 deg (cpu0/cpu1)

and everything works fine! :lol:

then i simply copied the powernow-k8.c from 2.6.15 to 2.6.14 because i can't use 2.6.15. it kills my cordless desktop set, pptp tunnels don't work anymore and (most important) i can't watch tv anymore!!

of course i diffed the two at first, but the differences are minimal.

now i have a running system at 2.6.14, undervolting works perfect with ondemand governor, vpn with pptp and mppe works again but i still can't watch tv :? that worked last with 2.6.14-r3.

so long and happy undervolting,
andy


This is really interesting to me. I also have a tyan tiger k8w (2875). and even using the default scaling I get lockups. Perhaps you could help me narrow things down.

Did you get lockups with regular scaling with no undervolting patch.

What Bios do you run

Its been suggested that my lockups are actually libata related somehow. Do you boot linux on a SATA or legacy IDE HD

There is a new beta BIOS which may resolve the problem but I'm unable to use it as it says my BIOS is write protected.

Mark
_________________
Regards

Mark
Back to top
View user's profile Send private message
superwutze
Tux's lil' helper
Tux's lil' helper


Joined: 09 Dec 2004
Posts: 137
Location: Europe/Vienna

PostPosted: Sun Mar 19, 2006 7:41 pm    Post subject: Reply with quote

i use bios 3.02 since the day it was released and it solved a lot of different problems. the board was always stable with windows, but performance was another thing. i like to max my computers out so windows is just for some real special compatibility problems for some customers. but for quite some time there was (alas!) no linux for me with that board. that was because of the agp design of the 8511 chip from amd. there is a huge compatibility problem with that agp-chip and a lot of power-demanding graphic-cards. back then i used a radeon 9800xt (till today the topmost energy-demanding card of all). since i switched to a x700pro and flashed to 3.02 everything simply works. my problems were mostly with my addon-cards. the board itself is (except for the poor memory performance with just one memory bus) a very nice and fine thing. it's a pity that there will be no dual-core support.

i always had a sata harddisk with this board, but my cdrw and dvdrw drives are pata. there were never any problems.

if you have some specific questions just ask!

so long,
andy
_________________
bill who? micro what?
Back to top
View user's profile Send private message
mark
Tux's lil' helper
Tux's lil' helper


Joined: 04 Jun 2002
Posts: 119

PostPosted: Sun Mar 19, 2006 10:14 pm    Post subject: Reply with quote

Well I have had some agp probs, a change in memory helped but I have agp disabled at the moment.

I have recently upgraded to 2x248 opterons and wanted to enable powernow but when I scale down to minimum I get a hard lock.

You're lock up problems sounded very similar.

We run the same hios so thats not it.

I have been in contact with the maintainor of powernow-k8 and it was suggested I had a libata oops, but you are using sata with I presume libata so that should not be it either.

I'm thinking of playing with scaling without a voltage drop but that seems a long shot.

I'm just trying to figure out where to go from here realy.

Thanks for coming back to me

Mark
_________________
Regards

Mark
Back to top
View user's profile Send private message
Elmo234
n00b
n00b


Joined: 08 Oct 2004
Posts: 48

PostPosted: Sun Mar 19, 2006 10:27 pm    Post subject: Reply with quote

tnt wrote:
Elmo234 wrote:
I just started coding a program that is used as a daemon and undervolts the athlon64 cpu's.

I write the new vid's using /dev/cpu/*/msr

You can have a look at it here:

http://tuxamito.com.es/cpupw/


you should announce that on:

cpufreq at lists.linux.org.uk


I just released a new version. The ebuild will be done in two or three days.

I will announce it on the cpufreq list when I have a more advanced version. Has anybody tried it? Thanks
Back to top
View user's profile Send private message
brihall
Tux's lil' helper
Tux's lil' helper


Joined: 29 Apr 2003
Posts: 86
Location: Colorado, USA

PostPosted: Sun Mar 19, 2006 11:07 pm    Post subject: Reply with quote

I tried cpupw. Worked fine with my CPU, an Opteron 165 (two C&Q steps) on an Asrock 939Dual-Sata2.

# cpupw -s
System has 1 physical CPU's
CPU 0-> voltage: 1.150000 v, VID: 16, frequency: 1000 Mhz, FID: 2

I did have one small disappointment, though. I was hoping to increase voltage over the max provided by my BIOS settings with this. No luck, I am still limited to 1.40V (default +.05). Using a kernel patch (powernow-k8-vcore_list-2.6.16-rc2.diff) to allow me to select the C&Q voltages also doesn't allow >1.40V. Not sure if this is a hardware limitation (I know you can modify the motherboard for up to 1.55V by shorting VID pins), but it would be nice if cpupw could override this limit.

I remember using the first version to set the current CPU voltage from the command line, but now I can't remember what the syntax was. Could you add that info to the --help listing?

Also, since I am overclocking, the frequency listed is incorrect. Perhaps the current frequency could be output (from /proc/cpuinfo) as well as the FID.
Back to top
View user's profile Send private message
Elmo234
n00b
n00b


Joined: 08 Oct 2004
Posts: 48

PostPosted: Sun Mar 19, 2006 11:27 pm    Post subject: Reply with quote

If modifying the kernel and this program didn't work it might be because a hardware limitation. In my laptop I have the full range of voltage but in my desktop the voltage will never go under 1.1v and VID will never decrease 18. But I haven't have time to investigate what causes this.

I just realised that I didn't program any way to just set a different voltage from the command line. I will to it very soon, I promise! (probably version 0.1.2)

About the speed and voltage... I just calculate it from the FID and VID. For K8 I always suppose a 100 Mhz speed bus. I don't know how to guess the FSB (or HT link) speed... (any ideas) Las option will be calculate it form /proc/cpuinfo

Thanks for your information :)
Back to top
View user's profile Send private message
widan
Veteran
Veteran


Joined: 07 Jun 2005
Posts: 1512
Location: Paris, France

PostPosted: Mon Mar 20, 2006 12:13 am    Post subject: Reply with quote

brihall wrote:
I did have one small disappointment, though. I was hoping to increase voltage over the max provided by my BIOS settings with this. No luck, I am still limited to 1.40V (default +.05). Not sure if this is a hardware limitation.

It is a hardware limit AFAIK. Revision E CPUs seem to have a limited voltage range. On an X2 3800+:
Code:
phuket a64-vid # ./a64-vid
Maximum freq.   : 0x0c (2000 MHz)
Startup freq.   : 0x0c (2000 MHz)
Current freq.   : 0x0c (2000 MHz)

Voltage range   : 0x12 (1100 mV) -> 0x06 (1400 mV)
Startup voltage : 0x08 (1350 mV)
Current voltage : 0x12 (1100 mV)

Look at the "voltage range", it's what the CPU reports as accepted voltages. If you try to set lower than the minimum, the CPU will set that minimum instead.
brihall wrote:
(I know you can modify the motherboard for up to 1.55V by shorting VID pins), but it would be nice if cpupw could override this limit.

You can tweak it on the motherboard because it's either forcing the VID pins to a given value (so what the processor says doesn't matter to the VRM) or introducing a bias in the VRM reference voltage (like up all VIDs by 100 mV). That can't be done easily through software (the BIOS knows how to program that, but it's motherboard-specific).
Elmo234 wrote:
I don't know how to guess the FSB (or HT link) speed...

You would have to read it from the chipset or the clock generator. There is no generic way AFAIK.
Back to top
View user's profile Send private message
Elmo234
n00b
n00b


Joined: 08 Oct 2004
Posts: 48

PostPosted: Mon Mar 20, 2006 12:25 am    Post subject: Reply with quote

widan wrote:

Elmo234 wrote:
I don't know how to guess the FSB (or HT link) speed...

You would have to read it from the chipset or the clock generator. There is no generic way AFAIK.


Any documentation in how to do that before loosing hours in google? ;)

Thanks
Back to top
View user's profile Send private message
brihall
Tux's lil' helper
Tux's lil' helper


Joined: 29 Apr 2003
Posts: 86
Location: Colorado, USA

PostPosted: Mon Mar 20, 2006 1:01 am    Post subject: Reply with quote

a64-vid seems to indicate that 1.55V is available, but trying to get there fails. The attempt to do this at the command line that I referred to in the previous post was using a64-vid, not cpupw.

# a64-vid
Maximum freq. : 0x0a (1800 MHz)
Startup freq. : 0x0a (1800 MHz)
Current freq. : 0x02 (1000 MHz)

Voltage range : 0x00 (1550 mV) -> 0x06 (1400 mV)
Startup voltage : 0x08 (1350 mV)
Current voltage : 0x10 (1150 mV

# a64-vid 1550
Maximum freq. : 0x0a (1800 MHz)
Startup freq. : 0x0a (1800 MHz)
Current freq. : 0x02 (1000 MHz)

Voltage range : 0x00 (1550 mV) -> 0x06 (1400 mV)
Startup voltage : 0x08 (1350 mV)
Current voltage : 0x10 (1150 mV)

Target voltage : 0x00 (1550 mV)
New control MSR : 0x0000000100010002

New voltage : 0x06 (1400 mV) [FAILURE]
Back to top
View user's profile Send private message
widan
Veteran
Veteran


Joined: 07 Jun 2005
Posts: 1512
Location: Paris, France

PostPosted: Mon Mar 20, 2006 8:34 am    Post subject: Reply with quote

brihall wrote:
a64-vid seems to indicate that 1.55V is available, but trying to get there fails.

It's not available. It's just that my program doesn't check for the 0x00 value, that means there is no limit reported by the CPU for that value. In your case it means you can set the voltage as low as you want, there is no lower limit.

Edit: It should be fixed now, it should show the corresponding limit of the VRM spec (800 mV -> 1550 mV) when the CPU reports no limit.
Back to top
View user's profile Send private message
Devport
Guru
Guru


Joined: 15 Dec 2004
Posts: 361

PostPosted: Tue Mar 21, 2006 9:03 am    Post subject: Reply with quote

morfic wrote:
please try the following patch if you would like the ability to change the voltage at boot time or whenever inserting powernow-k8 module

patch kernel 2.6.16-rc2 (only tested on vanilla) with this patch: http://dev.gentoo.org/~morfic/powernow-k8-vcore_list-2.6.16-rc2.diff

Patch does not work with gentoo-sources-2.6.16, but I have a feeling that it does not apply to vanilla 2.6.16 final as well.
Back to top
View user's profile Send private message
brihall
Tux's lil' helper
Tux's lil' helper


Joined: 29 Apr 2003
Posts: 86
Location: Colorado, USA

PostPosted: Tue Mar 21, 2006 2:52 pm    Post subject: Reply with quote

The powernow patch works for me on 2.6.15 and 2.6.16, just booted 2.6.16 this morning:

Linux syrinx 2.6.16-ck1 #1 SMP PREEMPT Mon Mar 20 15:10:50 MST 2006 x86_64 Dual Core AMD Opteron(tm) Processor 165 GNU/Linux

powernow-k8: Found 2 AMD Athlon 64 / Opteron processors (version 1.60.0)
powernow-k8: Requested Voltage for id0 is 1350 mV default voltage is 1350
powernow-k8: Performing required adjustment of 0 mV or 0 25mV steps
powernow-k8: Requested Voltage for id1 is 1075 mV default voltage is 1300
powernow-k8: Performing required adjustment of 225 mV or 9 25mV steps
powernow-k8: 0 : fid 0xa (1800 MHz), vid 0x8 (1350 mV)
powernow-k8: 1 : fid 0x2 (1000 MHz), vid 0x13 (1075 mV)
cpu_init done, current fid 0xa, vid 0x8

I do it via the kernel boot line, I remember being successful doing when inserting the module. From my grub.conf:

kernel /boot/bzImage vga=normal noexec=on noexec32=on root=/dev/sda2 ro elevator=cfq powernow-k8.vcore_list=1375,1100

I have also noticed that the order of the list may vary, depending on the processor. For example, on my S754 3000+, this works:

kernel /boot/bzImage vga=normal noexec=on noexec32=on root=/dev/hda3 ro powernow-k8.vcore_list=900,1100,1200

Some experimentation required...

If it could be cleaned up a little so the parameter order is consistent, it might even be allowed into the main kernel.
Back to top
View user's profile Send private message
Devport
Guru
Guru


Joined: 15 Dec 2004
Posts: 361

PostPosted: Tue Mar 21, 2006 6:00 pm    Post subject: Reply with quote

Devport wrote:
morfic wrote:
please try the following patch if you would like the ability to change the voltage at boot time or whenever inserting powernow-k8 module

patch kernel 2.6.16-rc2 (only tested on vanilla) with this patch: http://dev.gentoo.org/~morfic/powernow-k8-vcore_list-2.6.16-rc2.diff

Patch does not work with gentoo-sources-2.6.16, but I have a feeling that it does not apply to vanilla 2.6.16 final as well.

Sorry, I just realized that the old version works. I only tried v2 which does not apply.

Devport wrote:
morfic wrote:
please try the following patch if you would like the ability to change the voltage at boot time or whenever inserting powernow-k8 module

patch kernel 2.6.16-rc2 (only tested on vanilla) with this patch: http://dev.gentoo.org/~morfic/powernow-k8-vcore_list-2.6.16-rc2.diff

Patch does not work with gentoo-sources-2.6.16, but I have a feeling that it does not apply to vanilla 2.6.16 final as well.

Sorry, I just realized that the old version works. I only tried v2 which does not apply.
Back to top
View user's profile Send private message
mark
Tux's lil' helper
Tux's lil' helper


Joined: 04 Jun 2002
Posts: 119

PostPosted: Wed Mar 29, 2006 7:55 pm    Post subject: update on my lockup problems Reply with quote

I've just tried the patch and discovered that the lockups on my tyan k8w (2875) disappear if I set the lowest voltage to 1300 rather than the default 1200. Whilst I have not tested extensively 1300 works at all frequencies for my dual opteron 248's.

Now I had thought that cpufreq scaled the cpu's in tandem but this no longer seems to be true. Frequencies scale independently. However if I manually set both cpu's to the same frequency, 1200 and maybe lower seems to be doable.

I have no idea how to automatically scale them in tandem, or even if that is worth it. It may be better to let them scale inbependently at 1300mv.

So I don't have all the answers, I have no idea if this is a bug or a hardware issue, but the info may help others at some point.

Note that even without this patch default voltages hang my system when scaled independently on all recent kernels

Mark
_________________
Regards

Mark
Back to top
View user's profile Send private message
squash
Tux's lil' helper
Tux's lil' helper


Joined: 22 Jun 2002
Posts: 79

PostPosted: Thu Apr 13, 2006 2:43 am    Post subject: Reply with quote

Neither a64-vid nor cpupw work for me, however I am having luck with the powernow-k8.c patch.

Code:
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 4
model name      : AMD Athlon(tm) 64 Processor 3200+
stepping        : 8
cpu MHz         : 801.056
cache size      : 1024 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext lm 3dnowext 3dnow
bogomips        : 1605.79
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp


Code:

# cpupw -s
System has 1 physical CPU's
CPU 0-> voltage: 1.550000 v, VID: 0, frequency: 800 Mhz, FID: 0


Code:

./a64-vid
Maximum freq.   : 0x00 (800 MHz)
Startup freq.   : 0x00 (800 MHz)
Current freq.   : 0x00 (800 MHz)

Voltage range   : 0x3f (-25 mV) -> 0x3f (-25 mV)
Startup voltage : 0x01 (1525 mV)
Current voltage : 0x00 (1550 mV)


Code:
uname -a
Linux athlon64 2.6.14.2 #7 Wed Apr 12 20:51:31 CDT 2006 x86_64 AMD Athlon(tm) 64 Processor 3200+ AuthenticAMD GNU/Linux


Code:
dmesg | grep power
[   22.868892] ACPI: CPU0 (power states: C1[C1])
[   99.883775] powernow-k8: Found 1 AMD Athlon 64 / Opteron processors (version 1.50.4)
[   99.883978] powernow-k8:    0 : fid 0xc (2000 MHz), vid 0x2 (1500 mV)
[   99.883981] powernow-k8:    1 : fid 0xa (1800 MHz), vid 0x6 (1400 mV)
[   99.883984] powernow-k8:    2 : fid 0x0 (800 MHz), vid 0xa (1300 mV)
[  137.278703] powernow-k8: Found 1 AMD Athlon 64 / Opteron processors (version 1.50.4)
[  137.278913] powernow-k8: Requested Voltage for id0 is 1300 mV default voltage is 1500
[  137.278916] powernow-k8: Performing required adjustment of 200 mV  or 8 25mV steps
[  137.278919] powernow-k8: Requested Voltage for id1 is 1200 mV default voltage is 1400
[  137.278922] powernow-k8: Performing required adjustment of 200 mV  or 8 25mV steps
[  137.278925] powernow-k8: Requested Voltage for id2 is 900 mV default voltage is 1300
[  137.278927] powernow-k8: Performing required adjustment of 400 mV  or 16 25mV steps
[  137.278930] powernow-k8:    0 : fid 0xc (2000 MHz), vid 0xa (1300 mV)
[  137.278933] powernow-k8:    1 : fid 0xa (1800 MHz), vid 0xe (1200 mV)
[  137.278936] powernow-k8:    2 : fid 0x0 (800 MHz), vid 0x1a (900 mV)
[  137.279899] powernow-k8: ph2 null fid transition 0xc


My motherboard is an Asus k8v se deluxe. These voltages haven't been tested for stability yet, but they don't immediately crash. 1250mv@2000 crashes as soon as yout return. 1300mv gets me into kde.
Back to top
View user's profile Send private message
obrut<-
Apprentice
Apprentice


Joined: 01 Apr 2005
Posts: 183
Location: near hamburg, germany

PostPosted: Thu Apr 13, 2006 2:19 pm    Post subject: Reply with quote

on my system powernow_k8 does not load ("mp systems not supported by psb bios structure") but i'd like to clock down my cpu when idle. the powernow driver for windows does not load either. but i can change fid and vid using rightmark's rmclock. so there should be a way make it work under linux. perhaps a patch for this module. i can test the voltages when running windows, so i would be satisfied when i can define the voltages in a kernel source file (as i do it with the speedstep_centrino module on my notebook). but i don't know how to change the powernow_k8 module :(
Back to top
View user's profile Send private message
Voluspa
n00b
n00b


Joined: 20 Mar 2006
Posts: 3
Location: Sweden

PostPosted: Fri Apr 21, 2006 10:20 pm    Post subject: Reply with quote

squash wrote:
Neither a64-vid nor cpupw work for me, however I am having luck with the powernow-k8.c patch.
[...]
Code:

./a64-vid
Maximum freq.   : 0x00 (800 MHz)
Startup freq.   : 0x00 (800 MHz)
Current freq.   : 0x00 (800 MHz)

Voltage range   : 0x3f (-25 mV) -> 0x3f (-25 mV)
Startup voltage : 0x01 (1525 mV)
Current voltage : 0x00 (1550 mV)



The a64-vid program doesn't have any sanity checks, and would output something like that if /dev/cpu/0/msr is lacking or not readable by the executing user. Also, the kernel must be compiled with:

Code:

Symbol: X86_MSR [=y]   
   Prompt: /dev/cpu/*/msr - Model-specific register support   
      Defined at arch/x86_64/Kconfig:169
      Location: 
          -> Processor type and features


To create the msr and (optionally) cpuid nodes just:

mkdir /dev/cpu
mkdir /dev/cpu/0
mknod /dev/cpu/0/msr c 202 0
mknod /dev/cpu/0/cpuid c 203 0

and change them to world readable - for convenience - if your root user doesn¨t do it by default. There really should be no hinder for you to run userspace programs to manipulate the msr... but I could be wrong...

Speaking of undervolting, I've now switched from the userspace CPUPW to patch:
http://dev.gentoo.org/~morfic/powernow-k8-vcore_list-2.6.16-rc2-v2.diff
on a 2.6.17-rc2-git4 kernel, loading the module (yes, the params have changed in v2) with:

/sbin/modprobe powernow-k8 freq_list=2200,2000,1800,800 vcore_list=1250,1150,1050,850
[...]
/sbin/modprobe cpufreq_ondemand
[...]
echo "ondemand">/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

The reason for my change of heart is uncertainty regarding the userspace governor:
http://marc.theaimsgroup.com/?l=linux-acpi&m=114447855721163&w=2
[kernel vs user power management]

If Len Brown gets his way, it will die/hide. In that thread ondemand is mentioned as being the best although some AMD64 problems persist. But on my system that governor works perfectly.

@squash
You still have your C1 state in 2.6.14.2 but your next kernel will need my patch to retain that lonely state:
https://forums.gentoo.org/viewtopic-p-3195648.html#3195648

Mvh
Mats Johannesson
_________________
Mvh
Mats Johannesson
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on AMD64 All times are GMT
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next
Page 3 of 8

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum