Contribute
Register

[Solved]Fixes to Get Full Acceleration on Intel HD Graphics in iMac 17.1

Status
Not open for further replies.
Tried 4K video in Firefox, and there was no activity in Intel Power Gadget, but I don’t think that is telling the whole story, because I also just played a 4K H265/HEVC in VLC, and it played perfectly and that was never possible before... and it also shows no activity in Intel Power Gadget. ¯\_(ツ)_/¯
 
Tried 4K video in Firefox, and there was no activity in Intel Power Gadget, but I don’t think that is telling the whole story, because I also just played a 4K H265/HEVC in VLC, and it played perfectly and that was never possible before... and it also shows no activity in Intel Power Gadget. ¯\_(ツ)_/¯
In VLC, I get some activity in the GT frequency and my activity monitor shows less CPU usage, this same video would show 130%+ in activity monitor without shiki.
Screen Shot 2017-10-14 at 6.02.16 PM.png

But in browse for THIS video, in Firefox I get high CPU usage with not GT activity:
Screen Shot 2017-10-14 at 6.05.15 PM.png

But same video in Safari showing less CPU activity and forwarding the decode to GPU:
Screen Shot 2017-10-14 at 6.05.59 PM.png
 
In VLC, I get some activity in the GT frequency and my activity monitor shows less CPU usage, this same video would show 130%+ in activity monitor without shiki.
View attachment 285636

But in browse for THIS video, in Firefox I get high CPU usage with not GT activity:
View attachment 285637

But same video in Safari showing less CPU activity and forwarding the decode to GPU:
View attachment 285638

I have to do more investigating, but my point is I’m getting hardware decode acceleration even when GT frequency is showing 0.00
 
Can someone comment on/recap the steps to get FCPX h264 encoding/decoding working on a Skylake(HD530) + AMD RX480 iMac 17,1 setup with High Sierra?

For now, I've switched off my HD530 and I'm just using my RX480. With lilu & whatevergreen, this works OK.
But exporting movies to Apple 720p or 1080p fails, presumably because there's no igpu and hence no Intel h264 hw encoding.

So, what settings do I have to make in BIOS? Just switch internal graphics on but keep my 480 as primary GPU? Anything else?

Clover fixes?

SSDT edits?

Extra kexts?

Bootarguments?

I've read this thread and others, but there's a lot of old an contradictory information.

I promise I'll write a clear set of instructions and post it here if i get it figured out...

BTW, I can't switch my system def, it would break a lot of my copy protected software.
 
I think I've got it working, Intel quicksync. FCPX exports to H264(and mighty quick), QuickTime screenrecording works. HD530 and RX480 show up in System Info. One monitor attached to RX480.
I will do some more testing.

iMac 17,1 has IGPU on processor & discrete GPU, hardware encoding is apparently done by the IGPU, so this has to be enabled even if it is not used for anything else.
 

Attachments

  • Schermafbeelding 2017-10-27 om 22.37.09.png
    Schermafbeelding 2017-10-27 om 22.37.09.png
    73.2 KB · Views: 387
Fixes to Get Full Hardware GPU Acceleration using Intel HD Graphics with AMD RX480 on SMBIOS iMac 17,1 and MacOS High Sierra 10.13.0 Z 28-10-2017
First draft.

Hardware
Gigabyte Z170X-UD5-TH/i7 6700K/SSD’s/32 GB RAM/MSI AMD Radeon RX480/8GB Gaming X.

RX480 connected to 2160p monitor using displayport, HD530 used for Intel quicksync. QuickTime player screenrecording and h264 export from FCPX work

Audio over DP works

Not a complete guide for a successful iMac 17,1 installation on the Z170X-UD5-TH. I’m showing just the relevant parameters in the BIOS to make the RX480 and HD530 work, for example.

Luxmark 3.1 ball benchmark: normally about 16000.

Sleep is not working well on my system, but this is due to the USB3.1 ports that have not been properly patched(any ideas how to do this are most welcome)

Maybe there are too many patches and SSDT’s in place
BTW, still using HFS+

BIOS
version F20

Peripherals/Initial Display Output:
PCIe slot 1
Chipset/Internal Graphics
Enabled
Chipset/DVMT Pre-allcated
64M
Chipset DVMT Total GFX mem
MAX

Clover

/Volumes/EFI/EFI/CLOVER/ACPI/patched

SSDT-EC.aml
SSDT-i7-6700K.aml
SSDT-IGPU.aml
SSDT-LPC.aml
SSDT-MCHC.aml
SSDT-SATA.aml
SSDT-SMBUS.aml
SSDT-UIAC.aml
SSDT-USBX.aml
SSDT-XHC.aml
SSDT-XOSI.aml


/Volumes/EFI/EFI/CLOVER/kexts/other

FakeSMC.kext
IntelGraphicsFixup.kext
IntelMausiEthernet.kext
Lilu.kext
Shiki.kext
USBInjectAll.kext
WhateverGreen.kext

/Volumes/EFI/EFI/CLOVER/config.plist

*** Not complete, I removed the unique signature stuff ***

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">;
<plist version="1.0">
<dict>
<key>ACPI</key>
<dict>
<key>DSDT</key>
<dict>
<key>Debug</key>
<false/>
<key>DropOEM_DSM</key>
<false/>
<key>Fixes</key>
<dict>
<key>FIX_WAK_200000</key>
<true/>
<key>FixShutdown_0004</key>
<true/>
</dict>
<key>Name</key>
<string>DSDT.aml</string>
<key>Patches</key>
<array>
<dict>
<key>Comment</key>
<string>change GFX0 to IGPU, optionally pair with SSDT-IGPU.aml</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
R0ZYMA==
</data>
<key>Replace</key>
<data>
SUdQVQ==
</data>
</dict>
<dict>
<key>Comment</key>
<string>10.11+-Rename-HECI2IMEI</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
SEVDSQ==
</data>
<key>Replace</key>
<data>
SU1FSQ==
</data>
</dict>
<dict>
<key>Comment</key>
<string>Rename HDAS to HDEF</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
SERBUw==
</data>
<key>Replace</key>
<data>
SERFRg==
</data>
</dict>
<dict>
<key>Comment</key>
<string>change _OSI to XOSI, pair with SSDT-XOSI.aml</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
X09TSQ==
</data>
<key>Replace</key>
<data>
WE9TSQ==
</data>
</dict>
<dict>
<key>Comment</key>
<string>change _DSM to XDSM</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
X0RTTQ==
</data>
<key>Replace</key>
<data>
WERTTQ==
</data>
</dict>
<dict>
<key>Comment</key>
<string>change SAT0 to SATA</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
U0FUMA==
</data>
<key>Replace</key>
<data>
U0FUQQ==
</data>
</dict>
<dict>
<key>Comment</key>
<string>change PEGP -&gt; GFX0</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
UEVHUA==
</data>
<key>Replace</key>
<data>
R0ZYMA==
</data>
</dict>
</array>
<key>ReuseFFFF</key>
<false/>
</dict>
<key>HaltEnabler</key>
<true/>
<key>SSDT</key>
<dict>
<key>DropOem</key>
<false/>
<key>Generate</key>
<dict>
<key>CStates</key>
<false/>
<key>PStates</key>
<false/>
</dict>
</dict>
</dict>
<key>Boot</key>
<dict>
<key>Arguments</key>
<string>darkwake=0 uia_exclude=HS05;HS06;HS10;HS11;HS12;SS05;SS06</string>
<key>Debug</key>
<false/>
<key>DefaultVolume</key>
<string>El Capitan</string>
<key>Legacy</key>
<string>PBR</string>
<key>Secure</key>
<false/>
<key>Timeout</key>
<integer>3</integer>
<key>XMPDetection</key>
<integer>1</integer>
</dict>
<key>CPU</key>
<dict>
<key>UseARTFrequency</key>
<false/>
</dict>
<key>Devices</key>
<dict>
<key>Audio</key>
<dict>
<key>Inject</key>
<string>1</string>
</dict>
<key>FakeID</key>
<dict>
<key>ATI</key>
<string>0x0</string>
<key>IMEI</key>
<string>0x0</string>
<key>IntelGFX</key>
<string>0x0</string>
<key>LAN</key>
<string>0x0</string>
<key>NVidia</key>
<string>0x0</string>
<key>SATA</key>
<string>0x0</string>
<key>WIFI</key>
<string>0x0</string>
<key>XHCI</key>
<string>0x0</string>
</dict>
<key>USB</key>
<dict>
<key>FixOwnership</key>
<false/>
<key>Inject</key>
<false/>
</dict>
</dict>
<key>DisableDrivers</key>
<array>
<string>Nothing</string>
</array>
<key>GUI</key>
<dict>
<key>Hide</key>
<array>
<string>\EFI\BOOT\BOOTX64.EFI</string>
<string>Windows</string>
</array>
<key>Language</key>
<string>nl:0</string>
<key>Mouse</key>
<dict>
<key>DoubleClick</key>
<integer>500</integer>
<key>Enabled</key>
<true/>
<key>Mirror</key>
<false/>
<key>Speed</key>
<integer>8</integer>
</dict>
<key>Scan</key>
<dict>
<key>Entries</key>
<true/>
<key>Legacy</key>
<false/>
<key>Linux</key>
<false/>
<key>Tool</key>
<true/>
</dict>
<key>ScreenResolution</key>
<string>2560x1600</string>
<key>Theme</key>
<string>steampunkblack</string>
</dict>
<key>Graphics</key>
<dict>
<key>Inject</key>
<dict>
<key>ATI</key>
<false/>
<key>Intel</key>
<true/>
<key>NVidia</key>
<false/>
</dict>
<key>NvidiaSingle</key>
<false/>
<key>ig-platform-id</key>
<string>0x19120001</string>
</dict>
<key>KernelAndKextPatches</key>
<dict>
<key>AppleIntelCPUPM</key>
<false/>
<key>AppleRTC</key>
<false/>
<key>Debug</key>
<false/>
<key>DellSMBIOSPatch</key>
<false/>
<key>KernelCpu</key>
<false/>
<key>KernelLapic</key>
<false/>
<key>KernelPm</key>
<true/>
<key>KernelXCPM</key>
<false/>
<key>KextsToPatch</key>
<array>
<dict>
<key>Comment</key>
<string>t1-10.12-AppleHDA/Realtek ALC...</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
ihnUEQ==
</data>
<key>Name</key>
<string>AppleHDA</string>
<key>Replace</key>
<data>
AAAAAA==
</data>
</dict>
<dict>
<key>Comment</key>
<string>t1-10.9-10.12-AppleHDA/Realtek ALC1150</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
ixnUEQ==
</data>
<key>Name</key>
<string>AppleHDA</string>
<key>Replace</key>
<data>
AAnsEA==
</data>
</dict>
<dict>
<key>Comment</key>
<string>t1-AppleHDA/Resources/xml&gt;zml</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
eG1sLnps
</data>
<key>Name</key>
<string>AppleHDA</string>
<key>Replace</key>
<data>
em1sLnps
</data>
</dict>
<dict>
<key>Comment</key>
<string>Trim non-Apple SSD's</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
QVBQTEUgU1NEAA==
</data>
<key>Name</key>
<string>IOAHCIBlockStorage</string>
<key>Replace</key>
<data>
AAAAAAAAAAAAAA==
</data>
</dict>
<dict>
<key>Comment</key>
<string>External icons patch</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
RXh0ZXJuYWw=
</data>
<key>Name</key>
<string>AppleAHCIPort</string>
<key>Replace</key>
<data>
SW50ZXJuYWw=
</data>
</dict>
</array>
</dict>
<key>RtVariables</key>
<dict>
<key>BooterConfig</key>
<string>0x28</string>
<key>CsrActiveConfig</key>
<string>0x3</string>
</dict>
<key>SMBIOS</key>
<dict>
/dict>
<key>SystemParameters</key>
<dict>
<key>InjectKexts</key>
<string>Yes</string>
<key>InjectSystemID</key>
<true/>
</dict>
</dict>
</plist>
 
Last edited:
I was able to get full acceleration but when I enable -disablegifxfirmware FCP just crashes. Any ideas?
 
Status
Not open for further replies.
Back
Top