You can make a difference in the Apple Support Community!

When you sign up with your Apple Account, you can provide valuable feedback to other community members by upvoting helpful replies and User Tips.

Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

MacBook Pro 2010 15" GPU Panic - fix (potential)

Hello,


Well, after years i found a solution (so mine?). 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 (or 2 to 1). The problem in the use of nvidia is not the gpu, but the stabilization of the voltage when the gpu changes from g-state 2 to 0 (or 2 to 1), causing the known issues.


G-States go from 0 to 3, are related to the gpu use (idle/load).

This is to maximize performance and battery consumption. 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), that the problem of stabilizing the voltage not compromise the gpu work.


And the performance? Exemple: Cinebench, default (G-state 0) i've about 15fps, with g-state 2 (medium speed): 10fps.). Not bad.

Battery consumption does not change much.



If you want to try, these are the values changed in the info.plist:

(attention: only try this if you really have the problem gpu panic).



<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. Only so.



Step by step:



1 - Verify that the file is the original and this loaded (there are mods that remove these files) and if they are the original (Apple signed):


  • ACPI_SMC_PlatformPlugin.kext (IOPlatformPluginFamily.kext)
  • AppleGraphicsPowerManagement.kext


You can check this on: About System Information -> Extensions



2 - Disable SIP (boot into recovery mode, terminal: csrutil disable)

SIP is important to safety, but, we are good guys, we'll know to keep the system safe!



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 or Kext Utility.app (this is not marketing, okay?) Only to facilitate the process 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.


(make sure the AppleGraphicsPowerManagement.kext is loaded. You can check this on: About System Information -> Extensions)


Remember, the option automatic graphics switching selected always.

First:

here, in my tests is important every boot must be in automatic mode. Discrete gpu only (automatic graphics switching unselected) not working properly, and, i don't know why. Maybe smc is responsible.


Second:

after osx loading i can change to discrete cpu only or in automatic graphics switching. No problem.

without crash or failure.



(working Sierra GM also)

7 - Open Console.app, type into search: gfx0 and check if g-state changes if working!


https://dl.dropboxusercontent.com/u/35721057/console.png


AppleGraphicsPowerManagement.kext 10.11.6 (edited)

https://dl.dropboxusercontent.com/u/35721057/AppleGraphicsPowerManagement.kext.z ip



Good luck. I hope this helps you

(sorry my poor english)

Posted on Sep 17, 2016 8:03 AM

Reply
Question marked as Top-ranking reply

Posted on Jun 4, 2017 12:19 PM

Hi, I made a program to fix this issue. You can check it out here, it's free and open-source 🙂 : GitHub - julian-poidevin/MBPMid2010_GPUFix: MBPMid2010_GPUFix is an utility program that allows to fix MacBook Pro (15-i…

20 replies

MacBook Pro 2010 15" GPU Panic - fix (potential)

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.