One of the most interesting features in DirectX 12 is its multi-adapter support. Game developers using the next-gen API have a lot of tools at their disposal for using multiple graphics cards, but the most intriguing possibility is the power to harness dissimilar configurations. That means devs can build in support for combinations like a Radeon and a GeForce, an integrated graphics processor and a dedicated card, or perhaps even an old GeForce GTX 680 alongside that brand-new Titan X.
Ryan Smith at AnandTech has taken a look at a custom build of Ashes of the Singularity with DirectX 12's Explicit Multiadapter Unlinked mode enabled, courtesy of developer Oxide Games. This specific mode allows developers to take control of individual graphics cards, assigning work and sharing data among them as the program sees fit. Oxide uses this DX12 mode to implement an alternate-frame rendering method.
With this build in hand, Smith examined performance with same-vendor and mixed pairs of AMD and Nvidia graphics cards. The results are surprising, to say the least. They should also be taken with a grain of salt, since the build Oxide provided doesn't even qualify as an alpha. Even so, they're fun to look at as an indicator of what's possible. In a disheartening development for the dedicated fanboys out there, mixing cards from different vendors provided the best results at both of the resolutions tested.
At 2560x1440, the numbers show that pairing a GeForce GTX 980 Ti with a Titan X provides a (lower-than-expected) 46% boost over a GTX 980 Ti alone, but the mixed-vendor configuration of an R9 Fury X and GTX 980 Ti does even better. Blending the red and the green teams produces a 68-75% boost over the GTX 980 Ti and R9 Fury X by themselves, depending on the card used as the primary adapter. Using the Radeon as the primary card produces the best results. That's compared to a roughly 80% boost from an ideal SLI or CrossFire setup, according to AnandTech.
Bump the resolution to 4K, and the percentage gains are roughly similar across the board. The R9 Fury X and GTX 980 Ti setup (with the R9 Fury X as the primary card) still delivered the best results—a 65-66% gain over a GTX 980 Ti or Fury X alone.
To round things out, the site tested a pair older cards, specifically a Radeon HD 7970 and a GeForce GTX 680. Unlike the results produced with the most recent cards, the primary card vendor mattered a lot here. Using the HD 7970 as the primary card in tandem with a GTX 680 produced a 55% increase over a single 7970, but using the GTX 680 as the lead card actually produced worse numbers than with the GTX 680 alone.
Of course, these percentage gains come only in terms of the average frame rates, and with alternate-frame rendering, FPS averages tend to overstate the actual benefit to the end-user in terms of animation smoothness. These results are intriguing but perhaps a little misleading.
Notably, support for DX12's multi-adapter features is developer-dependent, and it's possible many game developers won't bother to offer support for this feature at all, since doing so requires a substantial time investment. We'll have to see what happens as more developers hop on board the DX12 bandwagon.