Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save artkirienko/d9188e507893f3f2bc0598a9b9f51b8b to your computer and use it in GitHub Desktop.
Save artkirienko/d9188e507893f3f2bc0598a9b9f51b8b to your computer and use it in GitHub Desktop.

Improving heat management after macbookpro 2011 discrete GPU fix, also a script to automate part of the fix process

Taken from StackExchange

Thanks to LangLangC

Improved thermal and power management

Open Terminal.app

Create login hook folder for thermal and power management

sudo mkdir -p /Library/LoginHook

Create login hook file

sudo nano /Library/LoginHook/LoadX3000.sh

Add folowing contents when nano opens

#!/bin/bash
kextload  /System/Library/Extensions-off/AMDRadeonX3000.kext
pmset -a force gpuswitch 0    # undocumented/experimental
exit 0

Use ctrl + o to save and ctrl + x exit

Make it executable

sudo chmod a+x /Library/LoginHook/LoadX3000.sh

Register login hook

sudo defaults write com.apple.loginwindow LoginHook /Library/LoginHook/LoadX3000.sh

Reboot normally

Check that proper kexts exist

kextstat | grep AMD

The command above should display

... com.apple.kext.AMDLegacySupport (1.5.1) ...
... com.apple.kext.AMD6000Controller (1.5.1) ...
... com.apple.kext.AMDSupport (1.5.1) ...
... com.apple.kext.AMDLegacyFramebuffer (1.5.1) ...

And this
... com.apple.AMDRadeonX3000 (1.5.1)  ...

should also appear on the list

Reboot normally

Boot into single user recovery by pressing on boot

Command + r + s

Modify NVRAM

nvram boot-args="-v agc=0"

Reboot

reboot

Script ot make part of the process automatic

Open terminal

Create script

sudo nano /force-iGPU-boot.sh

Add contents

#/bin/sh
sudo nvram boot-args="-v"
sudo nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00
exit 0

Make exectuable

sudo chmod a+x /force-iGPU-boot.sh

When booting into single user mode (Cmd + r or CMD + r + s) use

sh /force-iGPU-boot.sh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment