Hi,
Well, after years i found a solution. I have the famous MacBook Pro 6,2 with GT330m (
0x0a29 model).
I discovered that this problem happens every time that g-state change between 2 to 0.
G-States go from 0 to 3, are related to the thresholds inside AppleGraphicsPowerManagement.kext, like this:
G-state 0 (maximum speed) and G-state 3 (lowest speed).
I solved the problem by keeping it always at G-State 2 (medium speed).
And the performance? Exemple: Cinebench, default (G-state 0) i've about 15fps, with g-state 2 (medium speed): 10fps.). Not bad.
If you want to try, these are the values changed in the info.plist:
<key>MacBookPro6,2</key>
<dict>
<key>LogControl</key>
<integer>1</integer>
<key>Vendor10deDevice0a29</key>
<dict>
<key>BoostPState</key>
<array>
<integer>2</integer>
<integer>2</integer>
<integer>2</integer>
<integer>2</integer>
</array>
<key>BoostTime</key>
<array>
<integer>2</integer>
<integer>2</integer>
<integer>2</integer>
<integer>2</integer>
</array>
<key>Heuristic</key>
<dict>
<key>ID</key>
<integer>0</integer>
<key>IdleInterval</key>
<integer>10</integer>
<key>SensorOption</key>
<integer>1</integer>
<key>SensorSampleRate</key>
<integer>10000</integer>
<key>TargetCount</key>
<integer>1</integer>
<key>Threshold_High</key>
<array>
<integer>0</integer>
<integer>0</integer>
<integer>100</integer>
<integer>200</integer>
</array>
<key>Threshold_High_v</key>
<array>
<integer>0</integer>
<integer>0</integer>
<integer>98</integer>
<integer>200</integer>
</array>
<key>Threshold_Low</key>
<array>
<integer>0</integer>
<integer>0</integer>
<integer>0</integer>
<integer>200</integer>
</array>
<key>Threshold_Low_v</key>
<array>
<integer>0</integer>
<integer>0</integer>
<integer>4</integer>
<integer>200</integer>
</array>
</dict>
<key>control-id</key>
<integer>17</integer>
</dict>
Perfect values? I do not know, but it is working for me.
Now, we have five methods to apply this fix:
1º Editing kext file and install manually;
2º Using my app MBP-2010-GPU-Panic-fix to apply the kext patch or remove it;
3º Using the utility program called MBP Mid 2010 GPU Fix, that allows to fix the kext, using the parameters above described, automatically (credits [below] to
julian-poidevin);
4º Using the bash script written by user
btmm (credits below).
5º Hardware fix. Read the next posts pages to know about that. Credits to
l.a.rossmann
1º Editing kext file and install manually:
Step by step:
1 - Make sure these .kext are original (unmodified), and loaded (About this Mac -> System Report -> Software -> Extensions):
- ACPI_SMC_PlatformPlugin.kext (IOPlatformPluginFamily.kext)
- AppleGraphicsPowerManagement.kext
2 - Disable SIP (boot into recovery mode, terminal: csrutil disable)
Avaliable only in OS X El Capitan or later. Previous OS X versions, jump to next step.
3 - Open Extensions folder (System/Library/Extensions), copy AppleGraphicsPowerManagement.kext to desktop (or other folder), open the info.plist into editor (I used the PlistEdit Pro.app), and change the values like writing up.
Attention: verify if your model is 0x0a29 really.
4 - Save info.plist, quit editor.
5 - Use Kext Drop.app to instal this kext, but before, delete the AppleGraphicsPowerManagement.kext into extensions folder.
6 - (This is important step) Leave the automatic graphics switching select (System Preferences - Energy Saver), if you are using gfxCardStatus.app, same thing!.
After, reboot normally.
Remember, the option automatic graphics switching selected always.
7 - Open Console.app, type into search: gfx0 and check if g-state changes if working!
(or you can to download the kext already edited, below)
2º Using my app MBP-2010-GPU-Panic-fix to apply the kext patch or remove it:
Project:
https://github.com/fabioiop/MBP-2010-GPU-Panic-fix
Download it here:
https://github.com/fabioiop/MBP-2010-GPU-Panic-fix/releases
Run.
(System Preferences and go to “Security & Privacy” and the “General” tab and allow it to run)
(Mac OSX 10.10 or later)
3º MBP Mid 2010 GPU Fix, utility program:
The friend
julian-poidevin, created an utility program called MBPMid2010_GPUFix, that allows to fix the kext, using the parameters above described.
The link to project is here :
https://github.com/julian-poidevin/MBPMid2010_GPUFix
You can download it here :
https://github.com/julian-poidevin/MBPMid2010_GPUFix/releases/latest
1 - Disable SIP (boot into recovery mode, terminal: csrutil disable)
Avaliable only in OS X El Capitan or later. Previous OS X versions, jump to next step.
2 - Before, make sure these .kext are original (unmodified), and loaded (About this Mac -> System Report -> Software -> Extensions):
- ACPI_SMC_PlatformPlugin.kext (IOPlatformPluginFamily.kext)
- AppleGraphicsPowerManagement.kext
3 - Run fix.
4º Bash script:
The friend
btmm, wrote a bash script to edits the AppleGraphicsPowerManagement.kext using the parameters above described. Simply, run the .sh at the terminal.
The link to project is here :
https://gist.github.com/btmm/ede414c971aac71b78ff2c33f2dedbc1
1 - Disable SIP (boot into recovery mode, terminal: csrutil disable)
Avaliable only in OS X El Capitan or later. Previous OS X versions, jump to next step.
2 - Before, make sure these .kext are original (unmodified), and loaded (About this Mac -> System Report -> Software -> Extensions):
- ACPI_SMC_PlatformPlugin.kext (IOPlatformPluginFamily.kext)
- AppleGraphicsPowerManagement.kext
3 - Run bash script fix.
Good luck. I hope this helps you
(sorry my bad english)
AppleGraphicsPowerManagement.kext 10.6.8
https://www.dropbox.com/s/cm12m6bww3rkbcm/10.6.8 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.9.5 (Thanks @
user1690)
https://forums.macrumors.com/thread...ts-the-best-fix.1890097/page-10#post-24062932
https://www.dropbox.com/s/po0255ci7dax98o/10.9.5 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.10.5
https://www.dropbox.com/s/zvhluh27qcaqww6/10.10.5 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.11.6
https://www.dropbox.com/s/4er2qo84zu6lffd/AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.12
https://www.dropbox.com/s/7esidh70l31h9i3/10.12.AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.12.1
https://www.dropbox.com/s/mwu4fi84hl0h24l/10.12.1 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.12.2
https://www.dropbox.com/s/2k3kkdths8g928j/10.12.2 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.12.3
https://www.dropbox.com/s/32gub73afj4oaz2/10.12.3 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.12.4
https://www.dropbox.com/s/i50rvpbwqofpojh/10.12.4 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.12.5
https://www.dropbox.com/s/8ngc0c6d350u26a/10.12.5 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.12.6
https://www.dropbox.com/s/e9ed23z0eqyyci9/10.12.6 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.13 GM
https://www.dropbox.com/s/beoloqn8mx3elmt/10.13GM_ AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.13
https://www.dropbox.com/s/l4zcbkfizabyqn5/10.13.AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.13.2
https://www.dropbox.com/s/ay0wnnnzz1u5yzc/10.13.2 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.13.6
https://www.dropbox.com/s/qce4hfg91ok7co8/10.13.6 AppleGraphicsPowerManagement.kext.zip?dl=0
AppleGraphicsPowerManagement.kext 10.14
https://www.dropbox.com/s/555lmehxvouiieu/10.14.AppleGraphicsPowerManagement.kext.zip?dl=0
---------
Credits:
Special thanks for:
julian-poidevin for your work, really, this application was a good idea!
btmm for your bash script, a simple idea that works successfully!
We all appreciate it.