Jump to content

i7 3770k Ivybridge Power Management


Hackmodford
 Share

41 posts in this topic

Recommended Posts

I've been trying to get power management working correctly.

 

If I use the imac13,2 profile I get 2 pstates (1.6 and 3.9)

 

If I use -xcpm I will get around 7 pstates but I do get errors in the console.

 

My question is this. Does a desktop machine need a range of pstates? Or are the 2 just fine?

 

Also I found this post that describes patching the appleintelcpupowermanagement.kext. Is this necessary?

http://myhack.sojugarden.com/2012/08/my-new-hackintosh/

sudo perl -pi -e ‘s|\xE2\x00\x00\x00\x0F\x30|\xE2\x00\x00\x00\x90\x90|g’ /Extra/Extensions/AppleIntelCPUPowerManagement.kext/Contents/MacOS/AppleIntelCPUPowerManagement
Link to comment
Share on other sites

You need generate correct power managent.

 

Try create SSDT.

curl -o ssdtPRGen.sh https://raw.github.com/Piker-Alpha/RevoBoot/clang/i386/libsaio/acpi/Tools/ssdtPRGen.sh
chmod +x ssdtPRGen.sh
./ssdtPRGen.sh

and

sudo ./ssdtPRGen.sh 77 3900

instead of applying the patch AICPM. use this in config.plist

<key>KernelAndKextPatches</key>
<key>AsusAICPUPM</key>
<true/>

is the same effect as applying the patch AICPM.

 

download the AppleIntelCPUPowerManagementInfo.kext and add it to your System/Library/Extensions/ folder. Rebuild cache with the app of your choice and reboot.

 

At start open your terminal app and type this command :

cat /var/log/system.log | grep "AICPUPMI:"

If you can see a lot of P-States, you did a good job.

157136Capturedcran20140125174245.png

 

test

 

Credits: Whit3Spirit

Link to comment
Share on other sites

Congrats, this shows that your States is working.

 

look about your CPU: i7 3770K

 

you can try applying the patch in AICPM, but then removing AsusAICPUPM, do not forget to backup the original kext.

 

but if this method worked for you, the patch is not necessary.

Link to comment
Share on other sites

@Allan

 

So even though MSRDumper is reporting only two states. The fact that I can see a few more via HWMonitor means it's working?

Most of the time it's either 1.6 or 3.9 and VERY rarely do I see stuff like 3.5,3.7,3.8

 

My original question still stands, do the pstates really make that much of a difference for a desktop machine?

Link to comment
Share on other sites

Is there anything special I have to do to use voodopstate.kext? Do I have to remove any kexts? That seems kinda interesting.

 

The reason I'm not using -xcpm is because of errors I get in the console. (though it appears to be working 100% the errors are not right according to Pike)

Link to comment
Share on other sites

My original question still stands, do the pstates really make that much of a difference for a desktop machine?

At the bottom, HWMonitor shows how many watts your CPU is drawing. You should see the wattage going up and down as the operating frequency goes up and down. But it's not just about saving on the electricity bill, it's also about heat.

 

Having your CPU clock actively regulated according to what it is actually doing, as opposed to constantly running at full tilt, means less energy is wasted, less heat is generated, which translates to longer component life. Next to yourself, heat is your PCs worst enemy lol

 

So yes, definitely great for desktops.

 

Laptops normally have more "steps" than desktops, which helps to improve battery life. Also laptops are much more difficult to cool so you'll want tighter regulation there.

Link to comment
Share on other sites

try adding p and c states option via chameleon. if not try the _CST option with the kext.

 

I'm using a generated SSDT.

So in clover I have "dropoemssdt" on and turned off generate c/p states.

 

What is the _CST option?

--------------------

Basically it seems with the iMac option it's either 1.6 or 3.9

Link to comment
Share on other sites

Well I'm back to using -xcpm this is what the console looks like when searching for xcpm

2/14/14 12:04:18.000 PM kernel[0]: XCPM: registered
2/14/14 12:04:19.000 PM kernel[0]: IOPPF: XCPM mode
2/14/14 12:04:19.000 PM kernel[0]: XCPM: P-state table mismatch (error:0x12)
2/14/14 12:04:19.000 PM kernel[0]: X86PlatformShim::sendPStates - pmCPUControl (XCPMIO_SETPSTATETABLE) returned 0x12

Everything seems to be working fine. I'm starting to think that the last two are just a kernel bug...

 

Update: I just searched for x86platformShim and found these also.

2/14/14 12:04:19.000 PM kernel[0]: X86PlatformShim::start - Failed to send PStates
2/14/14 12:04:19.000 PM kernel[0]: X86PlatformShim::start - Failed to send stepper

But still, I can't find anything wrong...

Link to comment
Share on other sites

Dude it's our famous person OCD issues  :rolleyes:

 

I might even go back to using the macpro profile to fix audio popping and using xcpm, even though he said it doesn't work. It works fine for me  :(

 

So using the macpro3,1 profile (to get rid of audio pop)

and using my custom ssdt specifically made for xcpm.

and using the xcpm flag

2/14/14 3:38:16.000 PM kernel[0]: XCPM: registered
2/14/14 3:38:16.000 PM kernel[0]: XCPM: registered

(interesting no "IOPPF: XCPM mode" message but no errors either)

 

Here's an example of the Hardware Monitor graph.

post-1106388-0-93511300-1392410695_thumb.png

 

 

  • Like 1
Link to comment
Share on other sites

I jumped over to the windows side to see how it handled the speed stepping. I observed that Windows also just goes between 1.6 and 3.9 as a general rule.

 

So I'm going to say the correct answer for me was this

Use imac13,2 smbios (because of my graphics card)

No -xcpm

Generated ssdt from piker's script.

DropOEMSSDT = True

GenerateCstates = False

GeneratePStates = False

Link to comment
Share on other sites

 Share

×
×
  • Create New...