Jump to content

New version 1.1 of GenericCPUPowerManagement


Superhai
 Share

625 posts in this topic

Recommended Posts

I am only getting 3 states, is it like that for everyone else?

 

1) 600mhz (400mhz FSB) - SuperLFM mode

2) 1200mhz (800mhz FSB)

3) 2400mhz (800mhz FSB)

 

Does SuperLFM mode save more power than regular FSB? Because both use .950mv at min multiplier.

 

Also, it would be nice if we could specify our own steppings and corresponding voltages, like Rmclock in Windows.

Link to comment
Share on other sites

Just s short Question (sry it's quite time consuming to read ALL the Posts from eleven Pages - wow ;-) )

 

Tried your Kext today (1.0.11) and it seems to work with my C2D E6750 2,66Ghz.

 

But is it right my CPU only got 3 Steps -> 2000Mhz, 2333Mhz and 2666Mhz ?

Even with Load near 0% it won't switch any lower , stays at 1998Mhz / 1075mV / 36 degrees Celsius.

 

 

Thanks for your KEXT and for any explanation :-)

Link to comment
Share on other sites

It will be like me: Your CPU is overclocked by higher FSB, which is (until now) not seen by the .kext and it uses the normal FSB (200/266/333).

I think its only cosmetic , speed stepping works as it should.

Maybe, its the easiest way , superhai adds an default fsb_oc = 1.0 entry in the plist.

i use 240 MHZ (200 normal) so i must change fsb_oc = 1.2 (240/200=1.2), default fsb_oc = 1.0 (200/200)=not overclocked)

For displaying MHZ, the displayed MHZ = displayedMHZ * fsb_oc

Thanks mitch_de, I've been busy with my GPU. Not possible to make it work, so I abandoned ... I will sell this laptop and purchase other, may be new Macbook.

 

Greetings MacOff

Link to comment
Share on other sites

i get a kernel panic with the new version this is the snap shot for it

 

if you need me to test more just tell me what i must do :-)

sacaman

 

I made a small modification to the source, try to download the latest kext (no new version number), hopefully it will not panic.

 

Does SuperLFM mode save more power than regular FSB? Because both use .950mv at min multiplier.

 

Also, it would be nice if we could specify our own steppings and corresponding voltages, like Rmclock in Windows.

 

You are supposed to get 4 states. I decided to just do 4 states, as I believe it is not necessary with more. If you disagree, just tell me and give a decent explanation, it can be broght back to have one state for each fsb multiplier step. The manual throttling chooses whatever is closer, so it dont depend on the p-states declared.

 

Intel says it saves more power. I choose to use the lowest multiplier for both modes, just to make it simpler for me.

 

 

 

Does SuperLFM mode save more power than regular FSB? Because both use .950mv at min multiplier.

 

Also, it would be nice if we could specify our own steppings and corresponding voltages, like Rmclock in Windows.

 

You are supposed to get 4 states. I decided to just do 4 states, as I believe it is not necessary with more. If you disagree, just tell me and give a decent explanation, it can be broght back to have one state for each fsb multiplier step. The manual throttling chooses whatever is closer, so it dont depend on the p-states declared.

 

Intel says it saves more power. I choose to use the lowest multiplier for both modes, just to make it simpler for me.

 

 

 

But is it right my CPU only got 3 Steps -> 2000Mhz, 2333Mhz and 2666Mhz ?

Even with Load near 0% it won't switch any lower , stays at 1998Mhz / 1075mV / 36 degrees Celsius.

Thanks for your KEXT and for any explanation :-)

 

You are supposed to get 4 states, you can try the debug version and post some output from sudo dmesg, while you are running it at lowest load.

Link to comment
Share on other sites

Hello Superhai,

 

the newer version seems to work.

In the gui I see the voltage going up and down but the frequency remains at 2800MHz.

 

bash-3.2# ioreg -lxw0 -r -c GenericCPUPowerManagement | grep "CPU "

"CPU Status" = {"Auto Throttle"=Yes,"Load"=0xa0,"Temperature"=0x0,"High jump"=0x258,"Voltage"=0x465,"Timer"=0xfa,"Low jump"=0x190,"Frequency"=0xaf0,"Kext Timer"=0x168c,"Kext Online"=Yes,"Current state"=0x2,"Voltage ID"=0x22,"Frequency ID"=0xe}

"CPU Init" = {"CTL max"=0x26,"FSB frequency min"=0x320,"Signature"=0xf43,"FSB frequency max"=0x320,"CTL min"=0x622,"Kext unlock"=No,"Kext version"=0x1000b,"Brand string"="Intel® Pentium® 4 CPU 3.00GHz","Voltage max"=0x497,"Frequency min"=0x4b0,"Frequency max"=0x0,"Voltage min"=0x465}

bash-3.2#

bash-3.2# ioreg -lxw0 -r -c GenericCPUPowerManagement | grep "CPU "

"CPU Status" = {"Auto Throttle"=Yes,"Load"=0x317,"Temperature"=0x0,"High jump"=0x258,"Voltage"=0x497,"Timer"=0xfa,"Low jump"=0x190,"Frequency"=0xaf0,"Kext Timer"=0x16df,"Kext Online"=Yes,"Current state"=0x2,"Voltage ID"=0x26,"Frequency ID"=0xe}

"CPU Init" = {"CTL max"=0x26,"FSB frequency min"=0x320,"Signature"=0xf43,"FSB frequency max"=0x320,"CTL min"=0x622,"Kext unlock"=No,"Kext version"=0x1000b,"Brand string"="Intel® Pentium® 4 CPU 3.00GHz","Voltage max"=0x497,"Frequency min"=0x4b0,"Frequency max"=0x0,"Voltage min"=0x465}

Link to comment
Share on other sites

Hi superhai:

Problem setting fixed MHZ !!!

If i disable autotrottling and trottle manual to an MHZ, it didnt stay there fixed.

It thottles up/down further (even autotrottling is disabled).... ?!

C2D, vanilla , GA-EP35-DS3 board (C1E enabled)

Thanks

Link to comment
Share on other sites

This is my result on Asus A8JP Intel C2D T5600 @ 1.86Ghz

 

GenericCPUPowerManagement: [Warning] No ACPI p-states in table

GenericCPUPowerManagement: [Warning] No ACPI p-states in table

GenericCPUPowerManagement: Generic CPU Power Management Driver 1.0 © 2008 Superhai Development Co, based on works by mercurysquad

GenericCPUPowerManagement: For internal use only. All Rights Reserved. Support and documentaion http://www.superhai.com/

 

and on application

post-71845-1224686852_thumb.jpg

Link to comment
Share on other sites

Could be your bios is throttling ...

OK. no problem - dual throttling - cool ;)

 

Without joke - i dont think so - the bios may change VIDs but not clocks down. Thats only possible by speedstep - or if cpu temp is much, much to high (i have very low temps).

 

Also with first versions of that .kext (or the early other .kext i forgot name of dev) , it stays as fixed clock if autothrottle was disabled.

 

Can someon else test if clock stays fixed (as you set it by Throttle Now) if autothrottle is disabled ?

Link to comment
Share on other sites

This is my result on Asus A8JP Intel C2D T5600 @ 1.86Ghz

 

GenericCPUPowerManagement: [Warning] No ACPI p-states in table

GenericCPUPowerManagement: [Warning] No ACPI p-states in table

GenericCPUPowerManagement: Generic CPU Power Management Driver 1.0 © 2008 Superhai Development Co, based on works by mercurysquad

GenericCPUPowerManagement: For internal use only. All Rights Reserved. Support and documentaion http://www.superhai.com/

 

and on application

post-71845-1224686852_thumb.jpg

 

I got exactly same results on Asus F3JC Intel C2D T5500 at 1.66Ghz... I think it work, at least xbench give me lower results if I slow down the frequency, but I don't know why I get No ACPI p-states in table...

Link to comment
Share on other sites

GenericCPUPowerManagement: [Error] Unable to find a matching or supported cpu id in table
GenericCPUPowerManagement: Please provide the following info to make it into next update:
GenericCPUPowerManagement: CPU Vendor: Intel [Intel® Core(tm)2 Quad  CPU   Q9550  @ 2.83GHz]
GenericCPUPowerManagement: CPU Signature: 10677
GenericCPUPowerManagement: Mobile: 0 Latency: 0 TjMax: [Fill in]
GenericCPUPowerManagement: -- MSR_IA32_PLATFORM_ID MSR	 88C4C822 08100000
GenericCPUPowerManagement: 00-05:22(MVID) 06:0 07:0
GenericCPUPowerManagement: 08-12:08(MFID) 13:0 14:0(N2) 15:0
GenericCPUPowerManagement:	16:0 17:0 18:0 19:0 20:1 21:0 22:0
GenericCPUPowerManagement:	23:1(N2) 24:0 25:0 26:0 27:0
GenericCPUPowerManagement:	28:0(MBL) 29:0 30:0 31:0
GenericCPUPowerManagement: 32-49:00000
GenericCPUPowerManagement:	50:0(MBL) 51:0(PF2) 52:0(PF3)
GenericCPUPowerManagement: 53-63:040
GenericCPUPowerManagement: -- MSR_IA32_EBL_CR_POWERON MSR  421C0000 00000000
GenericCPUPowerManagement:	18:1(N2)
GenericCPUPowerManagement: 22-26:08(FID)
GenericCPUPowerManagement: -- MSR_IA32_PERF_STS MSR		06004822 061A4822
GenericCPUPowerManagement: 00-05:22(CVID) 06:0 07:0
GenericCPUPowerManagement: 08-12:08(CFID) 13:0 14:0(N2) 15:0(DFSB)
GenericCPUPowerManagement: 16-21:00(mVID) 22:0 23:0
GenericCPUPowerManagement: 24-28:06(mFID) 29:0 30:0
GenericCPUPowerManagement:	31:0(XE)
GenericCPUPowerManagement: 32-37:22(MVID) 38:0 39:0
GenericCPUPowerManagement: 40-44:08(MFID) 45:0 46:0(N2) 47:0
GenericCPUPowerManagement: 48-53:1A(XVID) 54:0 55:0
GenericCPUPowerManagement: 56-60:06(XFID) 61:0 62:0(N2) 63:0(DFSB)
GenericCPUPowerManagement: -- MSR_IA32_PERF_CTL MSR		00004822 00000000
GenericCPUPowerManagement: 00-05:22(TVID) 06:0 07:0
GenericCPUPowerManagement: 08-12:08(TFID) 13:0 14:0(N2) 15:0(DFSB)
GenericCPUPowerManagement: 16-31:0000
GenericCPUPowerManagement:	32:0(IDA-D)
GenericCPUPowerManagement: -- MSR_IA32_THERM_INTERRUPT MSR 00000000 00000000
GenericCPUPowerManagement: -- MSR_IA32_THERM_STATUS MSR	882C0000 00000000
GenericCPUPowerManagement: 16-22:2C(DREAD)
GenericCPUPowerManagement: 27-30:1(RES)
GenericCPUPowerManagement:	31:1(VALID)
GenericCPUPowerManagement: Probe result: mVID = 22 mFID = 06
GenericCPUPowerManagement: Unloading

Link to comment
Share on other sites

I got exactly same results on Asus F3JC Intel C2D T5500 at 1.66Ghz... I think it work, at least xbench give me lower results if I slow down the frequency, but I don't know why I get No ACPI p-states in table...

This is because a lot of BIOS have some bugs in their ACPI Part of the bios. Also Linux has that problem, but have workarounds in the kernel for that.

You cant do anything - perhaps later BIOS updates have it fixed (or other bugs new :) )

Use the overwrite_VID function (to YES) in the .plist.

Link to comment
Share on other sites

Intel Pentium M 1.73Ghz

 

bash-3.2# sudo dmesg | grep GenericCPUPowerManagement

GenericCPUPowerManagement: [Error] Unable to find a matching or supported cpu id in table

GenericCPUPowerManagement: Please provide the following info to make it into next update:

GenericCPUPowerManagement: CPU Vendor: Intel [intel® Pentium® M processor 1.73GHz]

GenericCPUPowerManagement: CPU Signature: 6d8

GenericCPUPowerManagement: Mobile: 1 Latency: 10 TjMax: [Fill in]

GenericCPUPowerManagement: State 0 [d26] State X [612]

GenericCPUPowerManagement: -- MSR_IA32_PLATFORM_ID MSR D02486A6 00140000

GenericCPUPowerManagement: 00-05:26(MVID) 06:0 07:0

GenericCPUPowerManagement: 08-12:06(MFID) 13:0 14:0(N2) 15:0

GenericCPUPowerManagement: 16:0 17:0 18:0 19:0 20:1 21:0 22:0

GenericCPUPowerManagement: 23:0(N2) 24:0 25:0 26:0 27:0

GenericCPUPowerManagement: 28:1(MBL) 29:0 30:0 31:0

GenericCPUPowerManagement: 32-49:00000

GenericCPUPowerManagement: 50:1(MBL) 51:0(PF2) 52:0(PF3)

GenericCPUPowerManagement: 53-63:000

GenericCPUPowerManagement: -- MSR_IA32_EBL_CR_POWERON MSR 43480000 00000000

GenericCPUPowerManagement: 18:0(N2)

GenericCPUPowerManagement: 22-26:0D(FID)

GenericCPUPowerManagement: -- MSR_IA32_PERF_STS MSR 06000D26 06120D26

GenericCPUPowerManagement: 00-05:26(CVID) 06:0 07:0

GenericCPUPowerManagement: 08-12:0D(CFID) 13:0 14:0(N2) 15:0(DFSB)

GenericCPUPowerManagement: 16-21:00(mVID) 22:0 23:0

GenericCPUPowerManagement: 24-28:06(mFID) 29:0 30:0

GenericCPUPowerManagement: 31:0(XE)

GenericCPUPowerManagement: 32-37:26(MVID) 38:0 39:0

GenericCPUPowerManagement: 40-44:0D(MFID) 45:0 46:0(N2) 47:0

GenericCPUPowerManagement: 48-53:12(XVID) 54:0 55:0

GenericCPUPowerManagement: 56-60:06(XFID) 61:0 62:0(N2) 63:0(DFSB)

GenericCPUPowerManagement: -- MSR_IA32_PERF_CTL MSR 00000D26 00000000

GenericCPUPowerManagement: 00-05:26(TVID) 06:0 07:0

GenericCPUPowerManagement: 08-12:0D(TFID) 13:0 14:0(N2) 15:0(DFSB)

GenericCPUPowerManagement: 16-31:0000

GenericCPUPowerManagement: 32:0(IDA-D)

GenericCPUPowerManagement: -- MSR_IA32_THERM_INTERRUPT MSR 00000000 00000000

GenericCPUPowerManagement: -- MSR_IA32_THERM_STATUS MSR 00000000 00000000

GenericCPUPowerManagement: 16-22:00(DREAD)

GenericCPUPowerManagement: 27-30:0(RES)

GenericCPUPowerManagement: 31:0(VALID)

GenericCPUPowerManagement: Probe result: mVID = 02 mFID = 06

GenericCPUPowerManagement: Unloading

bash-3.2#

Link to comment
Share on other sites

OK. no problem - dual throttling - cool ;)

 

Without joke - i dont think so - the bios may change VIDs but not clocks down. Thats only possible by speedstep - or if cpu temp is much, much to high (i have very low temps).

 

Also with first versions of that .kext (or the early other .kext i forgot name of dev) , it stays as fixed clock if autothrottle was disabled.

 

Can someon else test if clock stays fixed (as you set it by Throttle Now) if autothrottle is disabled ?

 

wrks fine here on my Acer TravelMate 6410, i tested it with cpu test and wrks...if i disable auto clock go up!

Link to comment
Share on other sites

Intel Pentium M 1.73Ghz

 

Ok, I have added support for that cpu. But it will need custom kernel, or it will be panicing on rtc_clock_stepping().

 

 

 

GenericCPUPowerManagement: [Warning] No ACPI p-states in table

No need to worry much, the kext should be able to make proper values.

Link to comment
Share on other sites

Superhai, can you check source code again for an bug if autothrottle is disabled and cpu MHZ changes ? - it should be fixed. Also i see that not always the manual trottle now does switch to the fitting stepping. Can it be that in the code also cpu load is checked , even if autothrottle is disabled?. If i want to set my CPU MHZ manual, cpu load should be not involved.

Seems to be not only my problem.

macita

if i disable auto clock go up!

Link to comment
Share on other sites

Without joke - i dont think so - the bios may change VIDs but not clocks down. Thats only possible by speedstep - or if cpu temp is much, much to high (i have very low temps).

 

The same thing happens on a few gigabyte boards, including my own. The kext tries to take full control from bios, but it doesnt seem to work on those boards.

Link to comment
Share on other sites

You are supposed to get 4 states, you can try the debug version and post some output from sudo dmesg, while you are running it at lowest load.

 

Just tried your latest verion (1.0.12) and this is the output from the debug version:

22.10.08 23:00:33 kernel GenericCPUPowerManagement: [Debug] Bus clock rate 100000000 - den 1 
22.10.08 23:00:33 kernel GenericCPUPowerManagement: [Debug] Bus/CPU rate 6 - den 2 
22.10.08 23:00:33 kernel GenericCPUPowerManagement: [Debug] Bus/dec rate 1 - den 0 
22.10.08 23:00:33 kernel GenericCPUPowerManagement: [Debug] Timebase frequency 1000000000 hz 
22.10.08 23:00:33 kernel GenericCPUPowerManagement: [Debug] CPU min/max (1998 MHz - 2664 MHz) 
22.10.08 23:00:33 kernel GenericCPUPowerManagement: [Debug] Bus min/max (1332 MHz - 1332 MHz) 
22.10.08 23:00:33 kernel GenericCPUPowerManagement: [Debug] Auto timeout 250, high 600, low 400
22.10.08 23:00:33 kernel GenericCPUPowerManagement: [Debug] Requested new p-state 082A 
22.10.08 23:00:34 kernel GenericCPUPowerManagement: [Debug] Requested new p-state 0613 
22.10.08 23:00:34 kernel GenericCPUPowerManagement: [Debug] Requested new p-state 0613 
22.10.08 23:00:34 kernel GenericCPUPowerManagement: [Debug] Current p-state 3 with fid 6 p-state fid 6 
22.10.08 23:00:34 kernel GenericCPUPowerManagement: [Debug] We have loaded completely and ready for action

 

So it seems there are really only those 3 States 2000, 2333, 2666 possible with my E6750 ?

Or should I check BIOS Settings ?

 

 

Bye,

 

Markus

Link to comment
Share on other sites

So it seems there are really only those 3 States 2000, 2333, 2666 possible with my E6750 ?

Or should I check BIOS Settings ?

 

I checked Intel Docs, and yes, your CPU has the possibility to use only x6, x7 and x8 multipliers. The kext will make you 4 states, but one will just have different voltage.

Link to comment
Share on other sites

I have a T7300 CPU. I can`t use LFE. CPUMControl shows only 1200, 1600, 1800 and 2000 Mhz. With the T73000 600 and 800 Mhz are also possible. (FSB 400, virtual).

I am trying to get documentation to which cpu supports SLFM and which dont, but this is not easy. I updated your cpuid to add it, now I hope there are none that is not supporting it.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...