AMD Shows Off Perfect Multi-GPU Scaling with DX 12 EMA
Samuel Wan / 1 year ago
Since the mid-2000’s, users have been able to use either AMD’s CrossFire or Nvidia’s SLI to boost their graphics performance. By pairing up two identical or similar cards, it is possible to achieve performance in the excess of that provided by a single card. Despite the theoretical benefits, both CrossFire and SLI have been plagued by many problems over the years. These pains may finally be solved by EMA from DX 12 which is finally taking off.
For CrossFire or SLI to work, there is a lot of stuff that has to happen beforehand. The developer has to add support for SLI and CrossFire to both DX 11 and DX 12 and AMD or Nvidia has to provide corresponding profiles and drivers for their respective products. Once it is up and running, there are still issues with stuttering, poor scaling performance, bugginess and in some cases, even negative performance.
With DX 12 EMA and Vulkan, many of these issues have been resolved. Bypassing the driver and proprietary profile altogether, it instead relies on integrating the API feature into the game code directly. This has allowed dramatic improvements in performance and interoperability. During their GDC event, AMD showed off 2x RX 480 running in Sniper Elite 4 with perfect 100% scaling. Performance went from about 30 FPS to 60 FPS, meaning no GPU resources are wasted.
At the same time, the shift to using the API method means that developers have to invest in either DX 12 or Vulkan themselves. Rebellion’s Chris Kingsley spoke about the massive coding and software investment that is required to get such great results. Going forward, I expect major studio’s to be the ones to get great scaling out of EMA while smaller studios may continue to use CrossFire of SLI. That is until we develop ways to add EMA relatively easily.