Mojave Hybrid AMD/NVIDIA Dual GPU Success

Discussion in 'Mac Pro' started by Reindeer_Games, Mar 15, 2019 at 1:36 PM.

  1. Reindeer_Games, Mar 15, 2019 at 1:36 PM
    Last edited: Mar 16, 2019 at 6:59 PM

    Reindeer_Games macrumors regular

    Reindeer_Games

    Joined:
    Nov 29, 2018
    Location:
    Pueblo, CO
    #1
    So I found something interesting-and fun, but I'm limited in testing due to only a solo Cinema Display, but want to test both engaged simultaneously to see if the RX580 becomes displayable in macOS... Full Metal Acceleration on both a GTX770 and RX580 in both Mojave 10.14.3 and Win10; I am running Bootrom 140.0.0.0.0 in my MP 4,1->5,1 upgrade.

    My NVIDIA GPU is a MVC flashed GTX 770 Founders Edition 2GB with bootscreen-and reports correctly as a 770 since I purchased in 2016. Doubtful a MVC original-but the bios is locked; I got it from an east coast seller. Possible it was just re-sold to me though. I am presuming any of the GK104's with the EFI ROM should function the same-but am guessing at this point.

    My AMD GPU is a Sapphire Pulse RX580 8GB standard dual bios OOTB, using the primary bios. I was very happy with this setup's overall perfomance in both macOS and Window but sorely missed Bootscreen and PhysX in Windows.

    Both cards are currently limited via Afterburner in Windows 10, and self-regulated in macOS. Use caution-you can still trigger shutdowns if only using the PCIe boosters. Have a plan to provide power before even considering dual GPU's of any configuration long-term.

    The RX580 in slot 1 was my first attempt last night, which worked-but with the same limitations I have now, but the RX580 would run hotter due to Chill engaging (but not getting hot enough to trigger the fans). The 580 in slot 1 idles at 42 deg C, but in slot 2 it will idle at 38 deg C (prob cause the GTX FE's fan is circulating right next to the RX580's heatsink). Also, the GTX required a stand-off when in slot 2 to prevent the RX's fan's from clipping the solder-point's on my GTX which does not have a backplate.

    A secondary case and PSU could be warranted-but even without display in macOS, the RX580 is providing accelerated compute that is visible by both app and monitor which are the main reason most of us use them and is why I absolutely consider this a success. The dreamer in me thinks a properly powered Vega and GTX combo could possibly pump some serious frame numbers; but I still haven't been able to push this setup fully yet.

    I have a theory the AMD is functioning as it's supposed to in the presence of a EFI NVIDIA GPU, solely as a booster compute GPU in Mojave. NVIDIA's have been used for years as PhysX compute cards to an AMD GPU in Windows, and why I began exploring dual GPU use. Apple, it appear's, decided to implement something similar but vice versa in their compute cards; from what it looks like to me. It may be tied to eGPU applications, but I have no way to set which GPU to use for individual programs like eGPU's do under Show Inspector menu "Prefer External GPU" checkbox. I only sent a 15 second clip from FCPX to Compressor, and had "Use GPU to process" in Compressor's Advanced Preference's and it shared the load natively.

    I've not run any heavy testing in macOS yet beyond basic editing and compression with FCPX and Compressor due to not having a secondary PSU or Pixlas mod available (yet).

    In macOS:

    1) GTX770 must be used as primary-DP is functional (but when swapped to RX580 is not).
    2) CLing is reporting Metal acceleration in both GPU's
    3) FCPX does not appear to use the RX580, but Compressor does as a booster GPU.
    4) Heaven uses only the GTX770 (or I have just not been successful in engaging the RX580 yet).
    5) I am hoping a second monitor may change #3/#4 (or future software updates?).

    In Win10 (cards are currently power limited via Afterburner to 120w (770) and 129w (580)):

    6) Best to use the RX580 as primary-both cards are usable.
    7) GTX770 functions perfectly as a dedicated PhysX/CUDA card when using RX580's DP.
    8) Certain settings on each AMD/NVIDIA control panel are only accessible when a monitor is connected to each manufacturer's card, so PhysX must be set to the GTX in the NVIDIA Control Panel prior to swapping to RX580 for use in Windows. It only needs to be done once usually, unless you move the cards slot location.

    9) Ensure your cards are properly powered or you are comfortable limiting your cards in power somehow before attempting.

    I have a mDP switch that I've re-purposed (previously was buggy at times when using w/ my MBP, so I don't recommend it by name brand), that's working well for now between GPU's. When setting up I was just swapping the DP cable by hand once booted to Windows between the GTX/RX where hot-swaps aren't a problem. They aren't a problem in macOS, but again-you just don't have a display via the RX580 in macOS.

    I am planning a Pixlas mod to eventually power the RX580, or secondary PSU for both (undecided)-but wanted to share this setups viability for those that already have those bases covered. I personally favor a secondary PSU for longer-term use, but this is certainly viable for my use in Testing.

    Screenshot 2019-03-15 21.22.25.png Screenshot 2019-03-15 21.22.03.png Screenshot 2019-03-15 21.20.57.png Screenshot 2019-03-15 21.20.34.png Screenshot 2019-03-15 14.32.07.png Screenshot 2019-03-15 09.11.59.png Dual GPU PhysX in-action Capture Win10 .JPG Dual GPU Capture Win10.JPG IMG_6640.JPG
     
  2. bsbeamer macrumors 68000

    Joined:
    Sep 19, 2012
    #2
    Is there a reason you want/need to run both GPUs simultaneously? Between the two cards, the RX580 8GB will have much better macOS performance in Mojave, assuming your GTX 770 FE 2GB is GK104 (basically same as GTX 680 Mac Edition 2GB).

    You can try swapping PCIe slots to see if it impacts macOS priority. Used to act this way with mixed GPUs, unsure if it still does.
     
  3. Reindeer_Games, Mar 15, 2019 at 1:56 PM
    Last edited: Mar 17, 2019 at 11:55 AM

    Reindeer_Games thread starter macrumors regular

    Reindeer_Games

    Joined:
    Nov 29, 2018
    Location:
    Pueblo, CO
    #3
    Bootscreen access and the added benefit of CUDA and PhysX in Windows, basically. In windows the 770 doesn't even hit the 120w power limiter, so I'm thinking the boosters and my Powerlink should be fine for testing since it hardly ever hit peak in macOS. I would rather use the RX580 in macOS, but I haven't achieved display yet. But even with only using the 770 in macOS there are considerable perfomance pickups-just like if I had web-drivers engaged.; it's fast.

    Thinking a secondary display should set it up perfectly, for my application-since it should engage both. I just may not have dual monitors in Mojave-which I'm ok with. Biggest drawback so far is I had to pull my USB-C card to gain full access for the second GPU. I'm exploring transplanting options-some of which we've discussed previously.
     
  4. bsbeamer macrumors 68000

    Joined:
    Sep 19, 2012
    #4
    There used to be an external PCIe expansion box with a PCIe switch (basically an A/B switch). Have not seen it in at least 10 years, but might be worth looking into for your specific use. Probably would also solve your external PSU dilemma rather easily.

    If you have already tried swapping slots with GPU and still not getting display with RX580, the driver conflict with multiple GPUs from two manufacturers still exists in Mojave and has not been addressed. Guessing your GTX770 is flashed? Using a GTX680 EFI?
     
  5. Reindeer_Games, Mar 15, 2019 at 2:12 PM
    Last edited: Mar 16, 2019 at 9:40 AM

    Reindeer_Games thread starter macrumors regular

    Reindeer_Games

    Joined:
    Nov 29, 2018
    Location:
    Pueblo, CO
    #5
    Edited and moved additional data to #1 post.

    Correct it is flashed. I'm using a mDP switch to swap GPU's routed to my Cinema Display which works well enough for now.
     
  6. Reindeer_Games, Mar 15, 2019 at 11:14 PM
    Last edited: Mar 16, 2019 at 11:46 PM

    Reindeer_Games thread starter macrumors regular

    Reindeer_Games

    Joined:
    Nov 29, 2018
    Location:
    Pueblo, CO
    #6
    Something like startergo listed in the PCIe Expansion thread and having a lane-splitting switch would be nice, but well above my limited budget for experimenting. My budget allows for more repurposing, such as a used micro-ATX case with an upgraded PSU and a couple high-end PCIe extenders. Additionally, this isn't a project I'm personally looking to scale-but others may find value in it. I can deal with a random $200 project, not $2K-LOL. But it will still take a few months to gather the parts unless I stumble across one already with at-least a semi-modular PSU being recycled.

    I found a couple used TB3 eGPU enclosures for reasonable and was considering picking up as chassis to mod, so I'd have hardware to return back to eGPU enclosures in the future. Either way I choose, these GPU's seem to be working in-tandem, which I was pretty exited about.

    I pretty much consider this resolved for my application (other than the transplanting and powering mods), but want to leave it open for those that have the same/similar GPU's and more available equipment if they'd like to attempt scaling.
     
  7. Reindeer_Games, Mar 16, 2019 at 1:21 PM
    Last edited: Mar 17, 2019 at 11:03 AM

    Reindeer_Games thread starter macrumors regular

    Reindeer_Games

    Joined:
    Nov 29, 2018
    Location:
    Pueblo, CO
    #7
    Screenshot 2019-03-17 11.58.43.png Screenshot 2019-03-17 11.58.57.png Screenshot 2019-03-16 14.12.47.png Screenshot 2019-03-16 14.11.38.png
    First two are previous shots, one in HS, and the other after upgrading to Mojave.

    The second two are new shot's are in Mojave showing rendering on the RX580 while installed alongside the flashed GTX770-but it's only reporting as 1GB (likely a Novabench reporting error, macOS recognizes the full 8GB in System Information).
     
  8. h9826790 macrumors G4

    h9826790

    Joined:
    Apr 3, 2014
    Location:
    Hong Kong
    #8
    Interesting, I didn't know NovaBench has 2017 version. But anyway, it seems the GPU test still very outdated and unable to measure anything.

    I just download and run it with my 1080Ti. Same as yours, shows 1GB VRAM. And obviously the FPS is limited to the monitor refresh rate due to V-sync.
    Screen Shot 2019-03-17 at 04.58.05.png
    Screen Shot 2019-03-17 at 04.57.29.png
     
  9. Reindeer_Games, Mar 16, 2019 at 2:22 PM
    Last edited: Mar 17, 2019 at 3:46 PM

    Reindeer_Games thread starter macrumors regular

    Reindeer_Games

    Joined:
    Nov 29, 2018
    Location:
    Pueblo, CO
    #9
    It's the current version to my knowledge, and I'm attempting to use any rendering programs to see which GPU macOS is choosing to use for rendering. Novabench happened to be the first one that natively and solely picked the RX580 in Mojave while only being displayed via the 770. I didn't care what it scored, only that is it uses the RX580 to do it-and it achieved full speed alongside my flashed 770 in Mojave is a bonus.

    The pics just show the 770 reporting at start-screen with the 580 being used in the top-left of the render-screen in one, while the other displays RX580 scores while still reporting GTX770 as the display GPU. My GTX would score similar in to my current score in High Sierra and prior, but has Never scored above 30 FPS in Novabench in Mojave, until now. My historical scores support the drop in performance as a result in upgrading to Mojave, I am arguing that this is just as good as web-drivers for me if Apple gets it fully implemented across programs, IF we can only have display in macOS. Adding even more value of having the RX580 in Windows 10 already, which is improved from what I've seen.

    Thanks-then I'll presume the 1GB is a Novabench limitation (if I recall my 770 was the same before dropping in the RX580).

    I'm basically attempting a workaround because I wish I could have a 1070 or better-but Mojave has it's limitations I have to work within for now. And spec-wise these cards are close to perfect to pair considering I prefer 60 Hz refresh. As a GTX user I'm sure you understand that PhysX is a cherished asset of any program that utilizes it; the same goes for CUDA users. The only feature I am seeing not "working" is display output via the RX580 in macOS, and I believe that it possible for that to change if someone were willing to make it happen.

    NB Win10.JPG 580.gif 770.gif

    Side note, before all the CPU/RAM/OpenCL tests quit working in Novabench in macOS (for me) this machine scored 2220-2430's overall, mostly contributed from the CPU's-but it's got it's perks still. Above are shots reporting success with freely available drivers to anyone with the 770 rendering in Windows-again I don't care about score, I'm amazed it's all working together natively for the most part. Both render approximately the same frame rate in Windows Novabench of ~65-69 FPS on GPU test but the GTX wins marginally.

    I am also power limiting these cards currently-so I am expecting some improvement still once I get them powered properly. I'm very interested if a GT120 would work in Mojave the same way since it computes better and peak at only 50w, although I have logged use of up to 25% GPU and 1GB VRAM when utilizing the as a PhysX card in Windows peaking at around 48% power usage. That's around 110w, and the GTX's draw 2:1 so ~73.6w on its booster; the RX peaked at the 70% limiter which is ~129.5w and they draw theoretically around 3:1 ratio which would be ~97.125w (well above spec and in danger zone).

    The GTX has been pulled for daily use and both booster returned to the RX580 until I receive additional cables to finish routing my Pixlas mod preventing power-booster damage my backplate. So again, have your bases covered if attempting further testing. I'm pretty sure a Pulse 56 and Kepler GTX combo would get the performance I truly want though all while keeping all my favorite features in Bootcamp.
     

Share This Page