I wrote a new helper (bash) script called AppleGraphicsPowerManagement.sh One that I like to share with folks who use the IGPU for their desktop setup with HD graphics, and don’t see it stepping down to the lowest possible frequency. Which in my case is 200 MHz but it never reached a lower frequency than 750 MHz (0,75 GHz). Not without first running AppleGraphicsPowerManagement.sh
Ok. Let’s start by explaining why I said “helper (bash) script“. Yes indeed. This helper script is made for folks like me who use AppleHDA8Series.sh to create AppleHDA892.kext (example for my ALC 892) and want to use the Info.plist to inject AGPM data from it. Done the easy way…
Note: I also have other plug-ins in AppleHDA892.kext/Contents/PlugIns but that will be discussed in one of my next blog articles.
Next. Here is a screenshot of the Intel Power Gadget (v3.0.1) running on my Haswell setup.
Ignore the fact that it fails to show the estimated power usage (MSR 0x611 is Zero) and the temperature (next to a heater). Just look at the IGPU frequency (GT: 0,20 GHz) which was 0,75 before I ran my script. And this is what my script injects into the Info.plist:
<key>AGPM</key> <dict> <key>CFBundleIdentifier</key> <string>com.apple.driver.AGPM</string> <key>IOClass</key> <string>AGPMController</string> <key>IONameMatch</key> <string>AGPMEnabler</string> <key>IOProviderClass</key> <string>IOPlatformPluginDevice</string> <key>Machines</key> <dict> <key>Mac-F60DEB81FF30ACF6</key> <dict> <key>IGPU</key> <dict> <key>Heuristic</key> <dict> <key>EnableOverride</key> <integer>0</integer> <key>ID</key> <integer>2</integer> </dict> <key>control-id</key> <integer>16</integer> </dict> </dict> </dict> </dict>
Please note that the Mac-F60DEB81FF30ACF6 you see here will of course be different when you are using a different board-id. No worries. This will be checked by AppleGraphicsPowerManagement.sh Currently at version 0.6 but I will change/update it when required. Oh sure. I will add it to my Github repository
, but at a later date.
Edit: Done! Now available from my Github repository.
p.s. Folks in need of different data could use this script after they modified it.
Have fun with it!