Contribute
Register

How to Enable AMD GPU Encoding instead of Intel's?

Status
Not open for further replies.
Sorry to break the bad news, I was hoping you’d cracked the code. As was stated before in this thread, Videoproc’s hardware encoding flags don’t mean GPU hardware encoding/decoding is actually enabled across the board with all your apps. In fact, on my Skylake system, Videoproc shows that hardware encoding for H.264 and H.265 are enabled, but when I actually encode video with the app only the CPU handles the job. So I don’t think Videoproc should be considered the final word on whether you’ve got GPU hardware encoding working or not.
 
Everyone should do defaults write com.apple.AppleGVA enableSyslog -bool YES and then watch Console.app for GVA debug messages. It clearly tells you which encoder is being used. Stop guessing via activity monitor
 
Everyone should do defaults write com.apple.AppleGVA enableSyslog -bool YES and then watch Console.app for GVA debug messages. It clearly tells you which encoder is being used. Stop guessing via activity monitor

Are you saying Activity Monitor/GPU History isn't an accurate indicator of GPU workload? It sure is on my systems. Encoding out of FCPX my 280X is pinned the whole time. Lightroom, Photoshop and IINA show GPU decoding as well. Integrated Intel graphics pin GPU History when benchmarking Geekbench Metal and OpenCL tests. What situations have you found where Activity Monitor wasn't showing GPU activity but Console was?
 
Alas, you're right, the only thing mentioning hardware encoding/decoding for H.264 is Videoproc. Please note that the iGPU isn't even activated in the BIOS...View attachment 407842

DGPU must attached to device GFX0, otherwise AMD HEVC GVA support will not work, need apply PEGP to GFX0 rename patch.
Use DaVinci Resolve to verify HEVC encoding performance, should higher than 150 fps (1920 x 808 H264 to HEVC).

Attached png show 164 fps on DaVinci HEVC transcoding, average should round 156 fps.
 

Attachments

  • Screenshot 2019-05-23 at 1.25.19 PM.png
    Screenshot 2019-05-23 at 1.25.19 PM.png
    1,014.6 KB · Views: 318
DGPU must attached to device GFX0, otherwise AMD HEVC GVA support will not work, need apply PEGP to GFX0 rename patch.
Use DaVinci Resolve to verify HEVC encoding performance, should higher than 150 fps (1920 x 808 H264 to HEVC).

Attached png show 164 fps on DaVinci HEVC transcoding, average should round 156 fps.
PEGP to GFX0 already applied...
 
PEGP to GFX0 already applied...

Try rebuild dyld shared cache, RX4XX/5XX GVAHEVCEncode/Decode is natively supported on 10.14.5.

sudo update_dyld_shared_cache -force
 
Try rebuild dyld shared cache, RX4XX/5XX GVAHEVCEncode/Decode is natively supported on 10.14.5.

sudo update_dyld_shared_cache -force
Updated dyld shared cache, no change. Videoproc tells me no HEVC. Something to do with what I've done to enable iTunes DRM:
Code:
Code:

defaults write com.apple.AppleGVA gvaForceAMDAVCDecode -boolean yes
defaults write com.apple.AppleGVA gvaForceAMDAVCEncode -boolean yes
defaults write com.apple.AppleGVA gvaForceAMDKE -boolean yes

...or iMac 14,2 SMBIOS paired with Haswell i7 4790?

EDIT: I've read this on a french website: "Only Macs with a 6th generation Intel Core processor (Skylake) or later can physically decode HEVC videos, ie by using the GPU so that the operation does not overload the CPU and cause a drop to the overall performance."

So, as I am using iMac 14,2, I assume that the SMBIOS prevents HEVC without enabling the iGPU, correct?

Thanks again,

Patrice
 
Last edited:
So, as I am using iMac 14,2, I assume that the SMBIOS prevents HEVC without enabling the iGPU, correct?

Not sure, AMD RX4XX/5XX need SMBIOS support hwe420 on AppleGVA info.plist, recently only supported by iMacPro1,1.

If use SMBIOS other than iMacPro1,1, try install WEG and add WEG boot flags

shikigva=32
shiki-id=Mac-7BA5B2D9E42DDD94
 
Thank you. I set the dGPU as the primary display adapter in BIOS. The Intel GPU is no longer in the "System Information" but it is still detectable by video encoding apps, such as VidoProc, and also appears in Activity Monitor > GPU History.
@jaymonkey , just want to give a quick update on this issue. After setting the dGPU as the primary display port and the iGPU became headless, the FCPX stopped working. My PlatformID is set to Macmini8,1 so the FCPX does not expect the iGPU to be headless. I had to reenable the iGFX as the primary display port in BIOS in order to get FCPX working again (even though my only monitor is actually connected to the dGPU)

It seems that I have to change my PlatformID to iMac18,3 as suggested above, but I'm afraid FaceTime will stop working if I do that! I've already spent a long time playing with serial numbers and codes till I got it working and really don't want to do it again! So, will changing the PlatformID from Macmini8,1 to iMac18,3 affect the FaceTime operation?
 
Status
Not open for further replies.
Back
Top