Jump to content

Haswell E Powermanagement yet another option


Brumbaer
 Share

109 posts in this topic

Recommended Posts

generate c3,c6 and PMDrvr.kext solve pstates, only with patches dont have many pstates

MaLd0n 2017-04-27 às 11.29.10.png


I did, but it ends up breaking sleep.

yes, but if u use patches + SSDT Pike + DSDT all work good, but many PStates is missin'.

its good if u need sleep ;)

Link to comment
Share on other sites

Haswell-E need patches and Pike SSDT

Nehalem, Sandy Bridge, Ivy Bridge, Haswell, Broadwell, Skylake, Kabylake, u can use Generate P and C States in Clover or PIke's SSDT, work good! (Skylake/Kabylake use speedshift instead speedstep technology)

Link to comment
Share on other sites

Thank you brumbaer!

I know, looking at other peoples scores, I could have got this speed without your kext, but all I needed to do was stick it in s/l/e and restart. Which suits me because I'm a bit ignorant about these things.

Cinebench before and after shot, Geekbench before was 20,000.

Now it's all pretty well as fast as what it was over in windows. Plus running cooler.

Plus Mac software seems to be a bit smaller and faster - my CAD software is anyway.

 

Thanks again and great work.

 

edit: It's even making my GPU work better. See second screen shot

post-1564334-0-52141000-1493507810_thumb.png

post-1564334-0-63953200-1493508392_thumb.png

Link to comment
Share on other sites

I'm getting the elusive C3 states on all cores with this kext, but wake from sleep JUST WON'T work, no matter what I try... Is it never gonna work? @Brumbaer @SammlerG @MaLd0n please help. Really need the performance of this kext, but with stability as well.

Link to comment
Share on other sites

Dear Jasper,

I'm not aware of any stability problem - that is seemingly random crashing. PMDrvr will not work with sleep on your system, which is a well defined situation.

 

So do not use PMDrvr or avoid Sleep.

 

If you need both, write your own kext or pay somebody to write one for you (not me though, I'm not interested anymore in such systems, single thread performance is more important for what I do.).

 

Alternatively switch to an overclocked Skylake which will be faster than your 5820 even in multithreading tests and is supported by macos or if temperature is the real problem, get a better processor cooler (AIO or custom water) or better air conditioning for your room.

 

There are a lot of kind and helpful people on insanelymac, they will help if and when they can, but understand that nobody is under any obligation to invest his time and his money to solve your problem.

  • Like 1
Link to comment
Share on other sites

Dear Jasper,

I'm not aware of any stability problem - that is seemingly random crashing. PMDrvr will not work with sleep on your system, which is a well defined situation.

 

So do not use PMDrvr or avoid Sleep.

 

If you need both, write your own kext or pay somebody to write one for you (not me though, I'm not interested anymore in such systems, single thread performance is more important for what I do.).

 

Alternatively switch to an overclocked Skylake which will be faster than your 5820 even in multithreading tests and is supported by macos or if temperature is the real problem, get a better processor cooler (AIO or custom water) or better air conditioning for your room.

 

There are a lot of kind and helpful people on insanelymac, they will help if and when they can, but understand that nobody is under any obligation to invest his time and his money to solve your problem.

 

Hi Brumbaer,

 

Thanks for your reply. At the outset, apologies for using the word 'stability' in the wrong context. The kext does not create any instability at all. What I wrongly referred to as instability is the wake-from-sleep issue, which I now know (after reading your post) is a known situation.

 

I now understand my mistake as trying to use this kext as a "power management" driver, where (correct me if I'm wrong) it is more of a "performance" driver. I did manage to implement XCPM for power management, which also allows for sleep and wake consistently, just that I was a little greedy for the performance of this kext and  was not able to understand that I could only have one or the other.

 

My primary work is photography and web development/design, for which my processor is quite adequate. I was more after tweaking things to get optimal performance out of the rig, rather than tuning it only for high output. Cooling is also not an issue, since I use a basic liquid cooler on the processor, plus air conditioning.

 

I'm sorry if I ticked you or anyone else off. My intention was not to do that. I was relying more on your kindness and intimate knowledge of this subject, not expecting someone to write a kext for me from scratch, for free.

 

One question please. Is the 5820 not supported by MacOS?

 

Thanks

  • Like 1
Link to comment
Share on other sites

Dear Jasper,

I'm not aware of any stability problem - that is seemingly random crashing. PMDrvr will not work with sleep on your system, which is a well defined situation.

 

So do not use PMDrvr or avoid Sleep.

 

If you need both, write your own kext or pay somebody to write one for you (not me though, I'm not interested anymore in such systems, single thread performance is more important for what I do.).

 

Alternatively switch to an overclocked Skylake which will be faster than your 5820 even in multithreading tests and is supported by macos or if temperature is the real problem, get a better processor cooler (AIO or custom water) or better air conditioning for your room.

 

There are a lot of kind and helpful people on insanelymac, they will help if and when they can, but understand that nobody is under any obligation to invest his time and his money to solve your problem.

 

Hi Brumbear,

 

I personally do not need sleep/wake functionality on my system, but many other do (at least if I follow the feedback to my own guide in the other forum). I am indeed a fan of PMDrvr.kext and consider PMDrvr.kext as an important step in the right direction, which works simply in a awesome manner! However, unfortunately many other people might not use your kext just because of its apparent sleep/wake incompatibility. Therefore I think in order to promote and support your kext, its sleep/wake compatibility might be unfortunately somehow essential. It is definitely not only the personal problem of Jasper Levy in which you would have to invest your time (and money?). It might be the problem of everybody seeking for sleep/wake compatibility on his/her system. Therefore in my personal opinion, sleep/wake compatibility of PMDrvr.kext should be also of your personal interest. However, it is certainly your decision and nobody can force you to do it, if possible at all. 

 

In any case, many thanks for providing this awesome kext to the community!

 

Cheers and all the best,

 

KGP

  • Like 1
Link to comment
Share on other sites

Using these patches (thanks Pike and SammlerG):

			<dict>
				<key>Comment</key>
				<string>xcpm_bootstrap Sierra</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				g8PEg/si
				</data>
				<key>Replace</key>
				<data>
				g8PBg/si
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>SammlerG Sierra xcpm MSR Patch 3 / xcpm support Pike R. Alpha</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				OgYAANwzAAAAAAAAAAAAAB8AAAAAAAAAAAAAAAAAAAAA
				AAAAAAAAAAAAAAAAAAAA
				</data>
				<key>Replace</key>
				<data>
				OgYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
				AAAAAAAAAAAAAAAAAAAA
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>SammlerG Sierra xcpm MSR Patch 1 / xcpm support Pike R. Alpha</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				qgEAANwzAAAAAAAAAAAAAAAAAAAAAAAAAQ==
				</data>
				<key>Replace</key>
				<data>
				qgEAANwzAAAAAAAAAAAAAAAAAAAAAAAAAA==
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>SammlerG Sierra xcpm MSR Patch 5 / xcpm support Pike R. Alpha</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				4gAAAEwAAAAAAAAAAAAAAA8EAAAAAAAABQAAHg==
				</data>
				<key>Replace</key>
				<data>
				4gAAAEwAAAAAAAAAAAAAAA8EAAAAAAAABQAAfg==
				</data>
			</dict>
			<dict>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				idjB4Ai5mQE=
				</data>
				<key>Replace</key>
				<data>
				uAAvAAC5mQE=
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>_cpuid_set_info Sierra</string>
				<key>Disabled</key>
				<true/>
				<key>Find</key>
				<data>
				D7bEg8Dpg/hH
				</data>
				<key>Replace</key>
				<data>
				D7bEg8Dmg/hH
				</data>
			</dict>
			<dict>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				QgYAANwzAAAAAAAAAAAAAB8AAAAAAAAAGAAAAAAAAAAA
				AAAAAAAAAAAAAAAAAAAA
				</data>
				<key>Replace</key>
				<data>
				QgYAAAAAAAAAAAAAAAAAAB8AAAAAAAAAGAAAAAAAAAAA
				AAAAAAAAAAAAAAAAAAAA
				</data>
			</dict>

and PMDrvr.kext sleep works fine and no difference on benchies before or after wake from sleep. The up side is lower P-states on idle. I'll post some screenshots shortly but was hoping to eliminate some of these kernel patches. 

 

If I blow out the patches sleep doesn't work...

 

@AsusFreak mind sharing your config.plist and EFI/Clover folder so that I can implement the same settings as yours? I would really like to make my setup work with this amazing kext. Thanks.

Link to comment
Share on other sites

@AsusFreak mind sharing your config.plist and EFI/Clover folder so that I can implement the same settings as yours? I would really like to make my setup work with this amazing kext. Thanks.

 

These are exactly the settings I also use for my build and guide, apart from the major difference that I disable xcpm_bootstrap which breaks XCPM in my case and @AsusFreak seems to disable cpuid_set_info, which however seems absolutely required for XCPM in order to inject the vector frequencies. In any case, despite the SammlerG patches implemented by @AsusFreak, sleep/wake remains unstable in my case, as long I implement PMDrvr.kext in my system setup. Thus it remains unclear to me how @AsusFreak is able to obtain a stable sleep/wake configuration by means of the SammlerG patches in combination with PMDrvr.kext. However, our hardware might be different. I use a ASUS X99-A II mobo and a i7-6950X Broadwell-E CPU, which makes also a tiny difference in the xcpm_bootstrap and cpuid_set_info KernelToPatch entries, which I however consider in any case. PMDrvr-kext and XCPM perfectly harmonize in my case, except for some random reboot and freeze issues on wake, when implementing PMDrvr-kext.

  • Like 1
Link to comment
Share on other sites

These are exactly the settings I also use for my build and guide, apart from the major difference that I disable xcpm_bootstrap which breaks XCPM in my case and @AsusFreak seems to disable cpuid_set_info, which however seems absolutely required for XCPM in order to inject the vector frequencies. In any case, despite the SammlerG patches implemented by @AsusFreak, sleep/wake remains unstable in my case, as long I implement PMDrvr.kext in my system setup. Thus it remains unclear to me how @AsusFreak is able to obtain a stable sleep/wake configuration by means of the SammlerG patches in combination with PMDrvr.kext. However, our hardware might be different. I use a ASUS X99-A II mobo and a i7-6850X Broadwell-E CPU, which makes also a tiny difference in the xcpm_bootstrap and cpuid_set_info KernelToPatch entries, which I consider in any case. PMDrvr-kext and XCPM perfectly harmonize in my case except the mentioned issues during sleep and on wake.

Same here! Great harmony between XCPM and PMDrvr except for sleep and wake...

 

Sent from my ONE A2003 using Tapatalk

Link to comment
Share on other sites

  • 1 month later...

The PMDrvr and XCPM was great on Sierra, but High Sierra is just sitting on full noise - 4.6GHz (overclocked 5960).

Is there a way I can test what's going on?

PMDrvr is loaded in HS.

 

 

edit: cpu-s shows 1 speedstep.

 

post-1564334-0-59392600-1498362637_thumb.png

 

edit: ignore this, I've gone over to the X299...

Link to comment
Share on other sites

  • 1 month later...

 

If it would be natively supported, P and C-State management would work correctly without any ado.

 

 

 

Hi Brumbaer,

This p state thing is really bugging me on the i9 7900x.

I have no speedsteps and it's running super hot at full noise.

How can I help you to get the PMDrvr kext working with this CPU and on High Sierra?

Big ask I know... But it's the way of the future :)

post-1564334-0-17453400-1502085803_thumb.png

Link to comment
Share on other sites

Hi Brumbaer,

This p state thing is really bugging me on the i9 7900x.

I have no speedsteps and it's running super hot at full noise.

How can I help you to get the PMDrvr kext working with this CPU and on High Sierra?

Big ask I know... But it's the way of the future :)

attachicon.gifScreenshot 2017-08-07 18.15.07.png

 

 

The PMDrvr and XCPM was great on Sierra, but High Sierra is just sitting on full noise - 4.6GHz (overclocked 5960).

Is there a way I can test what's going on?

PMDrvr is loaded in HS.

 

 

edit: cpu-s shows 1 speedstep.

 

attachicon.gifScreenshot 2017-06-25 16.01.52.png

 

@surfinchina, PMDrvr.kext is properly working on 10.13 High Sierra for both Broadwell-E/EP and Haswell-E !!! See IPG graphics below! Just properly configure and test your XCPM settings before!

 

@Brumbaer, would it be possible to provide a Skylake-X version of PMDrvr.kext, beside the already perfectly working Broadwell-E and Haswell-E distributions? 

 

Thanks in advance, man! That would be absolutely gorgeous!

 

Cheers, KGP

post-1362934-0-73178100-1502087229_thumb.png

Link to comment
Share on other sites

@surfinchina, PMDrvr.kext is properly working on 10.13 High Sierra for both Broadwell-E/EP and Haswell-E !!! See IPG graphics below! Just properly configure and test your XCPM settings before!

 

@Brumbaer, would it be possible to provide a Skylake-X version of PMDrvr.kext, beside the already perfectly working Broadwell-E and Haswell-E distributions? 

 

Thanks in advance, man! That would be absolutely gorgeous!

 

Cheers, KGP

The i9 7900x is Skylake-X - X299 platform. :)

Link to comment
Share on other sites

The i9 7900x is Skylake-X - X299 platform. :)

 

That's why I asked @Brumbaer whether it is possible to provide a PMDrvr.kext compatible with Skylake-X!!  :rofl: (logically X299) !!!

 

Your previous post above (see post 67) however apparently relates to the i7-5960X (see your attached figure!), which is Haswell-E and perfectly works with PMDrvr.kext, EIST and XCPM under 10.13 High Sierra PB3/DP4!!!!  :wink_anim:

 

Cheers,

 

KGP

Link to comment
Share on other sites

That's why I asked @Brumbaer whether it is possible to provide a PMDrvr.kext compatible with Skylake-X!!  :rofl: (logically X299) !!!

 

Your previous post above (see post 67) however apparently relates to the i7-5960X (see your attached figure!), which is Haswell-E and perfectly works with PMDrvr.kext, EIST and XCPM under 10.13 High Sierra PB3/DP4!!!!  :wink_anim:

 

Cheers,

 

KGP

Yes indeed! I got rid of that. Still have a xeon 12 core that works fine with the PMDrvr kext. Which once I get this rig stable and nice I'll sell to pay for the X299 :D

Link to comment
Share on other sites

I sold my X99 and never owned a X299, so I_m not able to tests anything.

Anyway I attached a PMDrvr version that should activate with any CPU out there, so it might work with X299s  or not.

Best to test it in an EFI on a stick first, so you will not render your "main" EFI useless.

 

 

 

PMDrvr.kext.zip

  • Like 1
Link to comment
Share on other sites

I think I was the first to download the new PMDrvr kext above.

 

Restarted the computer with it in my Clover\kexts\Other folder but I don't think it is activating (at least on my machine, with the offending i7 5820K). Geekbench scores are the same with/without, and the processor neither flat-lines at the turbo limit, nor at the lowest speed limit (as the old one did). Sleep/wake is working fine.

Link to comment
Share on other sites

Ouuups.

Yes it should.

Where did you install it EFI/EFI/kexts/Other ?

 

When you do a kextstat in Terminal will you see PMDrvr ?

 

I just did a kextstat in Terminal. PMDrvr does not show up.

 

EDIT: I placed the kext in my EFI/EFI/CLOVER/kexts/Other folder

Link to comment
Share on other sites

 Share

×
×
  • Create New...