Contribute
Register

Five or six simultaneous displays from AMD GPU (eg 7970)?

Status
Not open for further replies.
If your DP monitors support it, you can use DP-daisychaining. I've tested it on 10.12.6 with radeon 7950 and with rx480, no issues. Been able to connect two 2560x1440 monitors (separate desktop each, no mirroring) to one DP port, I assume the other DP port could drive easily another two (I only have 3 QHD monitors, can't test a 4 monitor setup unfortunately).

With 4 DP ports working (framebuffer patch), and using daisychain, connecting 6 monitors should be no issue, of course if at least two of them support daisychaining.
 
Thank you @toleda. Since my last post I had extracted the Framebuffer personalities and saw the ones configured for 6 DP and hoped I could patch them to 2 x DVI + 4 x DP. But as you say, this might prove a problem.

I have one last question: do you know if it will be possible to do the necessary connector patching on an AMD 7970, on an X58/LGA1366 system with only Legacy boot, and no iGPU/second GPU?

This is the last piece of the puzzle I cannot work out, and I am worried it will not work. For example WhateverGreen states it's meant for UEFI, and unknown for Legacy. carpentryplus25's Framebuffer patch guide says specifically UEFI only. Mieze's SSDT patching is unstated as to whether it's UEFI only, or also supports Legacy.

I have today ordered an Asus Matrix Platinum 7970 3GB, as I thought the best thing to do was buy a card and start playing around, rather than trying to work this out in theory only. The card will arrive on Wednesday or Thursday.

EDIT: I have since been told that the 7970 definitely should work in my system, as it's still natively supported by 10.13.

However I remain uncertain as to whether this also means I can patch the connectors to get the full 6, or whether the patching methods might still require UEFI (carpentryplus25's guide states UEFI required for his method, and WhateverGreen might also require UEFI.)

Did you sucseed in the end?
 
Did you sucseed in the end?

Yes, mostly. I am still using the Asus 7970Ghz / R9 280X in my X58 legacy system, with five monitors connected and working (four at 1920x1200, one at 4K), and in the past I've had six connected.

But it's been far from easy or smooth. The full story:
  1. All six outputs work (4 x DP + 2 x DVI)
  2. However, because it's a legacy boot system, from boot only two outputs will get a picture. In fact, since 10.14.1, I often don't get a picture on any monitor.
  3. I need to sleep & wake, and then I get a picture on all connected monitors.
  4. I have confirmed that the same problem exists with this card and others even in a UEFI system, unless CSM is set to disabled. That is the key to get these AMD cards to get a picture on all monitors from boot.
  5. Of course disabling CSM is not an option on my X58 Legacy, so I have to sleep & wake after boot every time. I usuall do this by SSHing from another system, as I usually can't see a picture on any monitor from boot.
  6. This has got progressively worse with each new macOS update.
    1. In High Sierra 10.13.X I could get a working picture on two monitors, and the system worked fine even before sleep, unless you wanted >2 monitors. Because I got a picture at boot, I could just click Sleep from the Login screen.
    2. In Mojave 10.14.0 this changed a bit. I still got a picture on two monitors, but now the system was noticeably slower until I did sleep & wake, and I could see kernel_task using 100% CPU. Checking Console would show lots of errors on the AMD drivers, especially "CRITICAL ERROR : VBLANK interrupt has not been generated in time!" This would persist until sleep & wake.
    3. Through Mojave 10.14 it has got even worse. Since 10.14.1 I get no picture on any monitor at boot. And 10.14.6 broke things even more, to the point where sometimes the system would freeze completely and require a reboot, and sometimes this would happen five or six times in a row.
    4. This got so bad that I recently downgraded all the AMD kexts to 10.14.5 version, while keeping the main OS on 10.14.6. This solved the random freezes, but at boot I still have to SSH in from another system to put the PC to sleep before I can see anything.
  7. I have experimented with dozens of permutations of Clover options, WhateverGreen options, framebuffer patching, and more. Nothing can resolve the fundamental issue of needing to sleep & wake before I get a picture on all monitors. I have concluded this is just not possible on a legacy system - at least not with my level of knowledge.
So yes, it's a bit complicated. I recently bought a new GPU, a Gigabyte RX Vega 64, which also has 6 outputs (3 x DP + 3x HDMI). I tried putting it into the X58 system, but it made things much worse: now, the system would crash unless I booted with only one monitor connected. Having >1 monitor plugged in would mean the system would not boot fully, and could not be put to sleep, even via SSH. So every time I rebooted I had to physically unplug all but one monitor, then plug them back in after waking the machine up.

Things got slightly better when I learnt about using the iMac Pro 1.1 SMBIOS. This meant that I could get a picture on one monitor from boot, and a fully working system. But of course I wanted many more than 1 monitor, and as soon as I connected more than one monitor, all the problems returned. So I was still forced to disconnect and reconnect monitors at each boot.

I eventually put the Gigabyte Vega 64 into my second system, H77 UEFI, where it mostly works fine with iMacPro 1.1 SMBIOS and CSM disabled. Except it's still not working properly, because it freezes randomly when I try to use HW h264/h265 encode/decode, which is one of the main things I wanted it for (eg Premiere Pro video work.)
 
Last edited:
Status
Not open for further replies.
Back
Top