Jump to content

Testers needed: CPU Power Management for SB and IB Xeon(s) or i7-39xx on X79 or C60x chipset


  • Please log in to reply
565 replies to this topic

#1
omni

omni

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 286 posts
  • Gender:Male

This post was last edited on Feb. 23, 2014 at 15:00:00 EST, reason: Posted a link to MSRpatcher.dylib v007 - please read the note next to it

 

 

I'm looking for fellow users who have SB or IB Xeon(s) or i7-39xx, on X79/C60x motherboards and lack CPU Power Management, to test this hack.

 

This is an advanced topic and I will assume you have tried everything else and got everything else working, but are stuck with NullCPUPowerManagement.kext and two power states (min/max).

 

This means:

 

- you have Xeon-E5 v1 (SB), Xeon-E5 v2 (IB), i7-39xx or i7-49xx (the last two have the same core as Xeon counterparts, just higher clock and no MP support)

 

- you have cpu-type set to 0xa01 (2561) and are using MacPro6,1 in SMBIOS it appears to work better for some people as Macmini or iMac than MacPro as a platform definition,

 

- you have plugin-type = 0x01 set on the CPU0, to utilize X86Platform* (we might deal with ACPI_SMC_PlatformPlugin later) you are using either X86Platform or ACPI_SMC_Platform,

 

- when you run with AppleIntelCPUPowerManagement.kext you get "Unknown CPU: family = 0x.. , model = 0x.. , stepping = 0x.." from AICPM in kernel log at the very top before AppleACPICPU is initialized (this has nothing to do with About This Mac Unknown cpu),

 

- your C- and P- states are properly initialized in the registry (your SSDT is enabled and working) and are not getting any errors from X86Platform* during boot,

 

- you do NOT have MSR register 0xE2 bit 15 set, or you have hacked your BIOS to enable it (patched AICPM is NOT acceptable, we need a working 0xE2 MSR),

 

- you are running 10.9.2 build 13C32 you are running 10.9+ (normal mode, not safe mode),

 

 

Instructions:

 

The tool we will use to monitor things is PikeRAlpha's AppleIntelCPUPowerManagementInfo.kext, so get that from his blog, or better yet compile from github (https://github.com/P...-Alpha/RevoBoot).

 

So, if you are ready to test, below is a AppleInteCPUPowerManagement binary, patched to identify your Unknown CPU as SB or IB. Replace (backup first) the original one from SLE/AICPM with the appropriate one for your cpu. Make sure that permissions are correct, and if necessary touch /S/L/E to re-cache the extensions folder.

 

Obviously, remove any AICPM disabler kexts first (NullCPUPowerManagement.kext, etc.)

 

Boot into the OS X with following flags: -v debug=0x144 msgbuf=131072

 

You should see your turbo modes initialized around the top of the kernel log as well as no other errors except this one: X86PlatformPlugin::publishACPIStates - Failed to get max non-turbo PState. Set max non-turbo PState to default value 1.

 

Hopefully you won't get a KP, but if you do, record where it KPs. Once system is up, load Pike's AICPMI and take a look at the output, let your system run for a bit use it as usual, then check dmesg a fee times, it should fill with some C and P states.

 

Also, I'm including a patched kernel to allow for full debug output if you need it. It is very "chattery" so expect lots of text, thus boot with: mach_kernel.dbg -v -cpuid debug=0x144 msgbuf=131072

 

This is all preliminary work so if it does not work, well that's why we are testing...post your AICPMI output for discussion and if necessary any other kernel log related items

 

Please post your CPU model and Platform (MacProX,Y; MacminiX,Y; iMacX,Y) when posting your logs so we have a bit more information.

 

 

 

Debugging:

 

To get even more debugging output, boot with the following arguments:

 

debug=0x144 msgbuf=309212 ioppf=0xff acpi_layer=0x08 acpi_level=0x02

 

You will see tons of output from X86Platform* which will tell you much about your setup and whether it can parse the SSDT properly or not. Follow through with any errors and correct them, then see what happens when you load AICPMI again.

 

Here's what I get in my kernel log (related entries only):

 

Spoiler
 
 
 
Troubleshooting:
 

-- If you are getting a message in your kernel log:

 

X86PlatformPlugin::publishACPIStates - Failed to get max non-turbo PState. Set max non-turbo PState to default value 1

 

Add the following to your SSDT's CPU0 scope:

 

Name (APSN, 0x0N)

 

Where N > 0. To find N, look at your APSS method (aliased SPSS table) and count from index 0 (top) till you reach it.

 

For example in my case, I only have four (index position 0-3) turbo state so the next highest non-Turbo index position would be 4:

 

Spoiler
 

 

-- If you are not sure about your C-state declarations in SSDT (or even if you are), please use the one below - regardless of whether you think you have made it right, or you let Pike's script generate it for you.

 

This also contains debug entries that you will see pop up in your kernel log if you have ACPI and AICPM debugging on. I don't have to tell you how to use this, do I? :)

 

Sigh, ok...CPU0 scope contains the original as is, all other CPU scopes have aliases pointing to CPU0 scope, similar to this (adjust to your config don't copy/paste):

 

Method (_CST, 0, NotSerialized) { Return (\_SB.CP00._CST) }

Method (ACST, 0, NotSerialized) { Return (\_SB.CP00.ACST) }

 

Spoiler

 

 

-- If you are concerned that you are not getting lower P-states, presently I believe they will not be reached because OS X seems busy all the time. Instead of P-states I suggest looking at the HWMonitor's Core Package Watt use as that might be a better indication of your current state. If you google about detecting SpeedStep in OS X you will see that it is not that easy to get an accurate reading.

 

You might have some luck getting an accurate reading using an Intel® Power Gadget 3.0 for Mac, but it only works on uniprocessor systems. :(

 

Here's an AICPMI output from my MBP running 10.8.4 after taxing the CPU then sitting idle for 15 mins, just for {censored} and giggles:

 

Spoiler

 

 

-- If you want to see my IOreg and AICPMI, here they are:

 

View of my C-States in IOJones

 

Spoiler

 

View of my P-States in IOJones

 

Spoiler

 

You should have something similar, adjusted for the number of CPUs, cores and threads, of course. If not then your basic SSDT setup is not correct and needs to be fixed. That is really beyond the subject of our discussion here.

 

Here is my AICPMI output after running Geekbench...still missing the lower P-States.

 

Spoiler

 

 

-- If you are adamant about not patching your BIOS, you may try patching the MSR 0xE2 to avoid the KP in the AICPM, using the following line:

 

sudo perl -pi -e "s|\xE2\x00\x00\x00\x0F\x30|\xE2\x00\x00\x00\x90\x90|g" /System/Library/Extensions/AppleIntelCPUPowerManagement.kext/Contents/MacOS/AppleIntelCPUPowerManagement

 

But don't come to me if this hack or speedstep does not work as intended.

 

 

 

Files:

 

Original AppleIntelCPUPowerManagement (13C32): http://www.putlocker...D46F6514CAB046B - Ivy Bridge Xeon owners, use this without patching

 

Patched AppleIntelCPUPowerManagement v003 (SB+IB): http://www.putlocker...F9CFD5146AA3569

 

Patched kernel 10.9.2 13c32 for debug: http://www.putlocker...BA697D801E0DE4D

 

Chameleon module to set some MSRs:

MSRpatcher.dylib v002:  http://www.mirrorcre...files/0XEEDZGJ/  - use this if you have 0x1N00040N value in your MSR 0xE2,

MSRpatcher.dylib v007: http://www.mirrorcre...files/0RNKQMMN/ - use this if you have 0x40N value in your MSR 0xE2, also displays values that it sets.

 

MSRpatcher will change the value of your MSR 0xE2, IF IT'S NOT LOCKED, by forcefully enabling C3/C6/(C7 if supported) states, as well as set some default values to MSR_PKGCx_IRTL registers.

Because this is running from your boot loader, it could potentially hang your system. I suggest you use a USB stick with Chameleon installed on it, put this module there and boot from it instead.

 



#2
Gen_

Gen_

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts

Would a non Xeon SB-E, like a 3930k be eligible?



#3
omni

omni

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 286 posts
  • Gender:Male

Yes, they are based on the same core, I'll update the OP.



#4
shilohhh

shilohhh

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 103 posts
  • Gender:Male
  • Location:Texas

The patched AICPUPM KPed my machine a few moments after boot the first couple times but I was able to get the following results.

Hope this helps. Let me know if I can do anything else.
 
Rampage IV Extreme
3930K
 
BIOS:
c1e = Enabled
EIST = Disabled

 

Console:
 

Stock AICPUPM kext:

1/10/14 8:30:16.000 PM kernel[0]: Darwin Kernel Version 13.1.0: Sun Dec 15 18:48:24 PST 2013; root:xnu-2422.90.17~1/RELEASE_X86_64
1/10/14 8:30:16.000 PM kernel[0]: Unknown CPU: family = 0x6, model = 0x2d, stepping = 0x7
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=0 LocalApicId=0 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=2 LocalApicId=2 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=4 LocalApicId=4 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=6 LocalApicId=6 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=8 LocalApicId=8 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=10 LocalApicId=10 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=1 LocalApicId=1 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=3 LocalApicId=3 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=5 LocalApicId=5 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=7 LocalApicId=7 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=9 LocalApicId=9 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AppleACPICPU: ProcessorId=11 LocalApicId=11 Enabled
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MWAIT C-States.....................: 135456
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_CORE_THREAD_COUNT......(0x35)  : 0x6000C
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PLATFORM_INFO..........(0xCE)  : 0xC0070012000
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PMG_CST_CONFIG_CONTROL.(0xE2)  : 0x1E000400
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PMG_IO_CAPTURE_BASE....(0xE4)  : 0x20414
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_MPERF.................(0xE7)  : 0x13DEA0D7D1
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_APERF.................(0xE8)  : 0x1720D4A068
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_FLEX_RATIO.............(0x194) : 0xE0000
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_IA32_PERF_STATUS.......(0x198) : 0x29F400002C00
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_IA32_PERF_CONTROL......(0x199) : 0x2C00
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_CLOCK_MODULATION......(0x19A) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_THERM_STATUS..........(0x19C) : 0x88270008
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_MISC_ENABLES..........(0x1A0) : 0x850089
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_MISC_PWR_MGMT..........(0x1AA) : 0x400000
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x2C2C2C2C2C2C
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_POWER_CTL..............(0x1FC) : 0x2104005F
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_RAPL_POWER_UNIT........(0x606) : 0xA1003
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_POWER_LIMIT........(0x610) : 0x8006FFFF00C8FFFF
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_ENERGY_STATUS......(0x611) : 0x8CF0AFA
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKGC3_IRTL.............(0x60a) : 0x8850
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKGC6_IRTL.............(0x60b) : 0x8868
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKGC7_IRTL.............(0x60c) : 0x886D
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x80001FFF
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PP0_POWER_LIMIT........(0x638) : 0x80000000
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PP0_ENERGY_STATUS......(0x639) : 0x747BEBE
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PP0_POLICY.............(0x63a) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: Low Frequency Mode.................: 1200 MHz
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: Clock Speed (Max. Non-Turbo Freq.).: 3200 MHz
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: Maximum Turbo Frequency............: 4400 MHz
1/10/14 8:30:16.000 PM kernel[0]: AppleIntelCPUPowerManagement: (built 22:16:38 Sep 19 2013) initialization complete
1/10/14 8:30:16.000 PM kernel[0]: mcache: 12 CPU(s), 64 bytes CPU cache line size
1/10/14 8:30:16.000 PM kernel[0]: AppleIntelCPUPowerManagementClient: ready
1/10/14 8:30:16.000 PM kernel[0]: vendor:device: 0x8086:0x1503.
1/10/14 8:30:17.000 PM kernel[0]: SMC::smcInitHelper ERROR: MMIO regMap == NULL - fall back to old SMC mode
1/10/14 8:30:21.000 PM kernel[0]: IOPPF: AppleIntelCPUPowerManagement mode
1/10/14 8:30:22.069 PM com.apple.kextd[16]: Load com.apple.driver.AGPM failed; removing personalities from kernel.
 
Just AICPUMI:
 
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MWAIT C-States.....................: 135456
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_CORE_THREAD_COUNT......(0x35)  : 0x6000C
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PLATFORM_INFO..........(0xCE)  : 0xC0070012000
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PMG_CST_CONFIG_CONTROL.(0xE2)  : 0x1E000400
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PMG_IO_CAPTURE_BASE....(0xE4)  : 0x20414
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_MPERF.................(0xE7)  : 0x13DEA0D7D1
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_APERF.................(0xE8)  : 0x1720D4A068
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_FLEX_RATIO.............(0x194) : 0xE0000
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_IA32_PERF_STATUS.......(0x198) : 0x29F400002C00
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_IA32_PERF_CONTROL......(0x199) : 0x2C00
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_CLOCK_MODULATION......(0x19A) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_THERM_STATUS..........(0x19C) : 0x88270008
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_MISC_ENABLES..........(0x1A0) : 0x850089
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_MISC_PWR_MGMT..........(0x1AA) : 0x400000
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x2C2C2C2C2C2C
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_POWER_CTL..............(0x1FC) : 0x2104005F
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_RAPL_POWER_UNIT........(0x606) : 0xA1003
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_POWER_LIMIT........(0x610) : 0x8006FFFF00C8FFFF
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_ENERGY_STATUS......(0x611) : 0x8CF0AFA
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKGC3_IRTL.............(0x60a) : 0x8850
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKGC6_IRTL.............(0x60b) : 0x8868
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKGC7_IRTL.............(0x60c) : 0x886D
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x80001FFF
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PP0_POWER_LIMIT........(0x638) : 0x80000000
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PP0_ENERGY_STATUS......(0x639) : 0x747BEBE
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PP0_POLICY.............(0x63a) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: Low Frequency Mode.................: 1200 MHz
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: Clock Speed (Max. Non-Turbo Freq.).: 3200 MHz
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: Maximum Turbo Frequency............: 4400 MHz
1/10/14 8:30:16.000 PM kernel[0]: AICPUPMI: CPU P-States [ (44) ]
 
Patched AICPUPM kext:
 
Just kernel:
 
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=0 LocalApicId=0 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=2 LocalApicId=2 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=4 LocalApicId=4 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=6 LocalApicId=6 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=8 LocalApicId=8 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=10 LocalApicId=10 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=1 LocalApicId=1 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=3 LocalApicId=3 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=5 LocalApicId=5 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=7 LocalApicId=7 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=9 LocalApicId=9 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AppleACPICPU: ProcessorId=11 LocalApicId=11 Enabled
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MWAIT C-States.....................: 135456
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_CORE_THREAD_COUNT......(0x35)  : 0x6000C
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PLATFORM_INFO..........(0xCE)  : 0xC0070012000
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PMG_CST_CONFIG_CONTROL.(0xE2)  : 0x407
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PMG_IO_CAPTURE_BASE....(0xE4)  : 0x20414
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_MPERF.................(0xE7)  : 0x13D2ABA9A0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_APERF.................(0xE8)  : 0x14D94FA173
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_FLEX_RATIO.............(0x194) : 0xE0000
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_IA32_PERF_STATUS.......(0x198) : 0x2A1D00002C00
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_IA32_PERF_CONTROL......(0x199) : 0x2C00
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_CLOCK_MODULATION......(0x19A) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_THERM_STATUS..........(0x19C) : 0x88250008
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_MISC_ENABLES..........(0x1A0) : 0x850089
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_MISC_PWR_MGMT..........(0x1AA) : 0x400001
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x2C2C2C2C2C2C
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x4
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_POWER_CTL..............(0x1FC) : 0x2104005F
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_RAPL_POWER_UNIT........(0x606) : 0xA1003
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_POWER_LIMIT........(0x610) : 0x8006FFFF00C8FFFF
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_ENERGY_STATUS......(0x611) : 0x787F50F
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKGC3_IRTL.............(0x60a) : 0x8850
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKGC6_IRTL.............(0x60b) : 0x8868
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKGC7_IRTL.............(0x60c) : 0x886D
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x80001FFF
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PP0_POWER_LIMIT........(0x638) : 0x80000000
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PP0_ENERGY_STATUS......(0x639) : 0x63A1CE8
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PP0_POLICY.............(0x63a) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: Low Frequency Mode.................: 1200 MHz
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: Clock Speed (Max. Non-Turbo Freq.).: 3200 MHz
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: Maximum Turbo Frequency............: 4400 MHz
1/10/14 8:59:33.000 PM kernel[0]: AppleIntelCPUPowerManagement: Turbo Ratios CCCCCC
1/10/14 8:59:33.000 PM kernel[0]: AppleIntelCPUPowerManagement: (built 20:35:09 Oct 17 2013) initialization complete
1/10/14 8:59:33.000 PM kernel[0]: mcache: 12 CPU(s), 64 bytes CPU cache line size
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: CPU P-States [ (12) 44 ]
1/10/14 8:59:35.000 PM kernel[0]: IOPPF: AppleIntelCPUPowerManagement mode
1/10/14 8:59:35.466 PM com.apple.kextd[16]: Load com.apple.driver.AGPM failed; removing personalities from kernel.
1/10/14 8:59:36.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 8 9 ]
1/10/14 8:59:36.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 1 4 8 9 10 11 ]
1/10/14 8:59:37.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 1 2 4 5 8 9 10 11 ]
1/10/14 8:59:37.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 1 2 4 5 7 8 9 10 11 ]
1/10/14 8:59:38.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 4 5 6 7 8 9 10 11 ]
1/10/14 8:59:40.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 ]
1/10/14 8:59:40.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 4 5 6 7 ]
1/10/14 8:59:41.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 4 5 6 7 8 9 ]
1/10/14 8:59:42.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 4 5 6 7 8 9 ]
1/10/14 8:59:42.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 9 ]
1/10/14 8:59:44.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 9 11 ]
1/10/14 8:59:44.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 9 10 11 ]
1/10/14 8:59:49.000 PM kernel[0]: AICPUPMI: CPU P-States [ 12 (32) 44 ]

Just AICPUPMI:
 
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MWAIT C-States.....................: 135456
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_CORE_THREAD_COUNT......(0x35)  : 0x6000C
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PLATFORM_INFO..........(0xCE)  : 0xC0070012000
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PMG_CST_CONFIG_CONTROL.(0xE2)  : 0x407
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PMG_IO_CAPTURE_BASE....(0xE4)  : 0x20414
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_MPERF.................(0xE7)  : 0x13D2ABA9A0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_APERF.................(0xE8)  : 0x14D94FA173
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_FLEX_RATIO.............(0x194) : 0xE0000
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_IA32_PERF_STATUS.......(0x198) : 0x2A1D00002C00
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_IA32_PERF_CONTROL......(0x199) : 0x2C00
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_CLOCK_MODULATION......(0x19A) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_THERM_STATUS..........(0x19C) : 0x88250008
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_MISC_ENABLES..........(0x1A0) : 0x850089
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_MISC_PWR_MGMT..........(0x1AA) : 0x400001
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x2C2C2C2C2C2C
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x4
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_POWER_CTL..............(0x1FC) : 0x2104005F
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_RAPL_POWER_UNIT........(0x606) : 0xA1003
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_POWER_LIMIT........(0x610) : 0x8006FFFF00C8FFFF
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_ENERGY_STATUS......(0x611) : 0x787F50F
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKGC3_IRTL.............(0x60a) : 0x8850
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKGC6_IRTL.............(0x60b) : 0x8868
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKGC7_IRTL.............(0x60c) : 0x886D
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x80001FFF
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PP0_POWER_LIMIT........(0x638) : 0x80000000
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PP0_ENERGY_STATUS......(0x639) : 0x63A1CE8
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PP0_POLICY.............(0x63a) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: Low Frequency Mode.................: 1200 MHz
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: Clock Speed (Max. Non-Turbo Freq.).: 3200 MHz
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: Maximum Turbo Frequency............: 4400 MHz
1/10/14 8:59:33.000 PM kernel[0]: AICPUPMI: CPU P-States [ (12) 44 ]
1/10/14 8:59:36.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 8 9 ]
1/10/14 8:59:36.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 1 4 8 9 10 11 ]
1/10/14 8:59:37.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 1 2 4 5 8 9 10 11 ]
1/10/14 8:59:37.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 1 2 4 5 7 8 9 10 11 ]
1/10/14 8:59:38.000 PM kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 4 5 6 7 8 9 10 11 ]
1/10/14 8:59:40.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 ]
1/10/14 8:59:40.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 4 5 6 7 ]
1/10/14 8:59:41.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 4 5 6 7 8 9 ]
1/10/14 8:59:42.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 4 5 6 7 8 9 ]
1/10/14 8:59:42.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 9 ]
1/10/14 8:59:44.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 9 11 ]
1/10/14 8:59:44.000 PM kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 9 10 11 ]
1/10/14 8:59:49.000 PM kernel[0]: AICPUPMI: CPU P-States [ 12 (32) 44 ]


Edited by shilohhh, 13 January 2014 - 01:49 AM.


#5
omni

omni

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 286 posts
  • Gender:Male

You know that's way too much information and most of it is not related so please edit the post to make it easier for everyone. Just keep the CPU and ACPI related items.

 

Also, I should've noted that AICPMI should be loaded manually after the system is booted, as it makes it easier to track changes.

 

Lastly, you can see that there's a new P-state (32) beside the 12 and 44 now. You should let your system run for a bit to see what happens and whether other states show up, while you are normally using it (whatever you do with it).



#6
Riley Freeman

Riley Freeman

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,086 posts
  • Gender:Male
  • Location:The Streets

Any tips on getting rid of the X86PlatformPlugin::getCPUCStates – C001 ACST and _CST evaluations failed! errors for CPUs C001 to C00B? That's the only step I'm falling down on.

 

I tried the Method ACST that Pike posted on his blog but it didn't change anything.

 

As it stands, I now have two states: 12x and 32x (before this I only had 32x). However the CPU stays at 12x no matter the load.



#7
omni

omni

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 286 posts
  • Gender:Male

Any tips on getting rid of the X86PlatformPlugin::getCPUCStates – C001 ACST and _CST evaluations failed! errors for CPUs C001 to C00B? That's the only step I'm falling down on.

 

I tried the Method ACST that Pike posted on his blog but it didn't change anything.

 

As it stands, I now have two states: 12x and 32x (before this I only had 32x). However the CPU stays at 12x no matter the load.

 

I presume you are not using NullCPUPM, correct?

 

I would check that the generated SSDT actually refers to the right processor identifiers and their location in the ACPI tree.

 

Ideally extract your original SSDT and see what they have done in it and how, then mimic that. It is possible that the naming conventions created by the script don't match the original DSDT/SSDT layout.

 

On my motherboard (EVGA) I do not have to do anything with SSDT and I get couple of C-states. Yet when I use the script, it does not initialize any of them and I get the same error just the CPU identifiers are different. That's why I suggest looking at your original SSDT first for reference.



#8
frankiee

frankiee

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 322 posts
  • Gender:Male
  • Location:Earth
  • Interests:Everything

Any tips on getting rid of the X86PlatformPlugin::getCPUCStates – C001 ACST and _CST evaluations failed! errors for CPUs C001 to C00B? That's the only step I'm falling down on.

 

I tried the Method ACST that Pike posted on his blog but it didn't change anything.

 

As it stands, I now have two states: 12x and 32x (before this I only had 32x). However the CPU stays at 12x no matter the load.

 

I also got this message until I generated a SSDT using ssdtPRGen.sh, which adds an ACST method. But now, as with you my CPU is nailed at x12. As the script does more than adding this method, how would a fix with only adding ACST look like? I am no ACPI expert, so I simply don't know how to do it.

 

Ah and AICPUPMI just panics at boot ... any ideas?



#9
Riley Freeman

Riley Freeman

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,086 posts
  • Gender:Male
  • Location:The Streets

@frankiee: I got that error after I used ssdtPRGen. 

 

@omni: No NullCPUPM here. I removed DropSSDT from my Chameleon plist, moved the generated SSDT.aml out of Extra and rebooted using my stock SSDT. No errors and the states seem to be populated in IORegExp. However, I'm still stuck at 12x.

 

But I have a new warning in the system log: X86PlatformPlugin::publishACPIStates - Failed to get max non-turbo PState. Set max non-turbo PState to default value 1

 

Here's what I have so far:

Spoiler

 

I went through this stuff previously with Pike on his blog but there may be some bug in my BIOS (0x1AD shouldn't look the way it does for example).



#10
omni

omni

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 286 posts
  • Gender:Male

@frankiee

 

You should manually load AICPMI once the system is up and not leave it in the /S/L/E or /E/E to boot up with. I thought Pike fixed the KP, as they usually happen when MSR is not present in a specific CPU family.

 

 

@Riley Freeman,

 

I'm ignoring 0x1AD MSR for now because mine isn't correct according to Pike either, and focusing on getting C- and basic P- states first.

 

Something is not occurring in your setup because the C-State residencies are 0x0 and they shouldn't be. Can you please check your kernel log and make sure that you are not getting Unknown CPU: ... anywhere?

 

X86PlatformPlugin::publishACPIStates - Failed to get max non-turbo PState. Set max non-turbo PState to default value 1 - I get as well, have yet to look into it, but it seems it might relate to 0x1AD.

 

 

I'm going to update my original post to include further instructions, as we have to make sure your IO registry contains C- and P- states else there's little point to this.



#11
frankiee

frankiee

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 322 posts
  • Gender:Male
  • Location:Earth
  • Interests:Everything

@frankiee

 

You should manually load AICPMI once the system is up and not leave it in the /S/L/E or /E/E to boot up with. I thought Pike fixed the KP, as they usually happen when MSR is not present in a specific CPU family.

 

Loading the kext with kextload - after booting - gave me the following output:

11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MWAIT C-States.....................: 4384
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_CORE_THREAD_COUNT......(0x35)  : 0x6000C
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PLATFORM_INFO..........(0xCE)  : 0xC10F0012200
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PMG_CST_CONFIG_CONTROL.(0xE2)  : 0x403
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PMG_IO_CAPTURE_BASE....(0xE4)  : 0x10414
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: IA32_MPERF.................(0xE7)  : 0x2B9DE5DDCB
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: IA32_APERF.................(0xE8)  : 0xF64EDE867
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_FLEX_RATIO.............(0x194) : 0xE0000
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_IA32_PERF_STATUS.......(0x198) : 0x1AE600000C00
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_IA32_PERF_CONTROL......(0x199) : 0x800
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: IA32_CLOCK_MODULATION......(0x19A) : 0x0
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: IA32_THERM_STATUS..........(0x19C) : 0x883C0000
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: IA32_MISC_ENABLES..........(0x1A0) : 0x850089
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_MISC_PWR_MGMT..........(0x1AA) : 0x400001
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x2424242425252527
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x4
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_POWER_CTL..............(0x1FC) : 0x2104005B
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_RAPL_POWER_UNIT........(0x606) : 0xA1003
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PKG_POWER_LIMIT........(0x610) : 0x69F40005A9F40
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PKG_ENERGY_STATUS......(0x611) : 0x2870FA46
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PKGC3_IRTL.............(0x60a) : 0x0
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PKGC6_IRTL.............(0x60b) : 0x0
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x14149480001FFF
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PP0_POWER_LIMIT........(0x638) : 0x80000000
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PP0_ENERGY_STATUS......(0x639) : 0x15230607
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PP0_POLICY.............(0x63a) : 0x0
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x53BFB0F47A
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x0
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x69D09467DA
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: CPU Low Frequency Mode.............: 1200 MHz
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: CPU Maximum non-Turbo Frequency....: 3400 MHz
11/01/14 20:22:09,000 kernel[0]: AICPUPMI: CPU Maximum Turbo Frequency........: 3900 MHz
11/01/14 20:22:10,000 kernel[0]: AICPUPMI: CPU P-States [ (12) ]
11/01/14 20:22:10,000 kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 ]
11/01/14 20:22:10,000 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 3 10 11 ]
11/01/14 20:22:10,000 kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 ]
11/01/14 20:22:10,000 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 2 3 10 11 ]
11/01/14 20:22:11,000 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 2 3 6 7 8 9 10 11 ]
11/01/14 20:22:11,000 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 6 7 8 9 10 11 ]
11/01/14 20:22:12,000 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 5 6 7 8 9 10 11 ]
11/01/14 20:22:13,000 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 4 5 6 7 8 9 10 11 ]

So you see I am stuck at x12. Also here is a screenshot of IORegistryExplorer:

 

Spoiler

 

So it looks like P-States were generated?



#12
omni

omni

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 286 posts
  • Gender:Male

Yes, it appears C- and P- states are set, so it should be a matter of actually using them through AICPM.

 

I'm also seeing that your CPUMaxNonTurboPState is 0x5...see if you are getting this message in your kernel log:

 

X86PlatformPlugin::publishACPIStates - Failed to get max non-turbo PState. Set max non-turbo PState to default value 1

 

Also, please look at your kernel log and see if there's info about AICPM setting Turbo modes, etc?



#13
frankiee

frankiee

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 322 posts
  • Gender:Male
  • Location:Earth
  • Interests:Everything

Yes, it appears C- and P- states are set, so it should be a matter of actually using them through AICPM.

 

I'm also seeing that your CPUMaxNonTurboPState is 0x5...see if you are getting this message in your kernel log:

 

X86PlatformPlugin::publishACPIStates - Failed to get max non-turbo PState. Set max non-turbo PState to default value 1

 

Also, please look at your kernel log and see if there's info about AICPM setting Turbo modes, etc?

 

The only message I get regarding "Turbo" is this:

11/01/14 20:52:47,000 kernel[0]: AppleIntelCPUPowerManagement: Turbo Ratios 223335


#14
Riley Freeman

Riley Freeman

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,086 posts
  • Gender:Male
  • Location:The Streets

I haven't had the unknown CPU line in the console since using your patched AICPUPM binary.

 

Here's a screenshot of IORegExp. CPU model is i7-3930k. Platform is MacPro6,1

 

Two of the C-State settings in the BIOS (C3 and C7 report I think) were set to disabled (by optimised defaults from my last update). Enabling these got me this in the AICPMI output:
 
Jan 11 20:48:54 MacPro kernel[0]: AICPUPMI: CPU P-States [ (12) ]
Jan 11 20:48:54 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 1 2 3 4 5 6 ]
Jan 11 20:48:54 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 ]
Jan 11 20:48:55 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 ]
Jan 11 20:48:57 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 ]
Jan 11 20:48:58 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 10 ]
Jan 11 20:49:00 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 10 11 ]
Jan 11 20:49:02 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 9 10 11 ]
 
C-State residencies are working too:
 
Jan 11 20:48:53 MacPro kernel[0]: AICPUPMI: MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x5B54B183E0
Jan 11 20:48:53 MacPro kernel[0]: AICPUPMI: MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x1AE2AD3A740
Jan 11 20:48:53 MacPro kernel[0]: AICPUPMI: MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0
Jan 11 20:48:53 MacPro kernel[0]: AICPUPMI: MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
 

I think the mistake I was making was not unloading/loading the kext once booted.

 

So things are hopefully looking a little better. But still stuck at 12x.



#15
omni

omni

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 286 posts
  • Gender:Male

Are you guys actually using the computer for a few minutes and doing normal things as you would, before reading the AICPUPMI?

 

Because P-States are reached on-demand, and if computer is idle, then there's no reason to go higher than the lowest one?

 

I'm going to post an updated binary for AICPM with different versions for SB and IB chips as IB match/init is a bit different and sets some additional variables.



#16
Riley Freeman

Riley Freeman

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,086 posts
  • Gender:Male
  • Location:The Streets

I'm using this method to stress the CPU and verifying in Activity Monitor that each instance of yes is running at 100% cpu.

 

I re-enabled the DropSSDT and put back the generated SSDT to see what difference it would make. 

 

I got the ACST errors for C001 to C00B as before. But also this in the AICPMI output. I'm getting C6-Cores listed now.

 

Jan 11 21:06:08 MacPro kernel[0]: AICPUPMI: MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x157BE2A220
Jan 11 21:06:08 MacPro kernel[0]: AICPUPMI: MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x139C0
Jan 11 21:06:08 MacPro kernel[0]: AICPUPMI: MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x5A08313520
Jan 11 21:06:08 MacPro kernel[0]: AICPUPMI: MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
Jan 11 21:06:09 MacPro kernel[0]: AICPUPMI: CPU P-States [ (12) ]
Jan 11 21:06:09 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 2 3 7 11 ]
Jan 11 21:06:09 MacPro kernel[0]: AICPUPMI: CPU C6-Cores [ 0 2 3 5 7 11 ]
Jan 11 21:06:09 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 2 3 7 8 9 11 ]
Jan 11 21:06:09 MacPro kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 5 7 8 9 11 ]
Jan 11 21:06:10 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 2 3 4 5 7 8 9 11 ]
Jan 11 21:06:10 MacPro kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 4 5 6 7 8 9 11 ]
Jan 11 21:06:10 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 1 2 3 4 5 7 8 9 11 ]
Jan 11 21:06:10 MacPro kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 4 5 6 7 8 9 10 11 ]
Jan 11 21:06:11 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 7 8 9 10 11 ]
Jan 11 21:06:13 MacPro kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 8 9 10 11 ]


#17
omni

omni

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 286 posts
  • Gender:Male

The C-States residency init is a good thing, I'm not sure yet about this lack of P-States.

 

I'll have a new version soon, but working through KPs is difficult because it requires a reboot that takes several minutes on its own (lame EVGA) and then finding the issue and patching it...



#18
frankiee

frankiee

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 322 posts
  • Gender:Male
  • Location:Earth
  • Interests:Everything

Are you guys actually using the computer for a few minutes and doing normal things as you would, before reading the AICPUPMI?

 

Sure, I even did a Geekbench run which in fact turned out to be at 1/3 of what it was before. On a side note, when I try to run Geekbench _after_ running AICPUPMI my machine badly KPs: Monitor goes black and just restarts.

 

Another line in the log caught my attention:

kernel[0]: IOPPF: AppleIntelCPUPowerManagement mode

For Ivy-E, shouldn't that be XCPM mode?



#19
omni

omni

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 286 posts
  • Gender:Male

Sure, I even did a Geekbench run which in fact turned out to be at 1/3 of what it was before. On a side note, when I try to run Geekbench _after_ running AICPUPMI my machine badly KPs: Monitor goes black and just restarts.

 

Another line in the log caught my attention:

kernel[0]: IOPPF: AppleIntelCPUPowerManagement mode

For Ivy-E, shouldn't that be XCPM mode?

 

As far as I know, only Haswell supports XCPM, while even the Trashcan Pro uses AICPM.



#20
frankiee

frankiee

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 322 posts
  • Gender:Male
  • Location:Earth
  • Interests:Everything

As far as I know, only Haswell supports XCPM, while even the Trashcan Pro uses AICPM.

 

OK then it must be something else.







0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

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