Launching Apps on Specific (e)GPUs on macOS
Clear all

Launching Apps on Specific (e)GPUs on macOS  


Famed Member Moderator
Joined: 5 years ago
Builds: 13

At this point, it is common knowledge that macOS has a Prefer External GPU option for apps to request macOS to use the eGPU when running apps. Based on this, I had written a script to be able to set this property automatically (at this point it's a horrid hack) called set-eGPU. However, as some users may have noticed (it's also mentioned in Apple's eGPU support document), the "preference" is not necessarily concrete, i.e; apps can choose to ignore this setting. Recently I've noticed that a few of my work apps launch on the iGPU (and thus cause fans to ramp up -> noise) so I started looking. I came across an interesting way to force apps to use eGPUs. Steps follow. You need the Terminal app for this.

Step 1: Get your eGPU ID

[Please login to see this]

In my case, the eGPU ID is 0x9a46.

Step 2: Launching Apps

To launch an application via it's path on disk:

[Please login to see this]

Bonus: Relaunch Processes

You can also "relaunch" processes. First, figure out the PID of the process you want to relaunch via Activity Monitor. Then you can plug it into the following command:

[Please login to see this]

This relaunches the process on the eGPU. Note however that some apps may actively choose to launch sub-processes onto specific GPUs (for example VTDecoder). I don't think much could be done about that but perhaps someone else may find this as a good starting point to look into that. Obviously the caveat here is that we are "relaunching" - so a process must already be running to use the above relaunch command.

Users can take this further by automating app launches via Automator shortcuts that could run the commands for them, and whatnot. Just thought I'd share this little nugget with everyone.

"Desultory reading is delightful, but to be beneficial, our reading must be carefully directed." — Seneca

Author: kryptonitepurge-wranglertbt-flashpurge-nvdaset-eGPU
Insights Into macOS Video Editing Performance
Launching Apps on Specific (e)GPUs on macOS
Definitive macOS Thunderbolt eGFX Compatibility Registry

Master Threads:
2014 15-inch MacBook Pro 750M
2018 15-inch MacBook Pro

2019 13" MacBook Pro [8th,4C,U] + RX Vega 64 @ 32Gbps-TB3 (Mantiz Venus) + macOS 10.14.6 & Win10 [build link]  

Topic Tags
Иван Еф
Active Member
Joined: 2 weeks ago

@mac_editor, yes, I noticed latest Final Cut versions using eGPU only for render instead of earlier versions, so It’s app specific.


To do: Create my signature with system and expected eGPU configuration information to give context to my posts. I have no builds.