Apple Silicon ARM Macs and Thunderbolt 3 / USB4 eGPU
Added some details about the advancements in ARM Macs to main post.
Apple's own page on egpu support states that they only allow their own video drivers on the platform, for architectures already in their existing mac lineup. This could obviously change, but if they eliminate AMD from any future Arm macs I wouldn't hold my breath about egpu support.
If the high end iMac Pro/Mac Pro/Macbook Pro 16 continue to include AMD discrete graphics to supplement the Apple silicon igpu, then I would say the odds are good for continued egpu support. There are mixed messages in the WWDC dev presentations, everything regarding moving Metal apps to Apple silicon implies that Apple Silicon machines will have their own UMA graphics, which should be treated as "Discrete" by apps due to its "discrete class" performance. The ray tracing presentation was showing a not-exactly-real-time demo running on a Vega II Mac Pro though.
I simply do not trust Tim Cook when it comes to the Macs. Just a complete salesman. So, don't expect any progress from Apple under his command.
No mention of Bootcamp.
Apple's own silicon will be used for video capability on the new Apple Silicon Macs instead of either AMD or NVIDIA
Sure seems like bootcamp and Mac eGPU are on the way out.
In case people missed it, Apple officially confirmed support for Thunderbolt on ARM macs. Additionally, it also seems that most refreshed macs will not have dual-GPU architecture because Apple GPU will provide iGPU power savings and dGPU performance. Overall the theme of Apple Silicon (ASi) has been simplifying some key system architecture ideas we take for granted today. A single GPU eliminates the need for mux design, plus their GPUs won't have separate VRAM and instead have unified memory architecture (shared system memory). There are many such simplifications.
whoDean: ARM64 / Apple Silicon Macs won't support Boot Camp, only Windows / Linux via virtualization (like Parallels or VMware).
mac_editor: re Apple GPUs, it will be interesting to see what they do next. Not sure what motivation AMD now has to continue supporting GPUs over Apple ecosystems / partnering with Apple to optimize drivers, render tech, etc. And if they decide they're done when the last Intel Mac is made, not sure what that means for eGPU. Will Apple make their own retail models to be placed in eGPUs? Seems unlikely but I've given up trying to guess. I did like some of their Dev sessions for GPU and Metal from WWDC this year; I'm not a coder but it does look like they've been preparing for this for a long time / have their tasks in order.
We can probably assume the first ARM64 Mac (new MacBook Air later this year?) will have a GPU cores that are more or less set up like / equivalent to an iPad Pro, given roughly similar space, power, and thermal limitations. I wouldn't expect anything like a GPU on the level of current MacBookPro or iMac GPUs until late in the transition. Probably as part of ~ 27" iMac (whatever the new larger size model is). Even then not sure what happens to the Mac Pro as it requires another level to do it right. For both types they would need more space for a larger PCBA (and more space to add larger fans / passive cooling elements), more bandwidth, and more power. In theory; maybe these new cores will be way more power-efficient than I think and still competitive as a whole with larger GPUs. Will be a crazy time.
Bring peace to your computing life: stop trying to understand Apple.
@chippy-mcchipset, certainly an interesting period in computing. The WWDC sessions were quite good. In typical Apple way, it seems they have a detailed, well-thought-out plan of action, and are laser-focused. Typically this means culling support for various things though. However, the situation remains complicated due to Mac Pro (2019). Highly likely that (existing) AMD stuff will be supported for quite a while even after Apple starts creating their own standalone units as users will still be on those. As you say though, whether we will see newer AMD chips for mac is anyone's guess.
@itsage noticed something while investigating IOThunderboltFamily kext:
$ lipo -detailed_info /System/Library/Extensions/IOThunderboltFamily.kext/Contents/MacOS/IOThunderboltFamily Fat header in: /System/Library/Extensions/IOThunderboltFamily.kext/Contents/MacOS/IOThunderboltFamily fat_magic 0xcafebabe nfat_arch 2 architecture x86_64 cputype CPU_TYPE_X86_64 cpusubtype CPU_SUBTYPE_X86_64_ALL capabilities 0x0 offset 4096 size 1793008 align 2^12 (4096) architecture arm64e cputype CPU_TYPE_ARM64 cpusubtype CPU_SUBTYPE_ARM64E capabilities PTR_AUTH_VERSION KERNEL 0 offset 1802240 size 2185088 align 2^14 (16384)
We know Apple Silicon Macs will have Thunderbolt, and Apple seems to have created an ARM-specific version of the binary to execute natively. In the output above, notice how this kext has both the x86 and ARM64 architectures - this is the new universal binary format Apple will be using. Good stuff. But here's where my concerns begin:
$ lipo -detailed_info /System/Library/Extensions/AppleGraphicsControl.kext/Contents/PlugIns/AppleGPUWrangler.kext/Contents/MacOS/AppleGPUWrangler input file /System/Library/Extensions/AppleGraphicsControl.kext/Contents/PlugIns/AppleGPUWrangler.kext/Contents/MacOS/AppleGPUWrangler is not a fat file Non-fat file: /System/Library/Extensions/AppleGraphicsControl.kext/Contents/PlugIns/AppleGPUWrangler.kext/Contents/MacOS/AppleGPUWrangler is architecture: x86_64 $ lipo -detailed_info /System/Library/Extensions/AMD10000Controller.kext/Contents/MacOS/AMD10000Controller input file /System/Library/Extensions/AMD10000Controller.kext/Contents/MacOS/AMD10000Controller is not a fat file Non-fat file: /System/Library/Extensions/AMD10000Controller.kext/Contents/MacOS/AMD10000Controller is architecture: x86_64
The AMD drivers and other eGPU-related components aren't universal, just x86.
I know we will have Rosetta 2 to allow for x86 stuff to run on Apple Silicon, but there will be a performance hit. This has started to make me question eGPU support again. Maybe a future version of macOS Big Sur would have universal binaries for this, but knowing Apple, they will likely forego such efforts. I think this reinforces the Apple-GPU-only forward notion.
@mac_editor, Thank you for sharing this. I hope it's an oversight or that their dev team is focusing on in-house machines atm. Losing AMD eGPU support with the switch to Apple Silicon would be a major blow for everyone.