我们知道,NVIDIA 的显卡在 macOS 中可以使用的主要有三代,分别是 Kepler,Maxwell 以及 Pascal。Kelper 对应大部分 GTX6x0 和 GTX7x0;Maxwell 对应大部分 GTX9x0;Pascal 对应大部分 GTX10x0。而其中只有 Kepler 由于苹果官方机型使用过,因此可以一路免驱使用到 macOS 11.x Big Sur;Maxwell 和 Pascal 仅能通过安装 NVIDIA 官方 Webdriver 的形式支持到 macOS 10.13.6 Hight Sierra。
现在以上情况发生了一些改变。由 Dortania 开发的 OpenCore Legacy Patcher 提供了一个基于 Webdriver 修改的驱动,可以使 Maxwell 及 Pascal 安装目前最新 macOS Monterey。
其实这个补丁和驱动方法出来有一段时间了,由于手里没有符合条件的 NVIDIA 显卡无法亲测,就一直没有动手写。方法比较简单,没有多复杂的步骤,本文就简单讲解一下。
「注意」此方法不支持更新的 NVIDIA 独显,例如 Turing(GTX16x0 和 RTX20x0)、Ampere(RTX30x0)和即将到来的 Hopper/Ada Lovelace(RTX40x0)。
优缺点
- 优点
- 在 BigSur 和 Monterey 中可以驱动 GTX9x0 ~ GTX10x0,
最新的 Ventura 暂不支持自 0.5.0 版本开始对 Ventura 提供支持; - 由于 Kelper 存在过苹果官方驱动,因此有单独的补丁,
目前可以正常驱动到 12.4,最新稳定版 12.5 存在一定问题,暂需等待,自 OpenCore Legacy Patcher 0.4.10 版本起已解决 12.5 登陆后无限转圈问题;
- 在 BigSur 和 Monterey 中可以驱动 GTX9x0 ~ GTX10x0,
- 缺点
- 驱动后的 GTX9x0 ~ GTX10x0 暂不支持 Metal,强制使用 OpenCL 模式;
- 需长期部分关闭 SIP(系统完整性保护),不过这是很大部分黑苹果用户的日常;
Metal(字面翻译是“金属”)是苹果公司的自家专属的图形接口,这个东西定位类似 Windows 平台的 DirectX,用于弥补 macOS 平台长期只有 OpenCL 的不足,同时进一步加强了苹果公司对 macOS 生态的掌控。自 macOS Mojave 10.14 起,Metal 被正式引入作为主要的图形 API。从 10.14 到如今 13.0 正式版,期间经过了 10.15、11.0、12.0 三个大版本,目前已经有非常多的软件和应用使用了 Metal,因此不支持 Metal 会带来一定的运行使用上的问题,例如闪退,无法运行或功能不正常等。
好消息是,有一个 Non-Metal 团队正在开发 Non-Metal-Framework(字面是“无 Metal 框架”),解决各种不支持 Metal 带来的问题。相信随着时间流逝,错误和不支持的情况会被逐步解决。
驱动方法和步骤
首先你需要自行安装好 macOS Catalina 或 Big Sur 或 Monterey,选择你想要的系统版本就行,「注意」Kelper 独显目前在 12.5 驱动有问题,建议 Kepler 暂时使用 12.4,自 OpenCore Legacy Patcher 0.4.10 版本起已解决 12.5 登陆后无限转圈问题;
第二步,修改 OpenCore 配置文件,添加如下启动参数,如何添加可参考「启动参数说明」:
- amfi_get_out_of_my_way=0x1
- ngfxcompat=1
- ngfxgl=1
- nvda_drv_vrl=1
然后修改启动参数下面的 csr-active-config 值,这是用于注入 CSR 信息达到部分或全部关闭 SIP:
030A0000(安装这个驱动最低要求)- 自 0.5.0 版本开始,最低要求提高到 0x803,即 03080000
- FF0F0000(完全关闭)
做完上面的修改后,需要重新启动。
第三步,下载安装好 OpenCore Legacy Patcher 并运行,界面很简单,选择「Post Install Root Patch」,软件会自动检测你的硬件,决定需要安装什么补丁。下一步选择「Start Root Patching」,软件会提示需要重启,并要求输入你的「开机密码」,最后完成后重启即可。
最终效果
参考资料: