Jump to content

PStateMenu - Replacement for PStateChanger


  • Please log in to reply
15 replies to this topic

#1
Giuly

Giuly

    InsanelyMac Protégé

  • Members
  • Pip
  • 19 posts
Hi,
I use VoodooPState.kext. Maybe that's not really necessary on a Pentium Dual-Core, but I don't really get the DSDT thing.
However, PStateChanger was a resource hog for me - it used >17% of the CPU in the lowest PState (Again, Pentium Dual-Core 2.0GHz). So I had a look, figured out that updating the GUI was the main fault, and rewrote the whole thing.


1. New Interface
- Less windows-y, more like cpufreq-applet from Gnome. Fits the Mac better. You can customize PStateMenu.app/Resources/cpufreq-xx.png if you don't like the images (google "cpufreq-applet icons")
- More efficient, uses less CPU
Posted Image
(Yes, the Meter works)
Posted Image

2. Switching based on the theory behind cpufreq-ondemand/conservative (http://www.linuxsymp...adi-reprint.pdf) from Linux (including later improvements):
- CPU utilization based on core with highest load rather than total
- On Demand: When frequency raising is needed, clock it to 100%, next time lower the pState if possible to a state which keeps CPU utilization around 80%
- Conservative: Smooth upscaling, not recommended by anybody, as ondemand clocks higher but gets work faster done. This is kind of what PStateChanger did.
- Switches every 0.18 seconds (CPUFreq switches every 0.11 seconds, but 0.18 cuts the cpu usage by 50% for me)

More or less as good as Linux (cpufreq-ondemand is written by Intel guys (Pallipadi et. al.)), AppleIntelCPUManagement.kext shouldn't be much different, too. This is basically a full-fledged Intel Enhanced SpeedStep implementation.

Download Binary (32+64Bit)
Version 0.2 (32+64Bit)
Source code
Project homepage

You find the latest VoodooPState.kext always on osx86drivers.sourceforge.net

Have fun with it.

#2
Gringo Vermelho

Gringo Vermelho

    The Jan Bird fix

  • Supervisors
  • 6,064 posts
  • Gender:Male
  • Location:Brazil
Very cool. I wonder if this would work on older Intel based hackintoshes that can't run the vanilla kernel.

I use VoodooPState.kext. Maybe that's not really necessary on an Pentium Dual-Core, but I don't really get the DSDT thing.

It's not necessary to do anything to your DSDT to get native CPU powermanagement working.
Install Chameleon 2.0 RC5 and add GeneratePStates=y and GenerateCStates=y to your /Extra/com.apple.Boot.plist.
A few other requirements must be met - read this thread for more info:
http://www.insanelym...howtopic=225766

#3
Giuly

Giuly

    InsanelyMac Protégé

  • Members
  • Pip
  • 19 posts
I have RC5 rev757(I guess) installed, GeneratePStates and GenerateCStates are set to "Yes", and I just tried DropSSDT="Yes", which doesn't work either. LPC, AppleIntelCPUManagement, AppleIntelCPUManagementClient and AppleIntelMeromProfile are loaded, PStates are in the IOReg, CStates aren't. CPU stays at 798MHz. I haven't still given up though, however VoodooPStates.kext with PStateMenuwork fine in the mean time.

It works fine with legacy_kernel, btw.

#4
Gringo Vermelho

Gringo Vermelho

    The Jan Bird fix

  • Supervisors
  • 6,064 posts
  • Gender:Male
  • Location:Brazil

Try dumping your SSDT tables (You can use Everest on Windows or, there is also a Perl script that you can run from a Linux Live CD for example, search over at the ProjectOSX forums) and place them in /extra. You must follow the naming conventions outlined in the thread I linked to, ssdt-1.aml and so on.

Make sure C1E and whatever other C-state settings you can find in your BIOS are enabled before dumping the SSDT tables - the number of tables will differ depending on this setting.

Try this and leave DropSSDT=y.

In addition to what you have done already, AppleHPET.kext and AppleLPC.kext must be loaded and, if required, the HPET device in DSDT patched correctly for AppleIntelCPUPowerManagement.kext to work.

Try experimenting with different macbook model identifiers, they should be from older Macbooks/Macbook Pros that use a similar CPU type to yours, ie Intel Core microarchitecture.
A quick way to look those up is using MacTracker, then google "macmodelx,y DMI" to find all the stuff you need to add to /Extra/smbios.plist.



#5
mitch_de

mitch_de

    InsanelyMacaholic

  • Local Moderators
  • 2,880 posts
  • Gender:Male
  • Location:Stuttgart / Germany
I tried. How get i that Menue entry out of the menue?
And where get i the lastest (needed, not within the tool) VoodooPstate?

#6
DarwinX

DarwinX

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 615 posts
  • Gender:Male
  • Location:Florida

I tried. How get i that Menue entry out of the menue?
And where get i the lastest (needed, not within the tool) VoodooPstate?


http://ftp2.ie.netbs...PState.kext.zip

#7
Giuly

Giuly

    InsanelyMac Protégé

  • Members
  • Pip
  • 19 posts

I tried. How get i that Menue entry out of the menue?
And where get i the lastest (needed, not within the tool) VoodooPstate?

Activity Monitor -> click PStateMenu -> Quit process
Reminds me that I wanted to recheck every now and then whether the kext is loaded.

The latest VoodooPState.kext is always on osx86drivers.sourceforge.net

#8
Jercik

Jercik

    InsanelyMac Protégé

  • Members
  • Pip
  • 2 posts
Thanks! It's working great :). Only issue for me is little to "conservative" upscaling. Im using "On Demand" option and it is stayng on lowest frequency almost all time, and my computer struggles!

Example:

When this applet is running:
http://www.obitko.co...tsp-example.php,
my cpu usage is between 85-95 % but clock is staying low. When I force clock setting to max value, applet runs much faster! It should run that fast all time.

Can you prepare more performace-enabled switching?

#9
seninha

seninha

    InsanelyMac Protégé

  • Members
  • PipPip
  • 68 posts
  • Gender:Male
  • Location:Holland
I installed your PStateChnager but as soon as I open it I see: VoodooPState not loaded.

This is what i've done :
Placed VoodooPState in EXTRA

Add next two lines to my boot.plist:

<key>GeneratePStatus</key>
<string>Yes</string>
<key>GenerateCStates</>
<string>Yes</string>

Can you advice what more do I need to make this work?

I use a Core2Duo laptop and battery is running down very fast now because CPU runs on his max al the time.

#10
pwner4once

pwner4once

    InsanelyMac Protégé

  • Members
  • Pip
  • 2 posts
@Giuly

The link to your PStateMenu is no longer working, can you re-upload or put it up on github?

Thanks!

#11
Gringo Vermelho

Gringo Vermelho

    The Jan Bird fix

  • Supervisors
  • 6,064 posts
  • Gender:Male
  • Location:Brazil
Click the link in the first post that says "Project homepage".

#12
morbidangel

morbidangel

    InsanelyMac Protégé

  • Members
  • Pip
  • 30 posts
Hi

I can't get VoodooPState loaded it always tells me "Warning Unloaded" on boot up.

Im on Lion 10.7.2 64Bit have Native Speedstep working and the tool would be a really cool enhancement to cool down my HackBook. I only added the voodoopstate.kext to S/L/E and keep getting the mentioned error on boot. Please help!

TIA
morbidangel

PS: Or is there a slight chance that PStateMenu will be updated with Native Speedstep support?

#13
mitch_de

mitch_de

    InsanelyMacaholic

  • Local Moderators
  • 2,880 posts
  • Gender:Male
  • Location:Stuttgart / Germany
You cant use different speedstep "commander" like AppleIntelCPU... & vodooopstate at same time !
The one or the other.

#14
morbidangel

morbidangel

    InsanelyMac Protégé

  • Members
  • Pip
  • 30 posts
Ok,

I tried with removed AppleIntelCPUPowermanagement but still get the same result "voodoopstate warning unloaded"

#15
apple apple

apple apple

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 142 posts
Hey Giuly, great work on the app. Works a treat, thankyou. One question though, is there some sort of way to save my settings? For instance, is there a way that upon login, can the app automatically start at the lowest clock setting?

#16
Ice1602

Ice1602

    InsanelyMac Protégé

  • Members
  • Pip
  • 33 posts
  • Gender:Male

Do you mind posting the Source Code? I'm experimenting with my AMD hackintosh but the On demand governor is actually more conservative that "Conservative". I want to see if I can tweak it a bit for AMD. 







0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy