Jump to content

Enabling X86PlatformPlugin CPUfriend and CpufriendDataProvider


4 posts in this topic

Recommended Posts

This is trying to understand the use of the CPUfriend and CpufriendDataProvider kext in Sonoma or on a mac system from Monterey.

Read a lot of information about using this kext for Power Optimization. I have too many doubts that I don't quite understand.

 

I have read in the forums of this channel:

 

macOS 12 Monterey without using plugin-type=1 and the SSDT-PLUG patch

 

It is necessary to use SSDT-PLUG from Monterey according to information published in OCPL, remember, it is really the plugin-type one load.

 

However, since all Intel Macs that support There is no problem keeping the variable in your ACPI tables regardless of the operating system, as long as the hardware supports XCPM.

 

Operational Summary: If an Intel hack is intended to run macOS 12.3 and later AND Apple is assumed not to reverse its decision, SSDT-PLUG can now be bypassed. But there is no need to omit SSDT-PLUG and there is no harm in keeping it. Let me add that Alder Lake builds (and later) still require SSDT-PLUG- ALT (or SSDT-CPUR-Z690, but possibly without SSDT-PLUG).

 

That said, and given the fact that macOS 12.3 has now removed the "plugin type" check in but, of course, this choice depends solely on the user.

 

Although the CPU is detected fine with the MacPro's SMBIOS, I assume it doesn't run at low frequency as often as with the iMac19.1. For this reason, I generated a CPUFriendDataProvider.kext extension from the CPUFriendFriend command to accompany CPUFriend.kext. With these 2 kexts (CPUFriendDataProvider.kext + CPUFriend.kext) the CPU shows correct power management and the frequency drops to 800 MHz when the system is idle.

 

Any clarification about the use or need for these kext and according to the changes would be appreciated.

Link to comment
Share on other sites

Not even. It depends on the CPU generation you have.

 

MacOS has native power management up to 10th generation. This used to be attached to the CPU with the "plugin-type=1" property, whose use had been dropped from Monterey onwards. If you have a Comet Lake system (Coffee Lake: check!) or older AND you run Monterey or newer, you may even remove SSDT-PLUG (leaving it is harmless).

 

What CPUFriend and its required DataProvider provide are frequency vectors for CPUs which are NOT natively supported, mostly 11th generation and newer, or CPUs which do not match the SMBIOS you're using. This is a matter of performance (if done well), and not required for the hack to work—so these kexts are never "necessary".

Typically, if you have an Alder Lake/Raptor Lake system CPUFriend and an appropriate DataProvider will ensure that CPU ramps up and down as fits a Core CPU rather than as would fit a Xeon W-2100 (iMacPro1,1) or Xeon W-3200 (MacPro7,1). (In this case you still do need SSDT-PLUG-ALT, or alternative, to define your CPU.)

 

Link to comment
Share on other sites

 Share

×
×
  • Create New...