AMD revealed today that it no longer refers to multi-GPU support by its long-standing Radeon brand known as CrossFire. This revelation came via PCWorld's Brad Chacos, who was curious as to why Crossfire wasn't mentioned in the company's latest Radeon Software 17.9.2 drivers. He proceeded to email AMD to inquire about this apparent omission.
To his surprise AMD's answer was that it's transitioning away from the CrossFire brand, referring to it as a DirectX 11 era technology. “CrossFire isn’t mentioned because it technically refers to DX11 applications,” an AMD PR person told PCWorld. “In DirectX 12, we reference multi-GPU as applications must support mGPU, whereas AMD has to create the profiles for DX11. We’ve accordingly moved away from using the CrossFire tag for multi-GPU gaming.”
AMD further elaborated by saying that this is simply a branding decision not a technical one. The company is by no means ending multi-GPU support for its graphics cards, in fact its latest drivers enable multi-GPU support for its recently released Radeon RX Vega graphics cards with promises of 80%+ performance scaling.
Gone are the days of old when graphics card vendors had to hand-craft and optimize CrossFire & SLI profiles for multi-GPU to work at all in games. DirectX 12, unlike all of its predecessors, delegates this responsibility entirely to the game developer via a feature called Explicit Multi-Adapter. The API enables low-level access to the hardware, allowing developers to access each GPU directly and independently.
There are two types of Explicit Multi-Adapter modes in DirectX12 "Linked" and "Unlinked". Linked mode is only available when there are multiple identical GPUs in the system, similar to what CrossFire and SLI setups look like today. It allows for the computing/graphics resources and the memory pools of multiple GPUs to be combined into one larger addressable unit. This mode works by delegating similarly tasking workloads to each GPU, essentially cutting the overall work in half to complete it in a shorter amount of time.
One GPU could render one portion of the frame while the second could render another portion of the same frame for example. This is called Split Frame Rendering, SFR for short. This technique negates the limitations inherent in the traditional alternate frame rendering – AFR – technique used today in DX11 and older games, which involves mirroring the memory pools and introduces the need for frame pacing.
Unliked mode is the second multi-GPU option under DX12. This mode is designed to take advantage of GPUs with different capabilities and even different vendors at once in the system. Yes, it allows developers to force NVIDIA and AMD GPUs to work together. The mode enables this through a thin abstraction layer allowing the different GPUs to swap data back and forth while giving developers total control. This mode enables developers to make use of discrete GPUs alongisde integrated GPUs or other discrete GPUs. With each GPU being treated as a completely independent graphics engine that the developers can choose to utilize for whatever they want.
This brings is to the concepts of CrossFire and SLI, which were introduced over a decade ago. As you can clearly tell the new new DirectX 12 multi-GPU capabilities have very little to do with SLI and CrossFire, which are essentially proprietary algorithms developed by each vendor to enable alternate frame rendering via the driver layer. Hence calling DirectX 12 multi-GPU support SLI or CrossFire is simply not accurate.
DX12 in and of itself does not rely on the proprietary SLI and CrossFire technologies that NVIDIA and AMD have developed. DX12 multi-GPU support stands on its own two feet. All that's required of the vendor is to make sure that their hardware and software is compliant with the multi-GPU features built into DirectX 12. This is why AMD isn't calling multi-GPU support in its latest driver release CrossFire, because it simply is not. Not anymore.