6

As I understand it should, but I can't find any explicit statement. This is important for me because I'm trying to understand which MacBook should I use - with external GPU or not. Still I can assume that the answer to the question is yes because Apple sells 15-inch with external GPU while 13-inch without it.

UPDATE: In discussion bellow I found that my original question was wrong (also the wrong term was used - external, I meant discrete). I believed that OS resolution is an absolute setting for all applications. Now I assume that some functions work with native resolution, so it's obvious why they work slower on higher resolution.

Example of scaling to native resolution: https://developer.mozilla.org/en-US/docs/Web/API/Window/devicePixelRatio

3
  • I think you are using the word External when you actually mean Discrete? See my answer below for definitions. Apple don't sell a laptop with an External GPU, but they do sell one with a Discrete GPU. Apr 26, 2018 at 20:42
  • Sure, just a wrong term. Apr 26, 2018 at 20:44
  • No worries, it's important to get it right because an external GPU is something very different to a discrete one. Good luck in your decision. Apr 26, 2018 at 20:46

2 Answers 2

1

Retina is just a marketing word for a high resolution monitor. The trick is then that instead of just allowing the user to use a lower resolution than the display is physically capable of, macOS lies to the application about its size so it thinks that it is e.g 800x600. All the system calls that then actually draw stuff like text and graphics then knows about the lie and can utilize the full resolution of the monitor.

All this require GPU support (and was introduced a long way back) to work well so that is not the criteria.

The external GPU is useful however if you for any reason need more strength than the internal GPU can provide. Games and intense visualization rendering are obvious choices. As they consume more power they usually are only enabled when actually needed falling back on the internal GPU for normal chores.

Unless you know already that you will run these kind of programs the internal GPU will do fine.

3
  • Let me clarify my question. I understand the concept of HiDPI. It's all about pixel density and providing some kind of abstract display for applications. I also understand why GPU is used for. My question is about it's usage for supporting physical resolution of the display. As I understand, making 4k image (data array) from 1080p image can be accelerated by means of GPU. Am I right? This is my question. And I would like to see some references. Apr 23, 2018 at 15:29
  • One thing is creating the image to see, another feeding the display with the 4K bit stream. For digital devices (DVI/HDMI) this is typically a limitation of the cable connection and less of the GPU used. This is also why a Mac can drive a larger display over displayport/thunderbolt than HDMI. Apr 24, 2018 at 12:04
  • Okay, but why are you talking about connection? How does it relate to the question? It's about computation, not about throughput. Apr 24, 2018 at 13:05
1
+50

You're asking about HiDPI/Retina but that's irrelevant: all macOS screen output goes via the GPU.

It makes no difference if that GPU is:

  • integrated (on the logic board)
  • discrete (an additional card plugged into the logic board)
  • external (additional hardware plugged in via Thunderbolt cable)

So the answer to your question is Yes.

Instead, you might want to ask: what are your needs from the GPU?

If you want to run macOS at 4K@60Hz then you'll need the integrated GPU in a rMBP from 2014 (15") or 2015 (13") or newer.

If you need 5K, then you're looking at the integrated GPU in a rMBP from 2016 onwards.

If there's no rMBP with a GPU that fits your needs, then you can look at a rMBP that will work with an external GPU (eGPU) over Thunderbolt.

Some 15" rMBP have two GPUs — one integrated and one discrete — that can be switched between via software automatically or on demand.

Ref: https://support.apple.com/en-gb/HT206587

macOS does the scaling from display settings to monitor native resolution using the GPU, rather than the monitor doing the scaling using its hardware.

I know this because I use a 10+ year old Apple Cinema HD Display that does not have any scaling technology inside yet I can still choose one of a number of resolutions that are different to its native resolution.

Ref: https://discussions.apple.com/thread/1444180?answerId=6900979022#6900979022

12
  • Look, you got me wrong. Let's say that OS resolution is set to 1080p, so some program renders it's output for 1080p using any available resources (including GPU, integrated or not). But let's also say that the actual display resolution is 4K, so OS somehow scales 1080p to 4K. My question is - does it use GPU for this task or not? Apr 26, 2018 at 20:53
  • Oh, that's a different question. But no worries the answer is still yes. macOS does the scaling from display settings to monitor native resolution using the GPU, rather than the monitor doing the scaling using its hardware. I know this because I use a 10+ year old Apple Cinema HD Display that does not have any scaling technology inside yet I can still choose one of a number of resolutions that are different to its native resolution. discussions.apple.com/thread/… Apr 26, 2018 at 21:07
  • Yes, I understand that the scaling is not made by the display. But how can I be sure that the GPU resources are utilized? Maybe there is some way to diagnose GPU usage while scaling? Or maybe there is a clear technical statement about this procedure? Apr 26, 2018 at 21:22
  • I use iStat Menus to track my GPU in terms of: frames per second, clock speed, memory usage, processor usage. It shows current and historical information. bjango.com/mac/istatmenus Apr 26, 2018 at 22:48
  • and for Intel GPU there's Intel Power Gadget. software.intel.com/en-us/articles/intel-power-gadget-20 But simple scaling isn't really going to tax the GPU much at all. Full 3D scenes, WebGL, shaders and games will tax it. Apr 26, 2018 at 23:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .