Contribute
Register

Guide: X79 OS X Controlled SpeedStep (CPU Power Management)

Status
Not open for further replies.
Hmm. That doesn't too promising for the E5 1660 (v1) build I've been planning.
(It should overclock nicely).

With 6,1 (XCPM) you need -c 1 -w 3. Please read the guide.

You may want to add -turbo 3800 if it doesn't get it right.

I will say that omni (the dev who decompiled and patched the AICPUPM kext for SandyBridge-E) never got his SandyBridge-E Xeon working right. He eventually gave up but left us with the working patch we still use for SB-E i7.
 
With 6,1 (XCPM) you need -c 1 -w 3. Please read the guide.

You may want to add -turbo 3800 if it doesn't get it right.

I will say that omni (the dev who decompiled and patched the AICPUPM kext for SandyBridge-E) never got his SandyBridge-E Xeon working right. He eventually gave up but left us with the working patch we still use for SB-E i7.

Was Omni ALSO using the 1620 - a 4 core cpu? Is that where he got stuck?

All the other 16xx above the 1620 cpu's are similar in architecture to the Intel's "HEDT": i7 - 6, 8, now (x99) 10 core.

http://ark.intel.com/compare/63696,64620,70845,77780,75780,75781,77912

https://software.intel.com/en-us/ar...ification-with-cpuid-model-and-family-numbers
 
Hello @demiankz, @shilohh,

I'd like to know how it turned out for you. Were you able to fix those errors?

I'm getting the same errors when generating a SSDT from Piker's script. I have almost the same config.

GA-X79-UD5 F12
3930K

Any help is appreciated.
Thank you

If I run it without those flags, I also get these errors:

  • Error: board-id [Mac-F42C88C8] not supported by Sandy Bridge – check SMBIOS data / use the -c option
    • I'm unable to run the script with the -c option
    • Continue? y
  • Warning: 'system-type' may be set improperly (1 instead of 2)

Please Press F5 at the clover GUI. Then post your clover folder from the efi partition.

Oh and a ioreg file from ioregistryexplorer.
 
No problem. Thanks for testing. Let me know your results when you have time. I have the last piece of the puzzle for you but I want see if we can get around patching the kext in SLE

Hi, I was having some problems keeping up with my job and the hackintosh stability so I was forced to use it in the most stable configuration I knew, but I have time again to do more testings, if you need to, I would like to do it via Skype or something you use so we can do it more quickly.
 
I would like to do it via Skype or something you use so we can do it more quickly.

Please familiarise yourself with the rules :
The Rules said:
Members may not solicit nor provide assistance via private communications. This forum was created to provide help by posting questions and getting answers. By not publicly discussing you are depriving others of solutions to problems they may encounter
 
Please familiarise yourself with the rules :

"By not publicly discussing you are depriving others of solutions to problems they may encounter"

While its the rules, its not true, since the final and stable solution its going to be available for anyone else, I don't even do anything since Im just testing whatever he trows at me.

Working with the forum, im limited to only communicate here and if the computers dies im uncommunicated since communication in the forum its slow and its even worst using a smartphone.

But ok, I will stick around here as long im needed.
 
i7 5820K (Haswell-E) and Asus X99 Pro USB 3.1

1st scenario:

-SSDT with XCMP active (I also applied frecuencyVectors.sh to my MacPro 6,1 SMBIOS to patch X86PlatformPlugin). I'm on 10.11.6 and I'm not sure if I applied clover Kernel PM patch at one point of my current system and it is the reason why XCPM works, But I must to say I repeated the process with Mac OS Sierra 10.12 installation and with only the steps I described and I don't have XCPM working at now.

-Side effect: With the XCPM on 10.11.6 and the steps I described, the BIOS values about C states, IntelSpeedStep or Turbo Frecuencies and these Intel features has no effects on SO (because the XCPM). It always are enabled despite the BIOS values. Another thing I noticed was low CPU performance on Apple Logic Pro than the before times when I used the 2nd scenario.

2nd scenario:

-10.11.6 Using NullCPUPowerManagement.kext and FakeCPUID to 0x0306E0 (Ivy Bridge E5) which has no XCPM natively (Iam waiting to check the performance on the 10.12 installation where I cant run XCMP at now with the 1st scenario conditions). I also must to say at first place, that on the 2nd scenario I restored the original frecuency vectors plist (located inside the X86PlatformPlugin.kext) which comes with the OS installation, for cleaning purposes.

-Side effect: With this fake CPUID, I cannot run the system without NullCPUPowerManagement.kext. Also I tried to set the clover patch 'Asus AICPUPM' to use the native AppleIntelCPUPowerManagement without NullCPUPowerManagement, but only boots with NullCPUPM...

It does not matter, because the important thing here is the fact that I have more performance at 2nd scenario with software that I normally use than on 1st scenario. It is important to this thread because the question is 'enabling XCPM'.

I also have C-States and IntelSpeedStep in the 2nd scenario. Annoying because I have working NullCPUPowerManagement, but I am sure the XCPM is disabled by 'sysctl machdep.xcpm' command output. The difference with 1st scenario is the XCPM disabled so the CPU doesn't reach the nominal frecuency. I mean the Turbo Boost does not work on 2nd scenario (Anyway, I figure it is about the fakeCPUID P-States watching the AppleIntelInfo.kext output. Only shows 33 on top of P-States list on this scenario. The SpeedStep works because I can get for example 1,2 Ghz, and on the P-States List I can see the value 12). Another difference is that I can disable this Intel features by BIOS and the OS understands the change.

Observation:

I think it is not an effect of SpeedStep because I try disabling/enabling on 2nd scenario, and the SO recognizes BIOS values and all works apparently equally fluent. My suspicious of my performance fall with XCPM (1st scenario) is that XCPM does not manage my cores as well as without it. All the features works but not at the same performance that without it. I notice it with the CPU performance meter and the behaviour of the software, with the same project on Logic. At first scenario the CPU is burnt (not all cores are working) and I have audio system overflow and Logic stops. At second scenario I have a lot of CPU free (with a balanced use of cores) and the program flows without overflow.

After that, my question is: Can I disable the XCPM without making a fakeCPUID 0x0306E0?. It is the only way the system disables XCPM. At 1st scenario I have NullCPUPowerManagement installed on S/L/E but it does not matter because it has no effect while I don't fakeCPUID. I test removing the CPUPM SSDT but the XCPM mode is still active.

The behaviour of 1st scenario could be a previous execution of my system with clover flag Kernel PM patch active, and my kernel is already patched forever till I replace kernel file with the original. I read that the Kernel PM patch permits the XCPM on the CPU implemented at kernel level and it does not matter if I have NullCPU kext or AppleIntelCPUManagement.kext. This last conclusion fits perfectly with my 1st scenario casuistry.

I think that the problem with XCPM could be a C state switching problem. I think my monocore performance on Geekbench in my 1st scenario is minly higher than on 2nd scenario as opposite than the multicore. My suspicious is that XCPM not hang well my high cpu multicore processing situations.

Thanks all people and I hope my situation helps others. For now I am using 2nd Scenario about the performance fall with XCPM.
---------------------------------------
The AppleIntelInfo.kext CPU ratio dump on 1st scenario.

CPU Ratio Info:

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

Base Clock Frequency (BLCK)............. : 100 MHz

Maximum Efficiency Ratio/Frequency.......: 12 (1200 MHz)

Maximum non-Turbo Ratio/Frequency........: 33 (3300 MHz)

Maximum Turbo Ratio/Frequency............: 36 (3600 MHz)

P-State ratio * 100 = Frequency in MHz

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

CPU P-States [ (12) 26 34 ]

CPU C6-Cores [ 0 3 4 7 9 10 ]

CPU P-States [ (12) 14 26 34 ]

CPU C6-Cores [ 0 2 3 4 6 7 8 9 10 ]

CPU P-States [ (12) 13 14 26 34 ]

CPU P-States [ (12) 13 14 15 26 34 ]

CPU C6-Cores [ 0 1 2 3 4 6 7 8 9 10 ]

CPU P-States [ (12) 13 14 15 17 26 34 ]

CPU P-States [ (12) 13 14 15 17 20 26 34 ]

CPU P-States [ (12) 13 14 15 16 17 20 26 34 ]

CPU C6-Cores [ 0 1 2 3 4 6 7 8 9 10 11 ]

CPU P-States [ (12) 13 14 15 16 17 20 21 26 34 ]

CPU P-States [ (12) 13 14 15 16 17 20 21 23 26 34 ]

CPU P-States [ (12) 13 14 15 16 17 19 20 21 23 26 34 ]

CPU P-States [ 12 13 14 15 16 17 19 20 21 23 26 (33) 34 ]

CPU C6-Cores [ 0 1 2 3 4 5 6 7 8 9 10 11 ]

CPU P-States [ (12) 13 14 15 16 17 18 19 20 21 23 26 33 34 ]

CPU P-States [ (12) 13 14 15 16 17 18 19 20 21 23 25 26 33 34 ]

CPU P-States [ 12 13 14 15 16 17 18 19 20 21 23 25 26 30 (33) 34 ]

CPU P-States [ 12 13 14 15 16 17 18 19 20 21 23 25 26 30 33 34 (36) ]

CPU P-States [ 12 13 14 15 16 17 18 19 20 21 23 25 26 30 32 (33) 34 36 ]

CPU P-States [ (12) 13 14 15 16 17 18 19 20 21 23 25 26 27 30 32 33 34 36 ]

CPU P-States [ 12 13 14 15 16 17 18 19 20 21 23 25 26 27 28 30 32 (33) 34 36 ]

CPU P-States [ (12) 13 14 15 16 17 18 19 20 21 22 23 25 26 27 28 30 32 33 34 36 ]

CPU P-States [ 12 13 14 15 16 17 18 19 20 21 22 23 25 26 27 28 29 30 32 (33) 34 36 ]

CPU P-States [ 12 13 14 15 16 17 18 19 20 21 22 23 25 26 27 28 29 30 31 32 33 34 (36) ]

CPU P-States [ (12) 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 36 ]

CPU P-States [ 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 (35) 36 ]
--------------------------------------------------------------------------------------------------------------
 
Last edited:
Last edited:
I ve made working the xcpm on Sierra with No 'NullCPUPM' kext, no 'AppleIntelCPUPM' kext, SSDT generated by script, frecuency vectors patched for Haswell-E (autorecognized by script) and the next Piker-Alpha kernel patch applied on clover KernelToPatch section (which was the magic key to made it working). See text file attached. My system is X99 & Haswell-E but can helps anybody with Haswell-E.

See the pickers Alpha Blog entry for help and details. I only recopile the patch from internet on a text file.
https://pikeralpha.wordpress.com/2016/07/26/xcpm-for-unsupported-processor/
 

Attachments

  • PARCHE_XCMP_HASWELL_E.rtf.zip
    973 bytes · Views: 102
Last edited:
Status
Not open for further replies.
Back
Top