Contribute
Register

AMD Radeon Performance Enhanced SSDT

Status
Not open for further replies.
Thanks for the very interesting work... I just tried out the SSDT for RX580, and got the following results (before and after sleep)...

Before SSDT:

OpenCL:
View attachment 491769


Metal:

View attachment 491770


After SSDT:

OpenCL:

View attachment 491771

Metal:

View attachment 491772

So overall, a very mediocre increase in performance... but GPU die temp has come down anywhere from 5c to 10c, which is a real achievement!

Hope someone finds this info useful. PS. Using iMacPro1,1 SMBIOS without agdpmod=pikera, Sapphire Pulse RX 580 8GB
RX580 here too (MSI)

Slight improvement with OPENCL (LuxMark and GB4) but no decreased power consumption or lower temp. Please note that I modified the SSDT for my custom config: Dayman and no WEG (it makes iTunes crashes).

As someone said earlier, RX series were probably already well tweaked for MacOS.

**EDIT: silly me, I've put the SSDT on my main EFI instead of my USB test stick without noticing so, in fact, results were slightly better without the SSDT (the reverse)...

Maybe it's because I modified for Dayman and don't use WEG.

Thanks for the efforts anyway!
 
Last edited:
Using 20,2 Smbios with my config work best: gigabyte z490 with vega 64 nitro+. And on last Catalina.
With No SSDT I got metal : 58336 and openCL : 56184
With your SSDT metal: 83407. And OpenCL : 66590
And after sleep, with SSDT metal : 84163. OpenCl : 77945
So very effective.
Unfortunatly for me, with the SSDT, once The fans begin to turn, they never stop.
I don't use DAPGM.kext as I got native power managment there.
Is there somthing to do about the fans?



Edit: After few tweaks with mattystonnie vega SSDT, and puting back the old VGtab.kext (no more fan issue with this one), and Apgm.kext that I mod too.
Also I put a PCIe 1x card that I need in the second PCIe x16 slot. Because of that, I got the Graphic Card running at Pcie 8x. Somehow it help stabilize the result.... really strange.
After sleep I get metal : 83k / 86k and OpenCL :76k / 77k.
So thank you man for your work
 
Last edited:
This performance-enhanced SSDT was working wonderfully for me with Clover and previous os versions, but when I switched to OpenCore and Big Sur it stopped working.
So I'm wondering if anyone has managed get it to work with OpenCore or Big Sur?
Thanks!
 
This performance-enhanced SSDT was working wonderfully for me with Clover and previous os versions, but when I switched to OpenCore and Big Sur it stopped working.
So I'm wondering if anyone has managed get it to work with OpenCore or Big Sur?
Thanks!
I forgot to tell that I am with OpenCore 0.6.7
So it may be a big sur thing.
 
I forgot to tell that I am with OpenCore 0.6.7
So it may be a big sur thing.
It's great that you got it to work with OpenCore, and you may be right about Big Sur.
I would love to have a look at your EFI(serial numbers removed from config.plist), so if you don't mind posting it, I would appreciate it.
Thanks!
 
It's great that you got it to work with OpenCore, and you may be right about Big Sur.
I would love to have a look at your EFI(serial numbers removed from config.plist), so if you don't mind posting it, I would appreciate it.
Thanks!
There it is.
The graphic card is a vega 64 Sapphire nitro+

Edit : Since OC 0.6.8 video SSDT do not work anymore... But I also change lots of things.
 

Attachments

  • EFI.zip
    2.3 MB · Views: 124
Last edited:
Introduction

A couple of weeks ago I got my hands on a new Navi GPU, The Sapphire RX 5500 XT 4 GB, everything was working but the performance was not there, everyone said it is on pair with the good old RX 580.

So I got my hands on the new macbook pro 16.1,mac pro 7.1, and looking into the ssdt, dsdt and ioreg I saw what was missing from my hackintosh machine.

With a few tweaks and frambuffer injection, the performance went up especially with metal apps, low power consumption too.

The RX 5700 XT SSDT.aml works with RX 5600/5700/5700XT.
The RX 5500 XT SSDT.aml works with RX 5500/5500XT.

This method tries to mimic a real working mac.



How to install

Right now I am using Open Core Bootloader, but it works with clover too.

There are 2 methods for this to work, same methods are used by Apple : SSDT.aml for headless installation or Property Injection method for advanced users ( just copy the things from the SSDT.aml and add into the Property Injection section).

For VEGA 56/64 and RX 580 do not use rename PEGP to EGP0.


Clover method
  1. First thing to do is to download the SSDT.aml file corresponding to your GPU and drag&drop into /Volumes/EFI/EFI/CLOVER/ACPI/patched
  2. Second thing to do is to download WhateverGreen and place it into /Volumes/EFI/EFI/CLOVER/kexts/Other -- this will fix the video ports
  3. Download the dummy kext dAGPM (made by @toleda) that will help with power management for the GPU and place it into /Volumes/EFI/EFI/CLOVER/kexts/Other
  4. Edit the Clover Config file from /Volumes/EFI/EFI/CLOVER and add this DSDT renaming : rename PEGP to EGP0 find : 50454750 replace : 45475030 also add boot args : agdpmod=pikera (fix black screen on some gpus, mine works without).View attachment 464763


Open Core method
  1. Download the SSDT.aml file corresponding to your GPU and drag&drop into /Volumes/EFI /EFI/OC/ACPI
  2. Second thing to do is to download WhateverGreen and place it into /Volumes/EFI /EFI/OC/Kexts
  3. Download the dummy kext dAGPM (made by @toleda) that will help with power management for the GPU and place it into /Volumes/EFI /EFI/OC/Kexts
  4. Edit the OC config file from /Volumes/EFI /EFI/OC and add this patch renaming TableSignature SSDT find: 50454750 replace : 45475030 comment: replace : 45475030 ---- also add boot args : agdpmod=pikera (fix black screen on some gpus, mine works without)

View attachment 464767 View attachment 464768


5. Add the SSDT.aml file and whatevegreen kext and dAGPM kext into the config file and enable it .

View attachment 464769 View attachment 464770 View attachment 464772View attachment 464773



Conclusion

As you can see in the pictures the performance improve very much, in open gl test there is no improvement, only in open cl and metal, sometimes after opening many apps the score went very high. The open cl score did match the one from Windows 10.
The best performance was achieved using SMBios iMac Pro 1.1, DRM works on all video output ports.

View attachment 464780View attachment 464781 View attachment 464787
Hi there! wonderful post, do you think this would work with Big Sur?

Cheers!
 
Edit:

I was unable to use your aml, but instead I created a custom power play table and injected it into device properties with great results.

I am using RADEON RX 5700 8G with flashed bios to 5700 XT

1. Find out PCI device path using Hackintool
2. Generate power play table using https://www.hackintosh-forum.de/for...overclocking-powerp/?postID=542113#post542113
3. Paste plist content into device properties, set your PCI device path
4. Edit ROM and EFI version, these can be found using GPU-Z in windows, however, they are only cosmetic and do not affect anything
5. If you generated a custom power play, paste it into PP_PhmSoftPowerPlayTable

Code:
<dict>
    <key>PciRoot(0x0)/Pci(0x3,0x1)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)</key>
    <dict>
        <key>PP_PhmSoftPowerPlayTable</key>
        <data>
        igYMAAHiAccIAAAgOAAAfQAIAAAAGwAAAAAAAAAAAAB2AAAAAAAAAAAAAAAA
        AAEAAAAKAAAANAgAAPMEAAA+BAAA8wQAAPMEAABrAwAA8wQAAAQFAAAEBQAA
        KgMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwBAABkAAAAZAAAAGQAAAD7
        AQAAZAAAAPsBAAA0AQAALAEAACwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AACAAAAADgAAAB4AAAABAQEBAQEBAQEAAQEBAQAAAAAAAAAAAAAAAAAAAAAA
        AGYIAABmCAAAZggAALAEAABmCAAAsAQAAGYIAACwBAAAtgMAADIAAABIDQAA
        SA0AAGQAAABuAAAAAgAAAAEAAAABAAAAAQAAAAEAAABkAAAAZAAAAGQAAABk
        AAAAZAAAAGQAAABkAAAAZAAAAGQAAABkAAAAAAAAAAAAAAAAAAAAIAMAACAD
        AAAgAwAA7gIAACADAADuAgAAIAMAAO4CAABxAgAAMgAAAEwEAABMBAAAGQAA
        ADIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkAAAAKAAAAGQAAAAoAAAAZAAAA
        CgAAABkAAAAKAAAAGQAAAAoAAAAAAAAAAAAAAAAAAAAIAAAA/6/fsyMGAADc
        AAAAAAAAAAAAAAAAAAAAtAAAAAAAAAAAAAAAAAAAAA4AAAC9AAAAZABsAGkA
        cwBzAHMAcwAAAAAAAAAAAAAAAAAAAP5wAAABAAAAZABkAAAAAAAAAAAAVAtU
        C7gLuAvAEmgQTAAAAAEAAgAAAAAAAAAAAIEmgj6kcF2+tRoyPwEAAgAAAIA/
        AAAAAPG6Xj6rsm+9RfU2PwEBBAAAAIA/AAAAAPG6Xj6rsm+9RfU2PwEAAgDY
        8CQ/Ne8IPwAAAADUK8U+V1sRPwEAAgAKaAI/FK4XPwAAAACDUak+N4kRPwEA
        AgCcxKA/jgawvgAAAADjxwg/7C97PgEAAgBhVFI/1zRvPAAAAAD9h/Q+ylSB
        PgIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgAAAAAAAAAAAAAAAAAAAAAA
        AAAAACwBNAh4BXgFeAV4BXgFeAV4BXgFeAV4BXgFeAV4BXgFZADzBPME8wTz
        BPME8wTzBGQAPgQ+BD4EPgQ+BD4EPgT7AfMEtgO2A7YDtgO2A7YDZAD0AXEC
        awP7AfME8wTzBPME8wTzBPMENAEEBQQFBAUEBQQFBAUEBSwBBAWkBKQEpASk
        BKQEpAQsASoDKgMqAyoDKgMqAyoD0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB
        0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQATQI8wRr
        Az4E8wTzBAQFBAUqA9ABAAMDAzAB+wG4C7gLjApIDUgNSA2IExgVGBUYFSAD
        IAMgAwAAAADQAQAAAQIAAFsAABAAAAADBgZrAmsCAAAAAAAAAAAyADwAkAGQ
        AZABkAGQAZABkAGQAZABkAEaAA4GyghIDVkAIAMBAAECAAAAAAAAAAAAAAAA
        R+aRPKyoQb0TRF09AAAAAAAAAACPwvU8AAAAAAAAAAAAAAAAS8jHPZg0Rj1w
        QqG9r1oZO4yhHLv4Nr09AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAKAAoAABAQAAAAAAAKAAoAAAAgAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkBhwCH
        AAAAAAAAAAAAAAAAAAAAGQAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAA
        </data>
        <key>@0,name</key>
        <string>ATY,Adder</string>
        <key>@1,name</key>
        <string>ATY,Adder</string>
        <key>@2,name</key>
        <string>ATY,Adder</string>
        <key>@3,name</key>
        <string>ATY,Adder</string>
        <key>device_type</key>
        <string>ATY,AdderParent</string>
        <key>AAPL00,DualLink</key>
        <data>
        AQAAAA==
        </data>
        <key>AAPL,slot-name</key>
        <string>Slot-1</string>
        <key>ATY,Card#</key>
        <string>102-D32200-00</string>
        <key>ATY,Copyright</key>
        <string>Copyright AMD Inc. All Rights Reserved. 2005-2019</string>
        <key>ATY,DeviceName</key>
        <string>5700XT</string>
        <key>ATY,EFIVersion</key>
        <string>XXXX</string>
        <key>ATY,FamilyName</key>
        <string>Radeon</string>
        <key>ATY,Rom#</key>
        <string>113-D1990102-X02</string>
        <key>CAIL_EnableLBPWSupport</key>
        <integer>0</integer>
        <key>CAIL_EnableMaxPlayloadSizeSync</key>
        <integer>1</integer>
        <key>CFG_CAA</key>
        <integer>0</integer>
        <key>CFG_FB_LIMIT</key>
        <integer>0</integer>
        <key>CFG_FORCE_MAX_DPS</key>
        <integer>1</integer>
        <key>CFG_GEN_FLAGS</key>
        <integer>0</integer>
        <key>CFG_NO_MST</key>
        <integer>0</integer>
        <key>CFG_NVV</key>
        <integer>2</integer>
        <key>CFG_PAA</key>
        <integer>0</integer>
        <key>CFG_PULSE_INT</key>
        <integer>1</integer>
        <key>CFG_TPS1S</key>
        <integer>1</integer>
        <key>CFG_TRANS_WSRV</key>
        <integer>1</integer>
        <key>CFG_UFL_CHK</key>
        <integer>0</integer>
        <key>CFG_UFL_STP</key>
        <integer>0</integer>
        <key>CFG_USE_AGDC</key>
        <integer>1</integer>
        <key>CFG_USE_CP2</key>
        <integer>1</integer>
        <key>CFG_USE_CPSTATUS</key>
        <integer>1</integer>
        <key>CFG_USE_DPT</key>
        <integer>1</integer>
        <key>CFG_USE_FBC</key>
        <integer>0</integer>
        <key>CFG_USE_FBWRKLP</key>
        <integer>1</integer>
        <key>CFG_USE_FEDS</key>
        <integer>1</integer>
        <key>CFG_USE_LPT</key>
        <integer>1</integer>
        <key>CFG_USE_PSR</key>
        <integer>0</integer>
        <key>CFG_USE_SCANOUT</key>
        <integer>1</integer>
        <key>CFG_USE_SRRB</key>
        <integer>0</integer>
        <key>CFG_USE_STUTTER</key>
        <integer>1</integer>
        <key>CFG_USE_TCON</key>
        <integer>1</integer>
        <key>PP_DisableDIDT</key>
        <integer>1</integer>
        <key>PP_DisablePowerContainment</key>
        <integer>1</integer>
        <key>PP_DisableVoltageIsland</key>
        <integer>0</integer>
        <key>PP_FuzzyFanControl</key>
        <integer>1</integer>
        <key>hda-gfx</key>
        <string>onboard-1</string>
        <key>model</key>
        <string>Radeon RX 5700 XT</string>
        <key>name</key>
        <string>ATY_GPU</string>
    </dict>
</dict>
Tha
Before:
View attachment 478273

After:
View attachment 478274
Thank you for this! The turbines are now quiet, and Geekbench OpenCL score has improved.

Before adding soft power play tables.

Screen Shot 2021-05-21 at 11.57.18 AM.png


After

Screen Shot 2021-05-21 at 12.00.40 PM.png


I had to delete a few quirks to get rid of error messages on boot, but it seems to be running smoothly.
RX 5700 XT Red Dragon.
 
Last edited:
Status
Not open for further replies.
Back
Top