RX 580 External GPU Review - AMD XConnect and FreeSync
AMD launched its Radeon RX 500 series GPUs a month ago with the RX 580 leading the charge. It's a refined version of the highly successful mid-range graphics card from last summer, the RX 480. As a matter of fact, the two cards share the same PCI ID 67DF. The Radeon RX 580 brought performance improvements at the same price point as the outgoing RX 480. I've been testing a Gigabyte Aorus RX 580 XTR 8GB factory overclocked to 1439 MHz.
Disclosure: I'm very fond of AMD Radeon RX 480. It's the graphics card that lured me into higher GPU performance for the Mac platform and my eventual involvement with the eGPU community. The three reference RX 480 graphics cards I own are currently enclosed in a 2010 Mac Pro tower. They serve as beta testers for newer versions of macOS so that I can provide up-to-date information on my RX 480/580 installation how-to for Mac.
Being Mac users, we don't always have the luxury of choosing any graphics card we want. The Polaris 10 GPUs arrived at the right time as Apple released macOS 10.12 Sierra with drivers for Polaris 11 graphics cards. While these drivers were never intended for the RX 480, the genius minds (Pike's, netkas, Fl0r!an, okras, and others) in the Mac community figured out a way to make it work. The problem is there are very few Macs with full-length PCIe slots. The solution was to connect Macs to these newer and more powerful GPUs via an external PCIe enclosure. Thunderbolt is the natural conduit for this task.
You've most likely read reviews of the RX 580 from popular outlets. My review of the RX 580 is strictly based on its use as an external GPU. I make this distinction because eGPU in general and eGPU for macOS in specific is still in its infancy.
In macOS, the few active eGPU developers are goalque, rastafabi on eGPU.io and netkas on his forum. We hope there will be collaboration and involvement from other developers as eGPU gets more recognition.
In Windows, eGPU implementation is easier and works better. Intel has been making a big push for Thunderbolt 3. It plans to unleash this technology under a nonexclusive, royalty-free license. This will speed up adoption rate due to lower certification and manufacturing costs. AMD and Nvidia have developed software solutions, XConnect and Optimus respectively, to handle graphics card switching in the Windows environment. AMD XConnect team in particular is very active in promoting external GPU. The ultimate goal for an external graphics card is to function similar to how an external hard drive does.
AMD XConnect gets us very close to this goal. The prerequisites are R9 and RX graphics cards paired with a high-compatibility eGPU enclosure. For this RX 580 external GPU review, I'm using the Sonnet Breakaway Box Thunderbolt 3 enclosure. The external display is an LG Ultrawide 34UM68P with FreeSync. FreeSync is an AMD technology available on certain monitors that synchronizes the frame rate between the monitor and compatible AMD graphics cards. In macOS, I ran the RX 580 eGPU on a Late 2013 Mac Pro. The host in Windows was a Razer Blade Stealth.
The macOS Experience
Goalque's automate-eGPU script makes installing external graphics cards for Mac a much less frustrating process. The 2013 Mac Pro differs from other Macs in that it has no integrated GPU. There are 6 Thunderbolt 2 ports in the back that pair up with 3 Thunderbolt buses internally. From forum members' and my experience, Port #5 and #6 are more eGPU-friendly than others. I have managed to use other Thunderbolt ports via a boot delay. The "highly technical" process is to push the POWER button on the nMP, wait for the boot chime to finish, count to 3, then connect the eGPU.
Using either Thunderbolt Port #5 or #6 is recommended. Keep in mind these two ports share the same Thunderbolt Bus #0 with the HDMI port. Therefore, you should ensure there are no more than 2 display devices connected to this bus.
The RX 580 eGPU setup works for both gaming and work in macOS. While it's running at Thunderbolt 2 speed (16Gbps), the performance boost from this RX 580 is a marked improvement over the stock FirePros. In Final Cut Pro X, adding the RX 580 eGPU reduced BruceX benchmark time to 16 seconds on average. This same benchmark was around 24 seconds with the pair of D500s. F1 2016 is one of the few games for macOS that makes use of Apple Metal framework. It runs beautifully with this nMP + eGPU pairing. While FreeSync is not available in macOS, the increased frame rate helps smooth things out significantly during gameplay.
|2013 Mac Pro||D500 dGPU||RX 580 eGPU|
|Unigine Valley||23.1 FPS||37.6 FPS|
|Unigine Heaven||22.3 FPS||39.8 FPS|
|F1 2016||23 FPS||51 FPS|
|FCPX BruceX||24 s||16 s|
Windows: AMD XConnect & FreeSync
It's plug-and-play with the Razer Blade Stealth in Windows 10. As soon as I connected the RX 580 eGPU to the Razer laptop's Thunderbolt 3 port, I heard the new device sound and Intel Thunderbolt Software prompted me for my preference to connect to this enclosure. Windows 10 can automatically install the drivers for most graphics cards. However, they are not the latest drivers. I downloaded and installed the latest Radeon Software Crimson ReLive Edition drivers 17.5.2. Forum member Sky11 has provided us with a guideline on how to best upgrade AMD GPU drivers.
XConnect works with the Intel HD Graphics 620 iGPU to enable internal display acceleration with the Radeon RX 580 eGPU. This software solution from AMD for Windows 10 is so much easier than eGPU-accelerated internal display in macOS. I simply plugged the Thunderbolt 3 cable into this Razer Blade Stealth. The RX 580 spun up then slowed to a halt after initialization. AMD XConnect notification showed up at the bottom right to let me know "External AMD Radeon graphics has been enabled."
Once I connected the LG Ultrawide 34UM68P monitor to the eGPU, AMD XConnect switched to accelerate this external display. FreeSync is disabled by default. I went into the monitor's On-Screen Display to change this setting to Enabled. As soon as FreeSync was enabled, Windows 10 notified me the new device was found and proceeded with driver installation. AMD Radeon Software also confirmed FreeSync was running.
To my eyes it's similar to the way 120 MHz TVs display motion vs. 60 MHz ones. The on-screen fluidity makes gaming more enjoyable even at lower FPS. Low Framerate Compensation (LFC), a component of FreeSync, kicked in to help with scenes in which the RX 580 eGPU delivered less than 30 FPS. If I didn't know, I would have guessed LFC means less f-ing choppy. On top of that, AMD really puts FREE in FreeSync monitors. It demands no costly proprietary hardware, royalties, or licensing costs. Competing technology from Nvidia, G-Sync results in G-Sync monitors costing a lot more than their FreeSync counterparts.
|Razer Blade Stealth||Intel HD 620 iGPU||RX580 eGPU Internal||RX580 eGPU External|
|Unigine Valley||4.4 FPS||50.4 FPS||50.5 FPS|
|Unigine Heaven||4.7 FPS||49.1 FPS||49.1 FPS|
|Unigine Superposition||5.5 FPS||55.5 FPS||59.0 FPS|
|3DMark Time Spy||2.2 FPS||26.7 FPS||26.5 FPS|
|3DMark Fire Strike||4.8 FPS||57.9 FPS||56.4 FPS|
|Rise of the Tomb Raider||6.5 FPS||53.4 FPS||54.1 FPS|
|Tom Clancy's GhostRecon||1.9 FPS||36.6 FPS||44.9 FPS|
It's no surprise that the RX 580 eGPU improved the graphics performance of this Razer Blade Stealth nearly tenfold. What I was surprised by was how little difference in performance there was between the eGPU accelerating the laptop's internal display and it accelerating an external monitor. This could be a result of better drivers and AMD XConnect's optimization for internal display acceleration.
Another similarity with external hard drive is the way you can disconnect an eGPU. Right-clicking the XConnect notification area icon will give you the option to safely eject external AMD Radeon graphics. This essentially closes applications that are currently using the external GPU prior to disconnection. I've disconnected the enclosure the "bad way" plenty of times by hot unplugging. While I did not encounter BSOD, ejecting the enclosure the proper way is highly recommended to prevent issues with applications which have yet to support graphics switching between external GPU and integrated GPU.
By taking full advantage of AMD XConnect and FreeSync, an RX 580 eGPU setup can transform a lightweight ultrabook into a formidable Windows gaming machine. A major advantage of the AMD Radeon platform is the lower overall cost when considering the purchase of a compatible monitor.
Gaming in macOS is continuing to improve with more developers adopting Apple Metal framework. Another advantage for AMD graphics cards is Apple's optimization of Final Cut Pro X. Video editing in FCPX is less time-consuming with the added performance boost from an RX 580 eGPU. While we wait for Apple to deliver on its promise of a modular and powerful next-generation Mac Pro, a relatively affordable RX 580 eGPU setup bridges the performance gap.
Nice Test! I am using Adobe After Effects and Premiere Pro and work with an 13´MBP TouchBar and lot's of 4k Footage from multiple Cameras like the GH5, FS7, A7RII and Phantom 4 Pro but the power is not really impressive. Not only one Codec of all of these play's at full resolution in real time...Editing and grading is only possible with proxy's and thats not that what I want. I think I'm not the only user who want a test of MBP+eGPU in Premiere and AfterEffects.
-MBP+Mantiz Venus+RX580 (OpenCL) or 1080Ti (Cuda)
-Playback, multiple Effects and Grading (Lumetri -> Premiere) with 4K footage and maybe with multiple Codecs!?
-Exporting is not so important but I think much faster with the eGPU
I know this kind of test is time consuming but it is more helpful like any Benchmark and it will be an awesome test 😉
@ITSAGE: First of all thanks for all of your great works. Could you please tell me while using eGPU, how the fans rev on notebooks? Because you are an expert thats why I am asking a silly question- high rev fan will not reduce computer's lifespan?
Great post again 🙂
RX580 have the same or close performance as GTX 1060 so it's normal over Thunderbolt 3 your Internal Display Result to be the same as if you using External Display,it is not about the drivers and AMD XConnect’s optimization for internal display acceleration.
ϟ AKiTiO Thunder2 + EVGA GTX 1060 6GB SC Gaming (macOS Sierra 10.12.4 and Windows 10)
MacBook Pro (Retina, 15-inch, Later 2013) 3.2GHz Quad Core Intel i7-4750HQ / 8 GB 1600 MHz DDR3 / 256GB SSD + 1TB
✪ mini eGPU ● PCI Express vs. Thunderbolt ● Mac CAN game ● Gaming Laptops vs. MacBook Pro with eGPU
The cooling system and fans on the Razer Blade Stealth is not very good imo. Even when I was using the laptop by itself, the fans would spin up full blast at random.
During these benchmark runs, the fans come on more often. I don't think you would need to worry about life expectancy of the computer when the fans are revving high. It's the cooling system working as it was designed.
More information about AMD FreeSync and Low Frame Rate Compensation (LFC):
The wider the frequency range supported by the display, the better are the results.
Yes. It works similar to the way RX 480 has been working in 10.12. 10.13 Beta and 10.12.6 Beta 3 actually have dedicated drivers for these GPUs now and work right out the box. No longer a need for kext edits.
Here it is working Radeon RX 580, macOS 10.13beta and last FCP version 10.3.4
MacBook Pro 2018 Touch Bar i7 quad-core 2.7Ghz - 16GB RAM - 512GB PCIe SSD
my Mantiz Venus extreme mod with Sapphire Nitro+ RX Vega 64
Let’s hope FreeSync comes to macOS too
MacBook Pro 2018 Touch Bar i7 quad-core 2.7Ghz - 16GB RAM - 512GB PCIe SSD
my Mantiz Venus extreme mod with Sapphire Nitro+ RX Vega 64
Just getting around to setting up my MacPro 2013 (Dual D300's) with the Mantiz/1080ti. Looks like this will be a lot more straightforward than it is on TB2 MacBooks (thanks to lack of internal display for one).
I am curious. You mention only running a max of 2x display devices from the DP (TB2) ports when also using HDMI. By this do you mean two distinct monitors or two distinct eGPUs (which can of course have multiple displays attached)?
My MSI 1080Ti has Dual DP ports and Dual HDMI 2.0 ports; seems to be commonplace on the 1080TI now HDMI 2.0 is here. As such I assume it would be best to run all three of my 28" displays form the MSI (2x DP, 1x HDMI) and not consider using any of the Mac's built-in Display Ports / HDMI?
This said, won't overall redraw rates be affected by the (relative) lower performance of the HDMI connected monitor over the 2x Display Port monitors? I am interested to know how this manifests in gaming for example - will all the displays effectively run @ 60Hz (or the lowest sync rate)?
Sorry for the luddite questions - I'm just getting my ancient head around all of this!!!
@Hypernurd There are 3x Thunderbolt Buses in the nMP. Each handles 2x Thunderbolt 2 ports. Thunderbolt Bus 0 also handles the HDMI port as illustrated in this image. A display device can be considered either a monitor or eGPU. My recommendation is to use the HDMI connection for one of the 3x monitors so that you have the boot screen. The other 2x monitors can connect to the eGPU.
Cool. I'll give that a go!
I've been continuing my testing and set-up with the MacPro and have run into some difficulties. Essentially, after running automate-ePGU (with and without the -a argument) the MacPro is not powering the two ePGU attached displays. The MacPro connected HDMI display is working fine (i.e. the boot screen as advised by you). The Mantiz is seen on the TB0 bus (its plugged into Port 5 or 6 on the MacPro), the Nvidia GeForce 1080Ti is recognised and correctly labelled in System Report (along with the 2x Firepro D300's) and the host does not hang on reboot - i.e. I get the full boot process. The Nvidia web drivers are enabled in System Prefs (NVidia Driver Manager) and they are selected for use.
I have also tried Rastafabi's software (having de-installed Goalque's) and I get similar symptoms. Everything is recognised but no screen output on the eGPU displays. I have since removed Rastafabi's and reinstalled Goalque's with the -a argument to enable survival of the boot (even though this theoretically is not needed on pre-2014 hardware).
Any ideas as to what I can try now. Looking at the forums I may well be the only user attempting a 1080TI install on a MacPro so this is definitely 'bleeding edge' 🙂
@Hypernurd I've only seen a handful of nMP with GTX 1080 Ti eGPU so there are plenty of unknowns. Seeing full name of the GPU in System Information is a good start. The issue you're experiencing is most likely due to each Thunderbolt Bus can only handle upto two display devices. Port 5 and 6 are more eGPU-friendly because they don't cause boot hang.
It's best not to have any other peripherals connected to the nMP and Mantiz Venus until you sort this out. You can try other Thunderbolt ports by using a boot delay (count to 3 after the boot chime finishes then connect eGPU). This may only be relevant for AMD eGPU though.
My second recommendation is to connect only one display to the eGPU at boot (besides the one through HDMI port). If this works, you can introduce the second display to eGPU after the first one has output.
I have not tried triple displays yet to confirm. What I've done with my nMP is to use one 34" ultrawide monitor that receives two inputs: one from the nMP HDMI and the other from the eGPU DisplayPort. Therefore, I know eGPU can provide display output with the nMP.
Thanks for so much great info.
New to the forum but looking to get another year or two of life out of my 2013 nMP, which is used primarily for editing with FCPX. I see you like the 580 cards--is there a particular model? Also: do you have a preference on eGPU boxes? And lastly, if cost wasn't an issue, what card would you recommend for FCPX/eGPU config?
@screendor, welcome aboard! If you can wait until the end of the year when the iMac Pro is available, the RX Vega cards will be the best graphics card to use for FCPX. ATM, RX 580 is still the best value for FCPX and eGPU. Go with an eGPU enclosure that has a 550W PSU, that way you can use RX Vega cards in the future if you decide to do so. https://egpu.io/external-gpu-buyers-guide-2017/
Thanks for the tip. As I understand it, the Vega cards will be IN the new iMac Pro--and yes, a nice new machine would solve my issues but be a big capital expense (although dang, I wish I new the specs and costs of the 2018 Mac Pro).
So to clarify: the Vega cards will be avail as a separate purchase as well when iMac Pro launches. Pop one in my eGPU and my 2013 nMP will have a new lease on life for FCPX...yes? But with TB3, I could potentially also use them down the line when I purchase either a new iMac Pro or Mac Pro.
Also, it appears that at present, only Sonnet and Mantiz sport the 550w PSU, which limits my options to two--but that's good since it's all terra nova.
And sorry for the noob question, but if I get a TB3 eGPU (likely the Sonnet with 550w), it seems like it is backwards compatible with my TB2 2013 nMP, yes?
Thank you thank you thank you!
Off-the-shelf RX Vega 56 will work in a TB3 eGPU enclosure once the iMac Pro is released. You can buy the hardware pieces. It's only a matter of waiting for drivers to mature in macOS 10.13. While Apple states it supports eGPU for Thunderbolt 3 Macs only many of us have been using TB3 enclosures with older Macs. As you might have seen in this review, I used the Sonnet Breakaway 350 + RX 580 with my nMP just fine. The Apple Thunderbolt 3 to Thunderbolt adapter is the additional component to connect the nMP's Thunderbolt 2 port to the Sonnet Breakaway TB3 port.
Thanks again for the additional info. Any problem driving 2 monitors in conventional FCPX config? As well, I currently have an additional HDMI monitor for client viewing playing--so that's a total of 3 monitors. Copasetic with eGPU TB3 on TB2 nMP with TB adapter?
BTW, your site is fantastic!
Today I got a Sonnet Breakaway 550 with a Vega 56 for my 2013 Mac Pro and have had fairly mixed results and wondered if you know any ways to fix them. I'm running MacOS 10.13.4, used the script to get this to work (which worked perfectly) and have 1 4k monitor hooked up to it.
So far I've seen significant improvements in Unigen Heaven and Rocket League but have noticed other things like Fortnite and Unity get worse results. If I make Fortnite fullscreen I get around 20-30 FPS and for some reason Unity now has a fairly significant input delay. Do you have any idea what could be causing these problems?
Along with that, have you been able to get an eGPU to work in Windows 10 with Bootcamp? I boot into it and the eGPU is simply not showing up in device manager.
Any help would be really appreciated.
The monitor was not. I change it to primary display and it fixed the input delay and low FPS in Fortnite. Was getting consistent 30+ FPS playing at Ultra 1080p so that's pretty great. Although, at one point the monitor went black and my entire computer froze. Restarted and haven't had that happen since.
I saw that setup guide earlier and was worried it wouldn't work since it is focused entirely on Thunderbolt 3 MacBooks, do you think it would still work for a 2013 Mac Pro with Thunderbolt 2?
It is interesting that the Unigine Valley and Geekbench performance with this TB2 to RX580 seems to be roughly similar to the (few) build reports of TB1 to RX580, and even a few of the TB3 to RX580 reports.
I understand the idea of loading up the video memory with data and then the processor can issue a relatively slow stream of graphic processor instructions to transform the video memory data for display. That is why I am hoping my x-plane flight simulation will see a 10 fold increase in frame rate even across the TB1 port to the RX580, compared with my current Mac Mini i7-3720QM, Intel 4000 (Valley High 2560 x 1080 Vsync is 4.8 fps).
My other "heavy" video usage will be for viewing UltraHD (3840 x 2160) 30 fps 100Mbps MP4 video from my Panasonic G7 camera, which also shouldn't tax the 10Gbps TB1 channel, even if the real throughput is 10% of the theoretical. Proving this will have to wait for a 4k UHD monitor..
The more I read here, the more excited I get to join you rogue "computer recyclers."