Become a MacRumors Supporter for $25/year with no ads, private forums, and more!

MBP dedicated GPU stuck in high power state

Flyview

macrumors newbie
Original poster
Mar 20, 2018
5
0
Here comes another dedicated GPU (dGPU) issue on my Late 2013 15" MacBook Pro!

Problem:
My NVIDIA GeForce GT 750M idles hotter than other MacBook Pros with the same dGPU, using up 17W of power at idle. This heats up my CPU +10c when dGPU is enabled and just idling, due to the fact that they share a heat pipe. This is also problematic by contributing unnecessary heat when connecting an external 4k monitor. Many people have reported issue with overheating trying to run a second high resolution monitor.

Background:
It's running the latest MacOS Catalina. I repasted CPU/GPU with Grizzly Kryonaut and the CPU runs really cool now.

While stress testing the CPU, I noticed that the CPU will run 10c hotter when the dGPU is enabled.

I checked the idle temperatures and the dedicated GPU temp increases from 37c when disabled to 60c when enabled. I checked with 2 different MacBook Pros with the same dedicated GPU and they idle around 48c.

I checked the dGPU load with Activity Monitor and it's fine, almost no load.

I have a feeling the dGPU is not using its low power states. I have not found any app or utility that will show me the GPU frequency in MacOS. However, I did find that "HWMonitor" can read the "GPU Rail" power consumption. The GPU rail consumption is 0.11W with the iGPU enabled. Enabling the dGPU brings the power consumption to 16W at idle! Booting into safe mode, the dGPU is used by default and draws 3W. I was even able to boot normally with automatic graphics switching disabled (uses dGPU) and it draws the normal 3W. However, if I toggle automatic graphics switching on and back off (switches to iGPU and back to dGPU), then it becomes stuck at 16-17W again until rebooting with dGPU on.

Does the MacBookPro 11,3 on Catalina still use AppleGraphicsPowerManagement.kext to manage the power states? If not, where is it done? I noticed AppleGraphicsPowerManagement.kext doesn't even load on its own, but it does on my sister's MBP with the 750M running Mojave.

Does anyone have any suggestions about how to diagnose this further or fix it?
 
Last edited:

Mattman_57

macrumors newbie
Aug 6, 2020
1
0
I have the same machine (Late 2013 15" with NVIDIA GeForce GT 750M). Running macOS Mojave 10.14.6.

I have done several different test with three different monitors (a 24" 1080p 60hz, 27" 1440p 75hz and a 32" 1440p 75hz) Note* I am using iStats for readings.

I found that using the 24" 1080p monitor via VGA to Thunderbolt 2 will help keep temps and power draw down compared to any other combo I've done. Idle temps range from 44°-46°. (GEForce GPU FB shows around 1.3A-1.6A)
VGA to Thunderbolt 2-1080p.png

However, if I run dual monitors both using VGA to Thunderbolt temps increase and GEForce GPU Spikes to max (5.26A-5.4A)

When using HDMI to HDMI on the 24", 27" and 32" while using 1080p resolution, the temperature and power draw spikes. Idle Temps around 56°-58° (GEForce GPU FB always spikes to max 5.26A-5.4A.)
HDMI to HDMI-1080p.png

Now, when running the 27" or 32" at native 1440p (using HDMI/HDMI), the temperature power draw wasn't as much compared to running at 1080p. Idle temps 52°-54°. (GEForce GPU FB showing 2.0A-2.3A).

Interestingly enough too, if I chose to run at 1080i instead of 1080p (on any monitor), the temperature and power draw went down. Was pretty much the same as running VGA to Thunderbolt. (GEForce GPU FB showing 1.3A-1.6A).

Running a VESA Certified DisplayPort to MiniDisplayPort cable (on the 1440p monitors) results in high temps and power draw (GEForce GPU FB showed 5.26-.5.4A)

Running an HDMI to Thunderbolt 2 Cable/Adapter is basically the same temperature and power draw as HDMI to HDMI.


And if you really want to bypass the dGPU, I've tested this and it works pretty decently except Night Shift will not work on the external display and if you use an app called Lunar, it won't work either:



EDIT** Also tested a 4th Monitor. A 29" Ultrawide 2560x1080 75hz. . When running HDMI/HDMI at 60hz, GEForce GPU spikes to 5.26A-5.4A. When running it at 75hz it runs at 1.6A-1.9A.




I know this doesn't really answer your question Flyview (sorry), but I figured I'd chime in with some additional data in hopes it may help you or someone else in solving the mystery.
 
Last edited:
Comment

Flyview

macrumors newbie
Original poster
Mar 20, 2018
5
0
I have the same machine (Late 2013 15" with NVIDIA GeForce GT 750M). Running macOS Mojave 10.14.6.

I have done several different test with three different monitors (a 24" 1080p 60hz, 27" 1440p 75hz and a 32" 1440p 75hz) Note* I am using iStats for readings.

I found that using the 24" 1080p monitor via VGA to Thunderbolt 2 will help keep temps and power draw down compared to any other combo I've done. Idle temps range from 44°-46°. (GEForce GPU FB shows around 1.3A-1.6A)
View attachment 941484

However, if I run dual monitors both using VGA to Thunderbolt temps increase and GEForce GPU Spikes to max (5.26A-5.4A)

When using HDMI to HDMI on the 24", 27" and 32" while using 1080p resolution, the temperature and power draw spikes. Idle Temps around 56°-58° (GEForce GPU FB always spikes to max 5.26A-5.4A.)
View attachment 941485

Now, when running the 27" or 32" at native 1440p (using HDMI/HDMI), the temperature power draw wasn't as much compared to running at 1080p. Idle temps 52°-54°. (GEForce GPU FB showing 2.0A-2.3A).

Interestingly enough too, if I chose to run at 1080i instead of 1080p (on any monitor), the temperature and power draw went down. Was pretty much the same as running VGA to Thunderbolt. (GEForce GPU FB showing 1.3A-1.6A).

Running a VESA Certified DisplayPort to MiniDisplayPort cable (on the 1440p monitors) results in high temps and power draw (GEForce GPU FB showed 5.26-.5.4A)

Running an HDMI to Thunderbolt 2 Cable/Adapter is basically the same temperature and power draw as HDMI to HDMI.


And if you really want to bypass the dGPU, I've tested this and it works pretty decently except Night Shift will not work on the external display and if you use an app called Lunar, it won't work either:



EDIT** Also tested a 4th Monitor. A 29" Ultrawide 2560x1080 75hz. . When running HDMI/HDMI at 60hz, GEForce GPU spikes to 5.26A-5.4A. When running it at 75hz it runs at 1.6A-1.9A.




I know this doesn't really answer your question Flyview (sorry), but I figured I'd chime in with some additional data in hopes it may help you or someone else in solving the mystery.

Thanks for all of your testing! I actually discovered this problem is due to some system kernel extensions not loading. I installed Catalina fresh on an external drive and that fixed my dGPU being stuck in a higher power state.

I compared the system kernel extensions loaded on the fresh Catalina install with those loaded on the problematic install and made a list of all the kexts that did not load in the problematic Catalina install. The problem is that the system is not loading these kexts from /system/library/extensions:

IOPlatformPluginFamily.kext/contents/plugins/x86platformplugin.kext IOPlatformPluginFamily.kext/contents/plugins/ioplatformpluginlegacy.kext IOPlatformPluginFamily.kext/contents/plugins/acpi_smc_platformplugin.kext IOPlatformPluginFamily.kext/contents/plugins/x86platformshim.kext applegraphicspowermanagement.kext
appleplatformenabler.kext

In fact my issue is fixed by simply just loading x86platformplugin.kext:

sudo kextload IOPlatformPluginFamily.kext/contents/plugins/x86platformplugin.kext

However it's probably best to load all of those that are present on a clean Catalina install and not present on my problematic install.

After loading x86platformplugin.kext manually, toggling on the 750M dGPU results in it being able to use its low power state, consuming just 3W at idle compared to 17W otherwise.
 
Comment
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.