Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.

Ludacrisvp

macrumors 6502a
May 14, 2008
797
363
what would things behave like if we called the dGPU IGPU instead of GFX0 ... thinking have PXS1 == GFX0 and PXS2 == IGPU
then perhaps both could leverage acceleration
 

h9826790

macrumors P6
Original poster
Apr 3, 2014
16,656
8,587
Hong Kong
what would things behave like if we called the dGPU IGPU instead of GFX0 ... thinking have PXS1 == GFX0 and PXS2 == IGPU
then perhaps both could leverage acceleration

AFAIK, for those Mac that has iGPU, always use iGPU (GFX0), dGPU may be used for something else, but not HWAccel.

And for iMac Pro, due to no iGPU, then use dGPU (GFX0) for HWAccel.

No Mac can use both.
 

tsialex

Contributor
Jun 13, 2016
13,454
13,601
AFAIK, for those Mac that has iGPU, always use iGPU (GFX0), dGPU may be used for something else, but not HWAccel.

And for iMac Pro, due to no iGPU, then use dGPU (GFX0) for HWAccel.

No Mac can use both.
That's why I'm very curious about the implementation of hardware acceleration with MP7,1:
  1. Apple will use the same way to enable it as they did with iMacPro1,1?
  2. How MP7,1 with more than one discrete GPU will work?
  3. How the Radeon Duo GPUs will work?
  4. The implementation of the Radeon Duo will hidden this from the macOS in anyway? Seems the Duo PCB has a PCIe switch.
 
  • Like
Reactions: h9826790

Ludacrisvp

macrumors 6502a
May 14, 2008
797
363
That's why I'm very curious about the implementation of hardware acceleration with MP7,1:
  1. Apple will use the same way to enable it as they did with iMacPro1,1?
  2. How MP7,1 with more than one discrete GPU will work?
  3. How the Radeon Duo GPUs will work?
  4. The implementation of the Radeon Duo will hidden this from the macOS in anyway? Seems the Duo PCB has a PCIe switch.
Thats interesting (what looks like a PCIe switch).

I'd also be curious to see what the new 16" MBP is setup like with the AMD 5000 series cards in them.
I do think that we may have to wait for 7,1 release in order to really be able to dig into how it is setup so we can clone it for multi GPU 3,1-5,1 macs.
 

tsialex

Contributor
Jun 13, 2016
13,454
13,601
Thats interesting (what looks like a PCIe switch).

I'd also be curious to see what the new 16" MBP is setup like with the AMD 5000 series cards in them.
I do think that we may have to wait for 7,1 release in order to really be able to dig into how it is setup so we can clone it for multi GPU 3,1-5,1 macs.
You can download the special build of 10.15.1 for the 16” MBP already, Apple released it on SUS earlier today.

I’m inclined to think that Apple will change the way hardware acceleration is implemented for MP7,1, maybe not initially, since today’s GFX0 won’t work with multiple GPUs and probably work for just the first GPU of the Radeon Duos. It will be stupid this way for a Mac that is basically designed for video production in high scale.
 

sirbryan

macrumors newbie
Nov 12, 2019
17
23
That's why I'm very curious about the implementation of hardware acceleration with MP7,1:
  1. Apple will use the same way to enable it as they did with iMacPro1,1?
  2. How MP7,1 with more than one discrete GPU will work?
  3. How the Radeon Duo GPUs will work?
  4. The implementation of the Radeon Duo will hidden this from the macOS in anyway? Seems the Duo PCB has a PCIe switch.

Don't forget the FPGA on the Afterburner card. And there's articles all over the place claiming the T2 makes a big difference on encoding jobs.
 
Last edited:

startergo

macrumors 603
Sep 20, 2018
5,020
2,282
Ok. So only changing the product name to iMacPro1,1 and updating only SMBIOS gets all acceleration:
1573685978484.png

Unfortunately :
1573686062283.png

1573686140353.png

Everything screwed up.
 
  • Like
Reactions: h9826790

startergo

macrumors 603
Sep 20, 2018
5,020
2,282
Did you removed the Polaris GPU? Did you tested if the acceleration is really working?
Unfortunately I am not in front of my PC ( i will remove the cards when I have physical access). I do all the tests remotely. The only indication for me is the NO CPU usage and no stuttering when playing the Swordsmith video.
[automerge]1573688309[/automerge]
Updating only the board id in SMBIOS. I lost GT-640, playing HEVC Video:
1573687962809.png

1573688122514.png

MFC is completely screwed (showing Macpro6,1???):
1573688180867.png

1573688293428.png
 
Last edited:
  • Like
Reactions: h9826790

tsialex

Contributor
Jun 13, 2016
13,454
13,601
Unfortunately I am not in front of my PC ( i will remove the cards when I have physical access). I do all the tests remotely. The only indication for me is the NO CPU usage and no stuttering when playing the Swordsmith video.
Kepler GPUs don’t have any way of HEVC hardware acceleration, NVIDIA started with Maxwell for partial acceleration. I bet that it’s using the Polaris GPU for acceleration and it’s not reporting correctly.
 

startergo

macrumors 603
Sep 20, 2018
5,020
2,282
I bet that it’s using the Polaris GPU for acceleration and it’s not reporting correctly.
I was thinking about it, but here is the deal:
When the video was playing on the Titan or RX-580 I get around 40% Usage on the GPU,
But playing video on the GT-640 goes to 80% usage, so I don't think it is using the AMD. I may look at the GPU temperatures. What is a reliable software Istat?
 

cdf

macrumors 68020
Jul 27, 2012
2,256
2,583
Ok. So only changing the product name to iMacPro1,1 and updating only SMBIOS gets all acceleration:

SMBIOS it is, unsurprisingly. However, because the update is in automatic mode (generic = true), it is not just the product name that is changed; other identifiers are also changed based on an OC library. Updating the SMBIOS properties in manual mode (progressively changing iMacPro1,1 properties to MacPro5,1 ones) might offer more insight.
 

sirbryan

macrumors newbie
Nov 12, 2019
17
23
I started probing around.

[Edit: I retract my theory... subsequent cache rebuilds and reboots unvalidated my experiment.]
 
Last edited:

tsialex

Contributor
Jun 13, 2016
13,454
13,601
Well it looks like they did something.
Not exactly what we were thought we were looking for but maybe it will do what we need.

View attachment 877004
Yes, I read the patch. One thing of note, maybe this helped and disturbed at the same time, since they removed shikigva that we need too.

Maybe we will need to enable gvaForceAMDAVCDecode now.
[automerge]1573706823[/automerge]
defaults write com.apple.AppleGVA gvaForceAMDAVCDecode -boolean yes
defaults write com.apple.AppleGVA gvaForceAMDAVCEncode -boolean yes
defaults write com.apple.AppleGVA gvaForceAMDKE -boolean yes
 
Last edited:

h9826790

macrumors P6
Original poster
Apr 3, 2014
16,656
8,587
Hong Kong
Yes, I read the patch. One thing of note, maybe this helped and disturbed at the same time, since they removed shikigva that we need too.

Maybe we will need to enable gvaForceAMDAVCDecode now.

Tested

Boot as 5,1 + GFX0 renaming + force gvaForceAMDAVCDecode = nothing

Still need to mod AppleGVA.famrework to achieve HWAccel (without HEVC encoding)

So, in this case, GFX0 renaming and force gvaForceAMDAVCDecode has no effect.
 

tsialex

Contributor
Jun 13, 2016
13,454
13,601
Tested

Boot as 5,1 + GFX0 renaming + force gvaForceAMDAVCDecode = nothing

Still need to mod AppleGVA.famrework to achieve HWAccel (without HEVC encoding)

So, in this case, GFX0 renaming and force gvaForceAMDAVCDecode has no effect.
There are more parameters that can be enabled:

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

h9826790

macrumors P6
Original poster
Apr 3, 2014
16,656
8,587
Hong Kong
There are more parameters that can be enabled:

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

All tested, nothing changed
 
  • Like
Reactions: VaZ

Ludacrisvp

macrumors 6502a
May 14, 2008
797
363
Yes, I read the patch. One thing of note, maybe this helped and disturbed at the same time, since they removed shikigva that we need too.

Maybe we will need to enable gvaForceAMDAVCDecode now.
[automerge]1573706823[/automerge]
defaults write com.apple.AppleGVA gvaForceAMDAVCDecode -boolean yes
defaults write com.apple.AppleGVA gvaForceAMDAVCEncode -boolean yes
defaults write com.apple.AppleGVA gvaForceAMDKE -boolean yes
Here is a copy I compiled as version 1.3.6 that contains the removed code from shikigva.
Perhaps your tests will be more conclusive than mine were.

(I'm still on 10.14.6 and a 3,1 so your results may vary)

EDIT: removed kext as the legacy options that were removed from the code werent actually something we were using nor do we want used.
 
Last edited:
  • Like
Reactions: startergo

Ludacrisvp

macrumors 6502a
May 14, 2008
797
363
Perhaps this is useless or already known info but doing a 'sample' of the VTEncoderXPCService process shows this is loaded on the iMacPro1,1 but not loaded in my MP3,1

com.apple. AMDRadeonVADriver2 (2.11.20 - 2.1.1) <15651DE0-58A0-3120-9769-0AC68E56F717> /System/Library/Extensions/AMDRadeonVADriver2.bundle/Contents/MacOS/AMDRadeonVADriver2

Open files and ports also lists this in the iMP1,1 but not in the MP3,1
/System/Library/Extensions/AMDRadeonVADriver2.bundle/Contents/MacOS/AMDRadeonVADriver2


Using 'lsof' I can also see that on the 1,1 VTEncoder is using it and on the 3,1 it is not. VideoProc and Handbrake *try* to use it but they fail.

iMP1,1:
Code:
$ sudo lsof -n|egrep -i 'vte|amd'
VTDecoder   477             ludacrisvp  txt       REG                1,7    1924608              2072652 /System/Library/Extensions/AMDRadeonVADriver2.bundle/Contents/MacOS/AMDRadeonVADriver2
VTEncoder 84614             ludacrisvp  cwd       DIR                1,7       1184                    2 /
VTEncoder 84614             ludacrisvp  txt       REG                1,7      42992              2201980 /System/Library/Frameworks/VideoToolbox.framework/Versions/A/XPCServices/VTEncoderXPCService.xpc/Contents/MacOS/VTEncoderXPCService
VTEncoder 84614             ludacrisvp  txt       REG                1,7      21104              7756560 /Library/Preferences/Logging/.plist-cache.RefYVH7G
VTEncoder 84614             ludacrisvp  txt       REG                1,7      32768              7756864 /private/var/db/mds/messages/501/se_SecurityMessages
VTEncoder 84614             ludacrisvp  txt       REG                1,7   27154336              4209997 /usr/share/icu/icudt62l.dat
VTEncoder 84614             ludacrisvp  txt       REG                1,7     250080              2441355 /System/Library/Video/Plug-Ins/AppleGVAHEVCEncoder.bundle/Contents/MacOS/AppleGVAHEVCEncoder
VTEncoder 84614             ludacrisvp  txt       REG                1,7    1924608              2072652 /System/Library/Extensions/AMDRadeonVADriver2.bundle/Contents/MacOS/AMDRadeonVADriver2
VTEncoder 84614             ludacrisvp  txt       REG                1,7     239648              4119370 /private/var/db/timezone/tz/2019c.1.0/icutz/icutz44l.dat
VTEncoder 84614             ludacrisvp  txt       REG                1,7      65536              7204697 /private/var/folders/_t/kn4ghlss4f3_zgxyl6ybl_dh0000gn/C/com.apple.coremedia.videoencoder/com.apple.metal/AMD Radeon RX 580/functions.data
VTEncoder 84614             ludacrisvp  txt       REG                1,7      28200              7562407 /Library/Application Support/CrashReporter/SubmitDiagInfo.domains
VTEncoder 84614             ludacrisvp  txt       REG                1,7     973824              4134569 /usr/lib/dyld
VTEncoder 84614             ludacrisvp    0r      CHR                3,2        0t0                  314 /dev/null
VTEncoder 84614             ludacrisvp    1u      CHR                3,2        0t0                  314 /dev/null
VTEncoder 84614             ludacrisvp    2u      CHR                3,2        0t0                  314 /dev/null
VTEncoder 84614             ludacrisvp    3u     unix 0xf9842bffa15e39ff        0t0                      ->0xf9842bff6966f297
VTEncoder 84614             ludacrisvp    5u      REG                1,7       1024              7204696 /private/var/folders/_t/kn4ghlss4f3_zgxyl6ybl_dh0000gn/C/com.apple.coremedia.videoencoder/com.apple.metal/AMD Radeon RX 580/functions.maps
VTEncoder 84614             ludacrisvp    6u      REG                1,7      65536              7204697 /private/var/folders/_t/kn4ghlss4f3_zgxyl6ybl_dh0000gn/C/com.apple.coremedia.videoencoder/com.apple.metal/AMD Radeon RX 580/functions.data
VTEncoder 84614             ludacrisvp    7r      REG                1,7      28200              7562407 /Library/Application Support/CrashReporter/SubmitDiagInfo.domains

MP3,1:
Code:
Google     884       ludacrisvp  txt       REG               1,22    1924608 8610336800 /System/Library/Extensions/AMDRadeonVADriver2.bundle/Contents/MacOS/AMDRadeonVADriver2
HandBrake 1067       ludacrisvp  txt       REG               1,22    1924608 8610336800 /System/Library/Extensions/AMDRadeonVADriver2.bundle/Contents/MacOS/AMDRadeonVADriver2
VTEncoder 1127       ludacrisvp  cwd       DIR               1,22       1376          2 /
VTEncoder 1127       ludacrisvp  txt       REG               1,22      42992 8610020839 /System/Library/Frameworks/VideoToolbox.framework/Versions/A/XPCServices/VTEncoderXPCService.xpc/Contents/MacOS/VTEncoderXPCService
VTEncoder 1127       ludacrisvp  txt       REG               1,22      21104 8614234048 /Library/Preferences/Logging/.plist-cache.zAuXoDJK
VTEncoder 1127       ludacrisvp  txt       REG               1,22   27154336 8610044926 /usr/share/icu/icudt62l.dat
VTEncoder 1127       ludacrisvp  txt       REG               1,22      32768 8614234642 /private/var/db/mds/messages/501/se_SecurityMessages
VTEncoder 1127       ludacrisvp  txt       REG               1,22     250080 8610040031 /System/Library/Video/Plug-Ins/AppleGVAHEVCEncoder.bundle/Contents/MacOS/AppleGVAHEVCEncoder
VTEncoder 1127       ludacrisvp  txt       REG               1,22     973824 8610345081 /usr/lib/dyld
VTEncoder 1127       ludacrisvp    0r      CHR                3,2        0t0        371 /dev/null
VTEncoder 1127       ludacrisvp    1u      CHR                3,2        0t0        371 /dev/null
VTEncoder 1127       ludacrisvp    2u      CHR                3,2        0t0        371 /dev/null
VTEncoder 1127       ludacrisvp    3u     unix 0x3b2e22901febd625        0t0            ->0x3b2e229007c03d2d
VideoProc 1277       ludacrisvp  txt       REG               1,22    1924608 8610336800 /System/Library/Extensions/AMDRadeonVADriver2.bundle/Contents/MacOS/AMDRadeonVADriver2
 
  • Like
Reactions: h9826790

startergo

macrumors 603
Sep 20, 2018
5,020
2,282
Here is a copy I compiled as version 1.3.6 that contains the removed code from shikigva.
Perhaps your tests will be more conclusive than mine were.

(I'm still on 10.14.6 and a 3,1 so your results may vary)
You can create a fork of the WEG on git with the missing shiki section.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.