给黑苹果AMD显卡注入灵魂,大幅提升性能!

概述

最后更新:2022-3-25,12.3 导致 6000 系显卡默认性能暴跌,添加了 plist 和 ssdt 补丁,二选一使用。

我们通常说的某些型号的 AMD 显卡在黑苹果中免驱,指的是只要把这个显卡插上,搭配 WhateverGreen.kext (下称“WEG”)的情况下 macOS 就能识别出对应的型号,并提供基础性能驱动。其实这个时候,WEG 仅仅只是调用了针对某一核心架构的通用驱动,例如 RX470/RX570/RX580 核心都是 Polaris,RX5500/RX5600/RX5700XT 核心都是 Navi,WEG 分别调用了针对某一核心的通用驱动,实现了基本驱动和基本性能。

但是。这里要说但是了。

这样的驱动并不能发挥显卡最大的性能,举几个实际案例:在 Geekbench 的性能测试中,Radeon VII 的得分仅为 5-6 万分,而在 Windows 上可以轻松达到 8.2 万分以上;Radeon RX 5700XT 的 Metal 性能得分大概是 3.8 万分左右,而在解决这个问题后能轻松跑到 6.4 万分以上(macOS 10.15.4 以后能达到 7 万分以上),并且在超频后差距更大。下图是 RX 5700XT 在解决该问题前后的 Geekbench 截图对比,可以看到差距非常夸张:

这个现象随着 macOS 10.14.5 Mojave 发布时同期出现,该版本中增加了对 Radeon Vega 56/64 显卡的风扇控制修复程序。

 

问题原因

根据外网开发者调研发现,苹果公司从未真正解决 Radeon Vega 56/64 的风扇控制问题,而是采取了非常消极的应对办法。近代的 AMD GPU 采用一个称为 SMU 的固件(SMU Firmware)来管理显卡的部分功能。此 SMU 固件需要由图形驱动程序上载。Radeon Vega 56/64 的风扇控制错误(具体表现是有时风扇狂转或不转)是由苹果公司错误的 SMU 固件引起的,但是他们并没有做任何修复,而是直接禁用了在 PC 显卡上加载 SMU 固件的功能。这点可以通过在 Radeon Vega 56/64 显卡上强制加载 SMU 固件来验证,加载后风扇控制错误将再次出现。

不加载 SMU 固件会导致许多问题,其中之一是显存带宽减少了一半。由于 Geekbench 对显存带宽非常敏感,因此导致得分大幅降低。因此从本质上讲,苹果公司在一定程度上欺骗了消费者,使用了“一刀切”的方法去“修复”问题,直接导致影响了大量的 PC 显卡,这不仅仅会影响黑苹果用户,还会影响 Mac Pro 用户和使用外接显卡 eGPU 的 MacBook 用户,因为这些人都在使用 PC 显卡。

 

白苹果图形卡信息

而白苹果原装内置的 AMD 专业显卡则没有这个问题,均正常加载 SMU 固件信息:

 

解决办法

针对这个情况,可以使用由 @CMMChris 开发的第三方驱动 RadeonBoost.kext,该驱动会自动检测显卡型号,找到对应的 SMU 固件信息并注入。RadeonBoost.kext 在设计时主要考虑了黑苹果用户的需求,但同时也可以在白苹果上运行,包括 MacPro 以及配备了 eGPU 的 Mac 机型。

  • 黑苹果直接使用 Clover 或 OpenCore 等引导工具注入即可;
  • 白苹果不建议修改 System/Library/Extensions(S/L/E 目录),且 Big Sur 中后期开始也无法修改,Monterey 亦然,推荐使用 OpenCore 进行注入,具体操作方法和黑苹果基本一致。
  • 下载 RadeonBoost.kext,版本v1.6,提取码:1vxv

Kext 目前支持的显卡:

  • RX480 / RX580 / RX590(Polaris核心,需要搭配 WhateverGreen.kext )
  • Radeon VII(Vega20核心,使用之后无需再使用 WhateverGreen.kext)
  • Radeon Vega 56/64/Frontier Edition(Vega10核心)
    • 由于启用后 Vega 56/64 风扇控制问题将会复现,作者于 1.2 版移除了支持;
  • Radeon RX 5500 / RX 5500XT / RX 5600 / RX 5700 / RX 5700XT (Navi10/14核心)
    • 由于 macOS 10.15.5 的 SMU 固件损坏,因此该无法为 Navi 10/14 加载 SMU 固件,作者于 1.6 版移除了支持;
  • 如果使用后黑屏,请添加 adgpmod=pikera 这个启动参数(需要搭配 WhateverGreen.kext)

已有117488次阅读

 

设备属性注入法

这里也有另一种通过直接给引导工具添加 DeviceProperties(设备属性)的方法给 Radeon Vega 系列和 Radeon RX 5700/XT 添加 SMU 固件支持,首先下载文件:

Vega56-64.rx5700-5700xt.config.file.zip,提取码:1hub

credit @xjn819

 

Clover 使用方法

下面以 Vega64 搭配 Clover 的方法为例演示,步骤一:首先打开 Hackintool,找到你的独显位置,复制路径:

步骤二:根据你的配置和的引导工具选择使用哪个文件,这里推荐直接上手使用代码编辑器 Visual Studio Code 进行操作,打开配置文件后,把刚才得到的 Device Path 拷贝到这里:

步骤三:接下来复制下图中的所有内容(但要不要舍弃第一二行和倒数第一行取决于步骤四):

步骤四:挂载你的 EFI 分区,找到并打开 config.plist 文件(千万注意备份),找到 Device 区域下方:

解释一下:

  • 如果你之前驱动过核显或者注入过 AppleALC 的 layout-ID,那么 config 中已经有了 Properties 这个 key,所以不用再复制步骤三中第一第二行以及倒数第一行(非常重要)
  • 已经有 Properties 的前提下,步骤三的内容从 <key>PciRoot(0x0)...</key> 这一行开始复制;
  • 如果真的没有 Properties 这个 key(可能性真不大),可以参考以下操作:

使用 Clover Configurator 打开你的 config.plist,进入 设备设置 → 属性,按照图中的说明添加任意值,保存退出,然后再用代码编辑器打开 config.plist,肯定就会出现 Properties 这个键。当操作完成后,可以直接在代码编辑器里删除,怕弄错的,可以回到 Clover Configurator 里,上图标注 4 的位置选中后点击 - 号以完整删除。

 

OpenCore 设备属性

这里介绍另一种不接触代码的操作,以 OpenCore Configurator 进行演示。修改 config 注意备份

使用 OpenCore Configurator 分别打开两个 config 文件(一个是你的 EFI 在用的,一个是补丁):

复制补丁文件的设备属性路径(右键拷贝),在你的 config 文件中对应区域粘贴(右键粘贴),即可。

 

其它型号显卡

因不止文中提到的型号存在问题,这里会慢慢补全显卡型号,可以 Mark 一下,时不时来看看。

Radeon RX 570

  • 点击下载,提取码:55vy
  • 使用 DeviceProperties 方式注入,使用方法参考上文
  • Polaris 系列显卡效果提升有限

 

Radeon RX 580

  • 点击下载,提取码:he8i
  • 使用 DeviceProperties 方式注入,使用方法参考上文
  • Polaris 系列显卡效果提升有限

 

Radeon RX Vega 56/64

  • 点击下载,提取码:g5iz
  • 使用 DeviceProperties 方式注入,使用方法参考上文
  • 添加了 PP_PhmPowerPlayTable 值,可解决风扇狂转问题
  • Vega 系列显卡提升明显

 

已有117488次阅读

 

 

最终效果

都操作完成后,重启即可看到效果,如果进不去系统,使用备份恢复,重新检查修改。

 

 

0. 本站所有资源解压密码均为 heipg.cn
1. 本站资源收集于网络,仅做学习和交流使用,请于下载后24小时内删除。如果你喜欢我们推荐的软件,请购买正版支持作者。
2. 如有无法下载的链接,联系:admin#heipg.cn,或到QQ群进行反馈,我们将及时进行处理。
3. 本站发布的内容若侵犯到您的权益,请联系站长删除,联系方式:admin#heipg.cn,我们将第一时间配合处理!

黑苹果星球 » 给黑苹果AMD显卡注入灵魂,大幅提升性能!

58 评论

  1. 用第二种方法 风扇的问题会解决吗?

    1. 并没有 依旧狂转

    2. Vega64风扇狂转问题,需要自行生成 PP_PhmSoftPowerPlayTable 数据,或刷特定版本的 BIOS 解决

      1. 这就 有点超纲了O O 有作业抄么~~~

        1. 这个确实挺复杂,我对显卡超频什么的也不是很了解,后续会找点资料指引吧。

  2. 这个oc引导的就又被放弃了吗?明明都在宣传oc咋好oc咋好,但每次什么玩意开始就clover configurator,这叫我们怎么办呐

    1. 我看到了下面一行字。现在我的问题变成了我该怎么删除这条评论

    2. 说实话,没看明白你的意思

  3. 感谢分享 拿走试试

  4. 5500xt/5600XT怎么提升性能?

  5. 我是vega56,来看看~谢谢分享~

  6. 可以。Geekbench 4万分变成将近7万分。👏

  7. RX580咋提升?

  8. Rx5700添加了有提升,但是没有5700的Plist.用的5700xt,型号显示为PRO W

    1. 5700和5700XT是同一个核心,只是不带XT的屏蔽了部分流处理器,总体来看没有关系

  9. 感动,5700xt成功。geekbench opencl跑分从5万提到6万7,metal从4万3提到7万5。status menus显示的显存也正常了,之前5700xt显存一直是满的。

  10. 非常感谢,使用你的方法,我的“RX Vage 56”变成“Pro Vage 56”了。

    1. 得分有提升吗

评论已关闭