Contribute
Register

Mavericks: Native CPU/IGPU Power Management

You often wont get lower then x16. That happened to me as well, I had error 11, then error 12. I still get the error you have.

You look good to go from the attached files. you get all states etc. If you want have pike take a look at the registers if u think something is up. Im not a "register" person. :D

Does sleep work for you? If you notice intermediate failure-to-wake, it would be good to know.

What did you change to fix this? It could be important for other 3570K users.
 
Idle is still with 1,6 GHz which I believe is too high.
From the CPU: May 28 23:30:52 localhost kernel[0]: AICPUPMI: CPU Low Frequency Mode.............: 1600 MHz
Confirm ./ssdtPRGen.sh -w 3 produced your attached SSDT.aml
To fix IPG/freq range with Clover add config.plist/CPU/QPI=100
 
Do fix the UEFI BIOS settings, until boot loaders start to do this for you, but remember what I said: set the first turbo ratio to clock frequency + 1 which in your case is 36 is it not?


  1. Loaded Optimized Defaults.
  2. Set Uncore to 35/Auto.
  3. Set Turbos to 39(1 core), 38(2 cores), 37(3 cores), 36(4 cores).

ipg36373839.jpg

Definitely not stepping properly from shot above. I'm going revert back to my findings posted here. Manually setting Uncore to 39 fixes PM for my board/bios as detailed in post.
 
From the CPU: May 28 23:30:52 localhost kernel[0]: AICPUPMI: CPU Low Frequency Mode.............: 1600 MHz
Confirm ./ssdtPRGen.sh -w 3 produced your attached SSDT.aml
To fix IPG/freq range with Clover add config.plist/CPU/QPI=100

Yes I used ssdtPRGen.sh with the option -w 3 again to add QPI=100

ssdtPRGen.sh v0.9 Copyright (c) 2011-2012 by † RevoGirl
v6.6 Copyright (c) 2013 by † Jeroen
v13.5 Copyright (c) 2013-2014 by Pike R. Alpha
-----------------------------------------------------------
Bugs > https://github.com/Piker-Alpha/ssdtPRGen.sh/issues <


Override value: (-w) Ivy Bridge workarounds, now set to: 3!


System information: Mac OS X 10.9.3 (13D65)
Brandstring 'Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz'


Scope (_PR_) {220 bytes} with ACPI Processor declarations found in the DSDT (ACPI 1.0 compliant)
Generating ssdt.dsl for a 'iMac13,2' with board-id [Mac-FC02E91DDD3FA6A4]
Ivy Bridge Core i5-3570K processor [0x306A9] setup [0x0604]
With a maximum TDP of 77 Watt, as specified by Intel
Number logical CPU's: 4 (Core Frequency: 3400 MHz)
Number of Turbo States: 4 (3500-3800 MHz)
Number of P-States: 23 (1600-3800 MHz)


XCPM mode detected (Ivy Bridge workarounds disabled)


Injected C-States for CPU0 (C1,C3,C6)
Injected C-States for CPU1 (C1,C2,C3)
Warning: 'cpu-type' may be set improperly (0x0604 instead of 0x0704)


Intel ACPI Component Architecture
ASL Optimizing Compiler version 20130117-64 [Jan 19 2013]
Copyright (c) 2000 - 2013 Intel Corporation



I added the value QPI 100 to Clover config, but AICPUPMI still shows: CPU Low Frequency Mode.............: 1600 MHz

After adding QPI, XCPM shows me now error 11.

May 29 12:11:34 localhost kernel[0]: XCPM: registered
May 29 12:11:54 macpro kernel[0]: IOPPF: XCPM mode
May 29 12:11:54 macpro kernel[0]: XCPM: P-state table mismatch (error:0x11)
May 29 12:11:54 macpro kernel[0]: X86PlatformShim::sendPStates - pmCPUControl (XCPMIO_SETPSTATETABLE) returned 0x11

I have attached all files. Please advise.

Thanks
Madman
 

Attachments

  • files2.tar.gz
    564.7 KB · Views: 127
  • intel.tiff
    175 KB · Views: 119
User error. I said: "The first turbo ratio should be set to 36…" but you've set the fourth turbo ratio to 36. Basically limiting the turbo ratios. Look here:

AICPUPMI: CPU Maximum Turbo Frequency........: 3600 MHz

Sorry about that. I'm quite new in this power management area so I don't get some of the terms.

I've been doing some tests in my system using the recomendations you gave and trying what other users have tried. All of these tests were done using manually set turbo ratios to 36,38,39,39 (the last three were the default auto values, I just entered them manually because seting them to auto didn't pass values to the system), as you can see here:

MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x24262727


SCENARIO 1:

For this test:
1. I loaded optimized defaults
2. set turbo values manually
3. configured CPU Clock Ratio to 35 and Uncore ratio to 35.
4. Turbo Power and core current limit were in Auto

In this test Processor Speed reports 3.59 GHz.
I only get P-State 8 but no other below 35 (only turbo ones)

35systeminfo.png35.png35-aicpupmi.png


SCENARIO 2:

For this test:
1. I loaded optimized defaults
2. set turbo values manually
3. configured CPU Clock Ratio to 35 and Uncore ratio to 39.
4. Turbo Power and core current limit were in Auto

In this test Processor Speed reports 3.59 GHz.
I only get P-State 8 but no other below 35 (only turbo ones)

35systeminfo.png39.png39-AICPUPMI.png


SCENARIO 3:

For this test:
1. I loaded optimized defaults
2. set turbo values manually
3. configured CPU Clock Ratio to 35 and Uncore ratio to 35.
4. Set manually Turbo Power Limit to 84 Watts and Core Current Limit to 95 Amps.

In this test Processor Speed reports only 2.99 GHz.
I get a few P-States more below 35

84-95systeminfo.png84-95intel.png84-95-AICPUPMI.png


I'm sticking with Scenario 1 configurations for now. As on scenario 3 I notice a wrong processor speed in system info when manually setting turbo power and core current limits. I don't know if this has an adverse effect on the system.

In any other test I got P-States below 35 (besides 8).

Can you give me any insight on these results? Is the processor speed reported by the system important?

Thank you!
 
I think you misunderstood. The 3570K is not designed to operate under x16. Most Ivy Bridge's are not. The QPI thing fixes the scale of the graph in Intel Power Gadget.

the SSDT script says:
Code:
[COLOR=#3E3E3E][FONT=Menlo]Number of P-States: 23 (1600-3800 MHz)[/FONT][/COLOR]
1600 to 3800, or 1.6Ghz to 3.8Ghz
That is the range of your cpu.

Is their any reason you want a slower idle speed? keep in mind that in idle state, your 3 unused cores will stop altogether. (well not stop, but low-power sleep state)
 
I think you misunderstood. The 3570K is not designed to operate under x16. Most Ivy Bridge's are not. The QPI thing fixes the scale of the graph in Intel Power Gadget.

the SSDT script says:
Code:
[COLOR=#3E3E3E][FONT=Menlo]Number of P-States: 23 ([URL="tel:1600-3800"]1600-3800[/URL] MHz)[/FONT][/COLOR]
1600 to 3800, or 1.6Ghz to 3.8Ghz
That is the range of your cpu.

Is their any reason you want a slower idle speed? keep in mind that in idle state, your 3 unused cores will stop altogether. (well not stop, but low-power sleep state)


Ahh ok, I thought the CPU can handle down to 800 MHz which should save some power.

Is XCPM really necessary? It gives me the error #11, so I don't know if it works or not.

I will check if sleep works or not. It worked before I made all the mentioned changes... ;)

thanks
 
If sleep works, then I would say it works. Were you perviously getting P-States below 16? XCPM is supposedly more efficient, and couples beter with the new timer coalescing.

Sleep works without any issue. I just checked it.

I never got P-Staes below 16, but I saw in Toleda Screenshot, that his low state is 800 MHz.

If sleep does not work in your environment, it could be caused by a lot of things...
 
Back
Top