Jump to content

KernelAndKextPatches 10.13x,10.14.x,10.15.x X99/X299


nmano
244 posts in this topic

Recommended Posts

1 hour ago, latze said:

 

 

If you are seeing 25.50 at Core Req you are using the right one :D it wouldn't reach that level otherwise.

 

To see your actual Max Freq there which from the pic seem to be 3.8GHz you need to change the replace string to C1E308B8 00260000 31D29090 ( 26 instead of FF => 26 in HEX is 38 )

 

But I recommend you to try my other method that I just posted instead of performance patch. 

Thank you latze, I am learning how PM works on X99. It is very interesting. I will try your method with CPUFriend and see what results I get. Are both kexts generic or specific to your CPU?

 

My CPU is a Xeon E5 1680 V3 Haswell

 

Could I use them directly in combination with Lilu Kext?

 

Thank you.

Link to comment
Share on other sites

9 minutes ago, jrv10 said:

Thank you latze, I am learning how PM works on X99. It is very interesting. I will try your method with CPUFriend and see what results I get. Are both kexts generic or specific to your CPU?

 

My CPU is a Xeon E5 1680 V3 Haswell

 

Could I use them directly in combination with Lilu Kext?

 

Thank you.

 

Kexts will work on any CPU, but I don't know how well depending on the model, hence the testing :)

 

Yes, you can use them in combination with any other kexts, just place them in clover kexts/Other 

Link to comment
Share on other sites

On 5/12/2020 at 2:16 PM, laudou said:

Hi

I am wondering how you can add the kernel patches to opencore config.plist. Can you help me, please? Thanks

Hi, @laudou

Sorry. I don't use Open Core. But some kernel patches that i used in Clover was firstly realised in Open Core and then transmited in to Clover(kernel patch for locked 0x1AA). Also Open Core has built-in solution for locked 0xE2 MSR, so both this patches have built-in realisation in Open Core and just need be enabled in OC config.plist/kernel/Quirks 

Edited by yapan4
  • Like 1
Link to comment
Share on other sites

XCPM Patches 10.15.5 Beta  Modify By N.Mano  X99/X299

This is New Method.

X99/X299 System If Add bootstrap patch You have to Add original CPUID like this.

                        Original CPUID

FakeCPUID         0x0306F2        Haswell-E

FakeCPUID         0x0406F1        Broadwell-E

FakeCPUID         0x050654        Skylake-X

FakeCPUID         0x050657        Cascade Lake-X

 

don't see any difference 10.15.4 and 10.15.5 beta please test this patches for 10.15.5 too.

Thanks for your support.

 

 

sysctl -x  hw.cpufamily

sysctl -x  machdep.cpu.model

sysctl -x  machdep.xcpm.forced_idle_period

sysctl -x  machdep.xcpm.forced_idle_ratio

sysctl -x  machdep.xcpm.mode

sysctl -x  machdep.cpu.features

sysctl -x  hw.cputype

 

#1 xcpm_core_scope_msrs © Pike R. Alpha Modify 10.15.5 N.Mano


Comment    String  <-> xcpm_core_scope_msrs © Pike R. Alpha
Disabled   Boolean <-> No
Find       Data<-> 31D2E857 D2FFFF
MatchOS    String <-> 10.15.x
Replace    Data<-> 31D29090 909090

 #2 _xcpm_pkg_scope_msrs (c) Pike R. Alpha Modify By N.Mano

Comment     String  <->    _xcpm_pkg_scope_msrs (c) Pike R. Alpha Modify By N.Mano
Disabled    Boolean <-> No
Find        Data<->      31D2E8E9 F9FEFF
MatchOS     String <->    10.15.x
Replace     Data<->      31D29090 909090

#3 

Comment    String  <-> _xcpm_SMT_scope_msrs #1 (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<->   BE060000 005DE908 000000
MatchOS    String <-> 10.15.x
Replace    Data<->   BE060000 005DC390 909090

#4

Comment    String  <->_xcpm_SMT_scope_msrs_2 (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<->  31D2E838 FDFFFF
MatchOS    String <-> 10.15.x
Replace    Data<-> 31D29090 909090

#5

Comment    String  <->__xcpm_enable_pstate_patch (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<->   41C1E608 4963D689 D048C1EA 20
MatchOS    String <-> 10.15.x
Replace    Data<->   41C1E608 B800FF00 0031D290 90

#6 This patch for X99(Haswell-E)

Comment    String  <->xcpm_bootstrap HASwell-E (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<->   80C3C480 FB42
MatchOS    String <-> 10.15.x
Replace    Data<->   80C3C180 FB42

#7 This patch for X299(Skylake-X/Cascade Lake-X)


Comment    String  <->xcpm_bootstrap Skylake-X/Cascade Lake-X (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<->   80C3C480 FB42
MatchOS    String <-> 10.15.x
Replace    Data<->   80C3BD80 FB42

#8 This patch for X99(Broadwell-E)

Comment    String  <->xcpm_bootstrap Broadwell-E (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<->   80C3C480 FB42
MatchOS    String <-> 10.15.x
Replace    Data<->   80C3BC80 FB42
  
#9 This patch for IvyBridge

Base: _xcpm_bootstrap
Comment: xcpm_bootstrap IvyBridge (c) Pike R. Alpha Modify By N.Mano
Count: 0
Enabled: YES
Find: 80C3C480 FB42
Identifier: kernel
Limit: 0
Mask: (LEAVE THIS EMPTY)
MatchKernel: 
Replace: 80C3C680 FB42
ReplaceMask: (LEAVE THIS EMPTY)
Skip: 0  


#10

Comment    String  <->_C6/C7_If=E2-Enabled=0x7E000403 Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<-> E2000000 4C000000 00000000 00000000 0F040000 00000000 0500001E 
MatchOS    String <-> 10.12.x,10.13.x,10.14.x,10.15.x
Replace    Data<-> E2000000 4C000000 00000000 00000000 0F040000 00000000 0304007E 


#11

Comment    String  <->xcpm MSR Patch 4206 (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<-> 42060000 DC330600 00000000 00000000 1F000000 00000000 18000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
MatchOS    String <->10.12.x,10.13.x,10.14.x,10.15.x
Replace    Data<-> 42060000 00000000 00000000 00000000 1F000000 00000000 18000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 

#12

Comment    String  <->xcpm support /0x82D390/MSR_PP0_POLICY 0x63a (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<-> 3A060000 DC330600 00000000 00000000 1F 
MatchOS    String <->10.12.x,10.13.x,10.14.x,10.15.x
Replace    Data<-> 3A060000 00000000 00000000 00000000 1F 



#13 Disable panic kext logging on 10.15.5+ Modify By N.Mano

Comment    String  <->Disable panic kext logging on   @PMheart/Pike R. Alpha
Disabled   Boolean <-> No
Find       Data<->  8A0284C0 7447
MatchOS    String <->10.14.x,10.15.x
Replace    Data<->  8A0284C0 EB47

 

  • Like 2
Link to comment
Share on other sites

Hi, I've just migrated to OC from Clover and have everything up and running (x99 UD4, 5820k @ 4300, Vega64), but am having the same issue as some of the other people on this thread. In order to get full performance I need to have the PMDrvr.kext installed. I've tried pretty much everything from all over the forums. I even have CPUfriend installed, patched and made all the necessary ssdt's but the scores stay the same, about 30% lower with the kext. What am I missing in order to get the same performance without this kext? - any suggestions?

 

All related pm plugins are loading correctly through quirk AppleXcpmExtraMsrs and the corresponding kexts and ssdt's. Anyone is welcome to use this OC setup for their GA-UD4-X99 board. Don't forget to generate a proper System Serial Number in PlatformInfo. Everything appears to work properly in Mojave as well as Catalina. EFI.zip

 

Another question I have is that through all the different configurations that I tried multiple cpu entries for the same cpu, 4 to be exact, have appeared in my ioreg. Is there any way that I can delete these, or is this something that I shouldn't worry about? Thanks!

 

382669523_Screenshot2020-05-19at17_32_17.thumb.png.00030e27f6732f47bf3b48659ee3ee36.png

 

 

Link to comment
Share on other sites

39 minutes ago, olmirror said:

Hi, I've just migrated to OC from Clover and have everything up and running (x99 UD4, 5820k @ 4300, Vega64), but am having the same issue as some of the other people on this thread. In order to get full performance I need to have the PMDrvr.kext installed. I've tried pretty much everything from all over the forums. I even have CPUfriend installed, patched and made all the necessary ssdt's but the scores stay the same, about 30% lower with the kext. What am I missing in order to get the same performance without this kext? - any suggestions?

 

All related pm plugins are loading correctly through quirk AppleXcpmExtraMsrs and the corresponding kexts and ssdt's. Anyone is welcome to use this OC setup for their GA-UD4-X99 board. Don't forget to generate a proper System Serial Number in PlatformInfo. Everything appears to work properly in Mojave as well as Catalina. EFI.zip

 

Another question I have is that through all the different configurations that I tried multiple cpu entries for the same cpu, 4 to be exact, have appeared in my ioreg. Is there any way that I can delete these, or is this something that I shouldn't worry about? Thanks!

 

382669523_Screenshot2020-05-19at17_32_17.thumb.png.00030e27f6732f47bf3b48659ee3ee36.png

 

 

Try this option.

4 CPU is ok

EFI.zip

  • Like 1
Link to comment
Share on other sites

4 hours ago, pitrysha said:

Try this option.

4 CPU is ok

EFI.zip

Tried your files out. The ssdt-EC is not recognized and I had to disable AppleCPUPMCfglock as it disabled my c3 states and fully functioning PM. But either way, it still kept my benchmarks as they were. It's as if the OS is not recognizing the overclock. It gives scores as if the cpu is running at stock speeds. PMDrvr pushes all the cores to max turbospeeds when the cpu is rendering, but I can't get this result without it. But at least the temps are where they are supposed to be instead of constantly fluctuating between 40 and 60 when the computer is idle. thanks for the input pitrysha

 

On a side note, did you have any difficulties getting your xeon to run on opencore? I'm thing of picking up a 2697 v3. My last effort with a xeon 2690v3 on Clover didn't get me anywhere and had to send it back.

Link to comment
Share on other sites

10 hours ago, olmirror said:

Tried your files out. The ssdt-EC is not recognized and I had to disable AppleCPUPMCfglock as it disabled my c3 states and fully functioning PM. But either way, it still kept my benchmarks as they were. It's as if the OS is not recognizing the overclock. It gives scores as if the cpu is running at stock speeds. PMDrvr pushes all the cores to max turbospeeds when the cpu is rendering, but I can't get this result without it. But at least the temps are where they are supposed to be instead of constantly fluctuating between 40 and 60 when the computer is idle. thanks for the input pitrysha

 

On a side note, did you have any difficulties getting your xeon to run on opencore? I'm thing of picking up a 2697 v3. My last effort with a xeon 2690v3 on Clover didn't get me anywhere and had to send it back.

I have no problem with Xeon .

Here I look at many with your processors that something is wrong .

Link to comment
Share on other sites

4 hours ago, pitrysha said:

I have no problem with Xeon .

Here I look at many with your processors that something is wrong .

yeah, hackintoshes with xeon are usually not overclocked so everything works as it should. It's the ones that overclock that have problems getting their speeds to be recognized by the os. I wonder what we can do? You think implementing the performance patch in OC would make a difference?

Link to comment
Share on other sites

42 minutes ago, olmirror said:

yeah, hackintoshes with xeon are usually not overclocked so everything works as it should. It's the ones that overclock that have problems getting their speeds to be recognized by the os. I wonder what we can do? You think implementing the performance patch in OC would make a difference?

If you read the Open Core thread starting from page 90-100, they discussed these problems there and sort of solved them, that is, everything should work for you without XСPM patches, as I understand it.

Link to comment
Share on other sites

1 hour ago, pitrysha said:

If you read the Open Core thread starting from page 90-100, they discussed these problems there and sort of solved them, that is, everything should work for you without XСPM patches, as I understand it.

True, xcpm works in OC without the patches. What I am looking for though, is for a way to have the OS read an overclocked CPU (-maybe it's just an issue with Haswell-E?). I just did a benchmark at stock specs (3,4Ghz) and effectively, the scores are identical to my systems benchmarks running at 4,3Ghz. I remember there being an XCPM Performance fix that was implemented earlier on (High Sierra?) and was wondering whether a patch in that direction could help us on our way to getting our systems running at its full potential. So far I have tried pretty much everything I found around the net, including diabling eist, installing and configuring cpufriend, ssdt's but nothing has helped up to this point. Except for PMDvr.kext that is. But I don't like how that affects my wildly fluctuating temps.

Edited by olmirror
Link to comment
Share on other sites

15 minutes ago, olmirror said:

True, xcpm works in OC without the patches. What I am looking for though, is for a way to have the OS read an overclocked CPU (-maybe it's just an issue with Haswell-E?). I just did a benchmark at stock specs (3,4Ghz) and effectively, the scores are identical to my systems benchmarks running at 4,3Ghz. I remember there being an XCPM Performance fix that was implemented earlier on (High Sierra?) and was wondering whether a patch in that direction could help us on our way to getting our systems running at its full potential. So far I have tried pretty much everything I found around the net, including diabling eist, cpu friend, ssdt's but nothing has helped up to this point. Except for PMDvr.kext that is. But I don't like how that affect my wildly fluctuating temps.

And through the BIOS, what does not suit overclocking?

Link to comment
Share on other sites

2 hours ago, pitrysha said:

And through the BIOS, what does not suit overclocking?

Thanks Pitrysha, are you suggesting that I need to look at the settings in my bios? It's a gigabyte mobo, -any suggestions as to what settings I could try? I ticked the automatic overclock to 4,3...

Edited by olmirror
  • Like 1
Link to comment
Share on other sites

26 minutes ago, olmirror said:

Thanks Pitrysha, are you suggesting that I need to look at the settings in my bios? It's a gigabyte mobo, -any suggestions as to what settings I could try? I ticked the automatic overclock to 4,3...

For example .

https://nickwoodhams.com/x99-overclock-settings/

EFI.zip

  • Like 1
Link to comment
Share on other sites

1 hour ago, olmirror said:

Thanks pitrysha. went through the guides, tried your files, same results. Maybe I should simply admit defeat and use the pmdrvr.kext when I need my system to run at full performance... Strange though.

PMDrvr.kext is not recommended. 

CPUFriend.kext + CPUFriendDataProvider.kext try this option.

Set the maximum factor in the BIOS.

If it does not work out, then I have no more options.

Архив.zip

Link to comment
Share on other sites

1 hour ago, pitrysha said:

PMDrvr.kext is not recommended. 

CPUFriend.kext + CPUFriendDataProvider.kext try this option.

Set the maximum factor in the BIOS.

If it does not work out, then I have no more options.

Архив.zip

Seriously appreciate your effort! Remains one final question, do I need to paste the included plists into X86PlatformPlugin.kext?

Edited by olmirror
Link to comment
Share on other sites

11 minutes ago, olmirror said:

Seriously appreciate your effort! Remains one final question, do I need to paste the included plists into X86PlatformPlugin.kext?

Ready-made kexts with frequency characteristics. But you can make your own.

Link to comment
Share on other sites

57 minutes ago, pitrysha said:

Ready-made kexts with frequency characteristics. But you can make your own.

Thanks, tried and didn't get anywhere. I'm throwing in the towel. Thanks for all your efforts! I think I'm going to pick up a used 2697 v3 which will keep me from overclocking. My latest attempt at installing a xeon brought me no further than a hang at pci configuration begin. This was on clover with the pci patch from Brumbaer implemented. Do you have any of those patches running on your setup or will ticking IncreasePciBarSize do the trick on OC?

Edited by olmirror
Link to comment
Share on other sites

13 minutes ago, olmirror said:

Thanks, tried and didn't get anywhere. I'm throwing in the towel. Thanks for all your efforts! I think I'm going to pick up a used 2697 v3 which will keep me from overclocking. My latest attempt at installing a xeon brought me no further than a hang at pci configuration begin. This was on clover with the pci patch from Brumbaer implemented. Do you have any of those patches running on your setup or will ticking IncreasePciBarSize do the trick on OC?

Here is my plist 

config.plist

Link to comment
Share on other sites

XCPM 10.15.5 for X99/X299

Apple update bootstrap to 10.15.5

Now old method.please update FakeID in your config.

X99/X299 System If Add bootstrap patch You have to Add original CPUID like this.

FakeCPUID        Original CPUID

0x0306C3           0x0306F2        Haswell-E

0x0306D4          0x0406F1        Broadwell-E

0x0406E3         0x050654        Skylake-X

0x0406E3         0x050657        Cascade Lake-X

 

#1xcpm_core_scope_msrs © Pike R. Alpha Modify 10.15.5 N.Mano


Comment    String  <-> xcpm_core_scope_msrs © Pike R. Alpha
Disabled   Boolean <-> No
Find       Data<-> 31D2E857 D2FFFF
MatchOS    String <-> 10.15.x
Replace    Data<-> 31D29090 909090

 #2_xcpm_pkg_scope_msrs (c) Pike R. Alpha Modify By N.Mano

Comment     String  <->    _xcpm_pkg_scope_msrs (c) Pike R. Alpha Modify By N.Mano
Disabled    Boolean <-> No
Find        Data<->      31D2E8E9 F9FEFF
MatchOS     String <->    10.15.x
Replace     Data<->      31D29090 909090

#3 

Comment    String  <-> _xcpm_SMT_scope_msrs #1 (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<->   BE060000 005DE908 000000
MatchOS    String <-> 10.15.x
Replace    Data<->   BE060000 005DC390 909090

#4

Comment    String  <->_xcpm_SMT_scope_msrs_2 (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<->  31D2E838 FDFFFF
MatchOS    String <-> 10.15.x
Replace    Data<-> 31D29090 909090

#5

Comment    String  <->__xcpm_enable_pstate_patch (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<->   41C1E608 4963D689 D048C1EA 20
MatchOS    String <-> 10.15.x
Replace    Data<->   41C1E608 B800FF00 0031D290 90



#6

Comment    String  <->_C6/C7_If=E2-Enabled=0x7E000403 Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<-> E2000000 4C000000 00000000 00000000 0F040000 00000000 0500001E 
MatchOS    String <-> 10.12.x,10.13.x,10.14.x,10.15.x
Replace    Data<-> E2000000 4C000000 00000000 00000000 0F040000 00000000 0304007E 


#7

Comment    String  <->xcpm MSR Patch 4206 (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<-> 42060000 DC330600 00000000 00000000 1F000000 00000000 18000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
MatchOS    String <->10.12.x,10.13.x,10.14.x,10.15.x
Replace    Data<-> 42060000 00000000 00000000 00000000 1F000000 00000000 18000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 

#8

Comment    String  <->xcpm support /0x82D390/MSR_PP0_POLICY 0x63a (c) Pike R. Alpha Modify By N.Mano
Disabled   Boolean <-> No
Find       Data<-> 3A060000 DC330600 00000000 00000000 1F 
MatchOS    String <->10.12.x,10.13.x,10.14.x,10.15.x
Replace    Data<-> 3A060000 00000000 00000000 00000000 1F 



#9 Disable panic kext logging on 10.15.5+ Release kernel

Comment    String  <->Disable panic kext logging on   @PMheart/Pike R. Alpha
Disabled   Boolean <-> No
Find       Data<->  8A0284C0 7447
MatchOS    String <->10.14.x,10.15.x
Replace    Data<->  8A0284C0 EB47

 

  • Like 1
Link to comment
Share on other sites

×
×
  • Create New...