Contribute
Register

Radeon RX 4XX/5XX standalone system, AMDRadeonX4250.kext (GVA support H264) does not support HEVC HW

Joined
Aug 11, 2018
Messages
179
Motherboard
Gigabyte Z370 Aorus Ultra Gaming WiFi
CPU
i7-8700K
Graphics
Radeon VII
It does not. There is no way to use two encoders at the same time. It either uses IGPU or DGPU. As I said, IGPU is default for encoding if present. The only thing macOS can do is to use the DGPU Decoder + IGPU Encoder at the same time, which is what happens when both Accelerators are present. That's why you will see load on both GPUs while converting or exporting videos.

However, as I said, Encoding always happens on the IGPU if it is enabled - no matter which SMBIOS used. This can easily be verified by comparing export times.
 
Joined
May 11, 2011
Messages
1,171
Motherboard
Asrock B365M Phantom Gaming
CPU
i5-9600KF
Graphics
RX 580
Mobile Phone
iOS
How do you explain that the export times are faster with IGPU+DGPU compared with only IGPU enabled?
I will do tests and show the difference.

Ahhh you joined 2018....
 
Joined
Aug 11, 2018
Messages
179
Motherboard
Gigabyte Z370 Aorus Ultra Gaming WiFi
CPU
i7-8700K
Graphics
Radeon VII
I did a lot of testing on this and IGPU disabled always is faster than IGPU enabled, given that DGPU Encoding works properly and correct AppleGVA configuration is set (iMacPro1,1).

Example:

Vega 64 Standalone
Source 4k60 (1:47)
H.264 to H.265: 1:30 Minutes
H.265 to H.264: 1:56 Minutes

Vega 64 + IGPU (Quick Sync)
Source 4k60 (1:47)
H.264 to H.265: 3:05 Minutes
H.265 to H.264: 2:25 Minutes

What does my registration date have to do with the matter?
 
Joined
Oct 23, 2010
Messages
903
Motherboard
GA-Z77X-UP5-TH
CPU
i7-3770K
Graphics
RX 580
Mac
iMac, MacBook Pro
Mobile Phone
Android, iOS,
Not correct. When I export with FCPX both gpus are working, did test with only IGPU enabled and IGPU + DGPU on exporting, the fastest was with both enabled.
Both GPU's "working" does not mean dGPU is encoding...it will decode but not encode WITHOUT the dummy kext (unless you are using 10.14.5 BETA).
You can prove it to yourself by examining the IOREG WITH and WITHOUT the dummy kext.
See this.
 
Joined
May 11, 2011
Messages
1,171
Motherboard
Asrock B365M Phantom Gaming
CPU
i5-9600KF
Graphics
RX 580
Mobile Phone
iOS
I did a lot of testing on this and IGPU disabled always is faster than IGPU enabled, given that DGPU Encoding works properly and correct AppleGVA configuration is set (iMacPro1,1).

Example:

Vega 64 Standalone
Source 4k60 (1:47)
H.264 to H.265: 1:30 Minutes
H.265 to H.264: 1:56 Minutes

Vega 64 + IGPU (Quick Sync)
Source 4k60 (1:47)
H.264 to H.265: 3:05 Minutes
H.265 to H.264: 2:25 Minutes

What does my registration date have to do with the matter?
What app did you use for test?
The second test seems to be only on SW encoding or only on IGPU.
Next time use pictures so we can see what you did there.
Offtopic: Because you’re talking with someone with over 8 years experience.
 
Joined
Aug 11, 2018
Messages
179
Motherboard
Gigabyte Z370 Aorus Ultra Gaming WiFi
CPU
i7-8700K
Graphics
Radeon VII
Video Proc. Without Auto Copy and keep original settings from source file.
Second test used IGPU only because that is what happens if it is activated... how often do I have to repeat that?
PS: 8 years of experience doesn't say anything. ;) You obviously lack some basic knowledge about how macOS works with regards to video encoding and decoding.
 
Joined
Sep 15, 2015
Messages
151
Motherboard
Gigabyte GA-Z97X-GAMING 3
CPU
i7-4790K
Graphics
Sapphire Nitro RX 480 OC
Mac
MacBook Pro
I mentioned this a bit ago, but after some more testing I'm pretty sure of it. They made some changes in 10.14.4 to AppleGVA that allow you to force which encoder to use no matter what your board-id is.

in terminal:

defaults write com.apple.AppleGVA forceATI -bool YES
or
defaults write com.apple.AppleGVA forceIntel -bool YES

to go back to default:
defaults delete com.apple.AppleGVA

I write an app that uses the hardware encoder and when I updated to 10.14.4 I noticed it suddenly started using the AMD encoder because I'd long ago set forceATI and forgotten about it. I've verified which encoder is in use via AppleGVA debug output.

This should make it somewhat easier to compare encoders since you don't have to reboot to do it.

Note this also changes the DECODER.
 
Joined
Aug 11, 2018
Messages
179
Motherboard
Gigabyte Z370 Aorus Ultra Gaming WiFi
CPU
i7-8700K
Graphics
Radeon VII
Yup, but this could still limit performance a bit depending on which processor / IGPU is used.
By default macOS uses IGPU for encoding, DGPU for decoding.
When forcing DGPU for Encoding, it will start to use the IGPU for decoding. At least that was what I observed when I checked on this last time.

In any case, for Vega and (starting with 10.14.5) RX4xx / Rx5xx users, it always is best to go with DGPU only (IGPU disabled) and use the iMacPro1,1 SMBIOS. This is not only the best choice in terms of performance but also results in fully working DRM.
 
Joined
May 11, 2011
Messages
1,171
Motherboard
Asrock B365M Phantom Gaming
CPU
i5-9600KF
Graphics
RX 580
Mobile Phone
iOS
I mentioned this a bit ago, but after some more testing I'm pretty sure of it. They made some changes in 10.14.4 to AppleGVA that allow you to force which encoder to use no matter what your board-id is.

in terminal:

defaults write com.apple.AppleGVA forceATI -bool YES
or
defaults write com.apple.AppleGVA forceIntel -bool YES

to go back to default:
defaults delete com.apple.AppleGVA

I write an app that uses the hardware encoder and when I updated to 10.14.4 I noticed it suddenly started using the AMD encoder because I'd long ago set forceATI and forgotten about it. I've verified which encoder is in use via AppleGVA debug output.

This should make it somewhat easier to compare encoders since you don't have to reboot to do it.

Note this also changes the DECODER.
10.14.4 or 10.14.5 beta 2?
 
Last edited:
Top