MacOS外接显卡折腾记录

目录

  1. 1. eGPU外接显卡
  2. 2. Thunderbolt3/4
  3. 3. 显卡与MacOS的兼容性
  4. 4. 显卡坞与MacOS的兼容性
  5. 5. TestBench
    1. 5.1. Geekbench-OpenCL
    2. 5.2. Geekbench - Metal
  6. 6. BootCamp启动转换

偶然看见外接GPU这种玩法, 我的MacBook也有雷电三接口, 最近正好觉得写VsCode有些小小卡顿, 也不想大费周折换个新电脑, 只想继续使用这个MacBook (强行找需求:0 ), 所以想搞一个外接显卡来玩玩.

我的硬件设备列表:

  • Macbook Pro 2018 13 inch
  • macOS Monterey 12.01
  • Razer Core V1 (RC21-0094)
  • AMD Raedon RX5700

其中的Razer Core 不同于现在正在售的Razer Core X, 它是相当早版本的一个外接显卡, 而外接显卡由于售价原因一直停留小众, 所以在网络上能找到关于它的内容是比较少的, 这也导致了我之后差点踩坑.

eGPU外接显卡

外接显卡最吸引我的一个点就是它能让本来性能很弱但很具有便携性的设备拥有同等台式机的性能, 在保持灵活性优势的同时弥补设备的性能短板.

雷电三外接显卡是一种外置式图形处理器eGPU由Intel和苹果公司联合开发它可以通过Thunderbolt 3接口与苹果电脑或其他兼容设备连接为其提供额外的图形处理能力用户可以将雷电三外接显卡与笔记本电脑超极本或台式电脑等设备配合使用以提高计算机在图形处理方面的性能表现

雷电三外接显卡通常配备独立显卡例如Nvidia或AMD的高性能显卡可以提供比集成显卡更出色的图形性能能够满足一些对图形处理要求较高的应用需求如视频编辑3D建模游戏等

雷电三外接显卡具有插即用的优点不需要安装驱动程序可以实现即插即用同时它的便携性也使得用户可以轻松将其带到不同的地方使用

但由于显卡坞昂贵的售价(主流显卡坞一般在500美元左右), 而且虽然显卡坞可以提供便携式设备的图形升级路径但这并不是一项完美的解决方案显卡坞本身通常是笨重的而且用户需要安装和拆卸显卡这可能不是一项方便的过程 这些原因这种玩法始终属于小众, 但现在支持雷电3/雷电4/USB4的设备越来越多, 若显卡坞之后能够慢慢降价, 这个玩法可能会慢慢流行.

雷电3协议是由英特尔和苹果共同开发的一种高速传输协议主要用于连接外部设备例如外接显卡外置硬盘网络适配器等它基于PCI Express 3.0和Thunderbolt技术具有带宽高速度快延迟低等优点

雷电3协议的最大带宽可达到40Gbps远高于USB 3.1的带宽这意味着可以通过雷电3接口实现快速数据传输和高速图形处理此外雷电3接口还支持Daisy Chain串联功能使得多个外设可以通过单个Thunderbolt 3端口连接到电脑上大大减少了接线混乱的问题

Thunderbolt3/4

雷电3协议是由英特尔和苹果共同开发的一种高速传输协议主要用于连接外部设备例如外接显卡外置硬盘网络适配器等它基于PCI Express 3.0和Thunderbolt技术具有带宽高速度快延迟低等优点

雷电3协议的最大带宽可达到40Gbps远高于USB 3.1的带宽这意味着可以通过雷电3接口实现快速数据传输和高速图形处理此外雷电3接口还支持Daisy Chain串联功能使得多个外设可以通过单个Thunderbolt 3端口连接到电脑上大大减少了接线混乱的问题

值得注意的是, 在雷电3协议的初期, 虽然很多笔记本电脑都具有雷电3接口, 通过USB-C接口实现Thunderbolt 3速度和功能的接口类型它之所以被称为半血雷电3是因为它仅支持Thunderbolt 3的一部分功能而不是完全支持Thunderbolt 3的全部功能, 但Intel10代之后的cpu支持了雷电接口直连CPU, 所以Intel10代之后的设备不会再有半血雷电3接口. 对于MacBook来说, 从2016年的MacBookPro开始, 苹果就支持完整的雷电3接口, 所以外接显卡理论上不会在我的MacBook上表现出太大的性能损失.

现在新型的设备都开始支持Thunderbolt4协议, Thunderbolt 4的最大速度为40Gbps与Thunderbolt 3相同, 但是它支持带宽的动态分配, Thunderbolt4(一般是Intel的CPU)和USB4(一般是AMD的CPU)都是支持向下兼容雷电3的.

显卡与MacOS的兼容性

早在10系列的时候, 苹果就和英伟达闹掰了, 所以现在MacOS几乎是不可能支持较新的N卡了, 可以直接放弃考虑(除非只用BootCamp运行Windows系统使用, 而这显然不符合我的目的), 所以可以直接考虑AMD显卡, 以下是苹果对AMD各个系列的支持性, 也可以在苹果官网查到.

**AMD Radeon RX 68006800 XT 和 6900 XT **

如果你安装了 macOS Big Sur 11.4 或更高版本则可以使用以下基于 AMD Navi RDNA2 架构的图形卡推荐使用的图形卡包括 AMD Radeon RX 6800AMD Radeon RX 6800 XT 和 AMD Radeon RX 6900 XT7

AMD Radeon RX 6600 XT

如果你安装了 macOS Monterey 12.1 或更高版本则支持使用其他 AMD RDNA2 产品推荐使用的图形卡包括 Sapphire Nitro Radeon RX 6600 XT

**AMD Radeon RX 57005700 XT 和 5700 XT 50 周年纪念版 **

如果你安装了 macOS Catalina 10.15.1 或更高版本则可以使用以下基于 AMD Navi RDNA 架构的图形卡推荐使用的图形卡包括 AMD Radeon RX 5700AMD Radeon RX 5700 XT 和 AMD Radeon RX 5700 XT 50 周年纪念版

**AMD Radeon RX Vega 64Vega Frontier Edition Air 和 Radeon Pro WX 9100 **

这些图形卡基于 AMD Vega 64 架构推荐使用的图形卡包括 Sapphire Vega 64AMD Frontier Edition air-cooled 和 AMD Radeon Pro WX 9100

AMD Radeon RX Vega 56

这些图形卡基于 AMD Vega 56 架构推荐使用的图形卡包括 Sapphire Vega 56

AMD Radeon RX 470RX 480RX 570RX 580 和 Radeon Pro WX 7100

这些图形卡基于 AMD Polaris 架构推荐的图形卡包括 Sapphire Pulse 系列和 AMD WX 系列

显卡坞与MacOS的兼容性

现在主流的显卡坞应该是几乎所有笔记本包括Mac在内都支持的了, 但令我意想不到的是, 由于Razer Core 是在2016年TB3刚提出的时候生产的型号, 尚未成熟, 所以适配性较差, 由于它使用了Mac不支持的USB控制器, 导致MacOS无法识别外置显卡坞.

可以参考这个项目来解决兼容性问题:
rgov/Thunderbolt3Unblocker: Enable unsupported Thunderbolt 3 peripherals on macOS (github.com)

需要用到的文件: Thunderbolt3Unblocker

简单介绍和具体步骤如下:

该项目提供了一个内核扩展可以解锁macOS上不受支持的Thunderbolt 3外围设备例如Razer Core

这实现了与KhaosT的TB3启用器相同的目标后者通过在磁盘上修补IOThunderboltFamily来工作此内核扩展在内存中和动态中执行修补程序

请注意IOThunderboltFamily首先认为外围设备不受支持可能是有原因的使用风险自负

  • 安装之前 需要禁用系统完整性保护:
    请在启动期间重新启动并按住 ⌘R 以进入恢复模式选择实用程序→终端并输入命令csrutil enable --without kext && reboot

  • 重启后执行以下命令:

sudo sh -c 'chown -R root:wheel /Library/Extensions/Thunderbolt3Unblocker.kext && \
chmod -R g-w,o-w /Library/Extensions/Thunderbolt3Unblocker.kext && \
kextcache -i / && \
nvram -d t3u-incompatible && \
kextload -b es.govost.ryan.Thunderbolt3Unblocker'
  • 可能需要在系统偏好设置->安全性中允许扩展之后, 如果终端未输出报错, 且原本在系统信息中设备后面的unsupported字样消失, 应该就可以正常识别了
Executing: /usr/bin/kmutil install --volume-root /
kmutil rebuild done
Executing: /usr/bin/kmutil load -b es.govost.ryan.Thunderbolt3Unblocker

TestBench

Geekbench-OpenCL

Geekbench - Metal

BootCamp启动转换

  • 驱动地址 :

后记: 开机时不能识别驱动, 此方案已经弃用