Single page Print

CrossFire X explored

A first look at AMD's three- and four-way multi-GPU tech

GPUs, it seems, are everywhere, breeding like rabbits. We see the introduction of a new GPU seemingly every month, and multi-GPU schemes like SLI and CrossFire are omnipresent. We now have multiple GPUs on a single graphics card, hybrid multi-GPU implementations involving integrated graphics, and more-than-two-way incarnations of both SLI and CrossFire.

The most intriguing bit of multi-GPU madness we've seen recently may be AMD's CrossFire X, simply because in this generation, AMD opted to chain together three or four mid-range GPUs in place of creating a separate high-end graphics processor. That's a bold move, fraught with peril, because multi-GPU schemes can be rather fragile, with iffy compatibility and less-than-ideal performance scaling. Then again, AMD's decision to rely on CrossFire X to round out the high end of its product lineup has surely helped to concentrate its attention on making the scheme work well. So who knows?

We've taken a quick look at AMD's first drivers for CrossFire X, and we have some interesting things to report. Read on to see what we learned.

Extending CrossFire to X
CrossFire X is, quite simply, an extension of the CrossFire dual-GPU feature to three and four GPUs. The hardware to make such a thing possible has been on the market for some time now, and last week's release of the Catalyst 8.3 driver revision finally enabled this feature in software, as well. The basic building block of CrossFire X is AMD's RV670 GPU, which is present in all of the various incarnations of the Radeon HD 3800 series of graphics cards. Getting to three or four GPUs can be achieved using a dizzying number of potential card combinations, which AMD has summarized in this helpful matrix:

Possible card combos for CrossFire X. Source: AMD.

The options are many. You could harness four GPUs together by using a pair of dual-GPU Radeon HD 3870 X2 cards, or given enough PCIe x16 slots, you could achieve a similar result using four Radeon HD 3850s. Cross-breeding is an option, as well, so a Radeon HD 3870 X2 could pair up with a single Radeon HD 3850 in a three-way config. Kinky.

A Radeon HD 3870 matched up with a Radeon HD 3870 X2 on an Intel X38 chipset

The caveat here is that CrossFire X will settle on the lowest core GPU clock, memory clock, and video RAM size to determine the operative clock speeds and effective memory size. As a result, a Radeon HD 3870 X2 paired with a Radeon HD 3850 256MB would perform like a trio of Radeon HD 3850 256MB cards. And, of course, that means the effective memory size for the entire GPU phalanx would effectively be 256MB, not 768MB, because memory isn't shared between GPUs in CrossFire (or in SLI, for that matter).

Like its dual-GPU predecessor, CrossFire X works on a fairly broad range of motherboards, including those based on AMD 480, 580, and 7-series chipsets, as well as boards based on many of Intel's more recent chipsets—among them: the 955, 965, 975, P35, G35, X38, and X48.

CrossFire X's performance and feature set will be more or less optimal depending on the chipset's topology and the motherboard's allocation of PCIe lanes. AMD cites its own 790FX chipset as the most optimal possible config, where the motherboard could dedicate eight lanes of PCIe 2.0 bandwidth to each of four PCIe x16 slots. On the other hand, Intel's P35 chipset would be less than ideal, since it has 16 lanes of PCIe 1.1 connectivity feeding a single PCIe x16 slot off of the north bridge chip, while the second PCIe x16 slot hangs off of the south bridge and has only four lanes connected. The P35's lower bandwidth will impose some limitations on CrossFire X: image compositing must be done in hardware (so you'll definitely need to have those CrossFire bridge connectors attached) and OpenGL support won't be possible.

CrossFire X is either on or off—the user can't specify three- or four-way operation

Of course, CrossFire X will impose its own set of limitations, simply due to its nature. As I've said, multi-GPU schemes are fragile, and more-than-two-way schemes are even more fragile than dual-GPU arrangements. Most of what I said about this subject in my three-way SLI review applies to CrossFire X, as well. CrossFire X will require game-specific profiles in the video driver to work best, and as a new technology, it has a limited stable of game profiles available. Even with a proper profile available, four GPUs will rarely be anything approaching four times as fast as a single GPU. Performance scaling just isn't that easy. In many cases, you'd be lucky to see three times the performance of one GPU. Furthermore, AMD hasn't yet implemented CrossFire X support for OpenGL games in its drivers, and for reasons we'll discuss in a moment, most DirectX 10 games don't yet benefit from the presence of a fourth GPU.

On the plus side, thanks to the power-efficient nature of AMD's RV670 GPU, CrossFire X doesn't impose the almost unreasonable power supply requirements of Nvidia's three-way SLI. Our test system's PC Power & Cooling Silencer 750W PSU, which is both quiet and fairly reasonably priced, had no trouble supplying power to both three- and four-way CrossFire X configs. Heck, a couple of Radeon HD 3870 X2s requires four PCIe aux power connectors, just like a pair of Radeon HD 2900 XTs.

CrossFire X has a few other nice attributes that SLI doesn't share. One of those is the ability to work seamlessly with multiple monitors—no more enabling and disabling multi-GPU mode in order to switch between single-screen gaming and multi-display productivity sessions. We extolled the virtues of this feature in our Radeon HD 3870 X2 review—it's a feature Nvidia's SLI can't match—and AMD now says this capability has been extended to more than two GPUs. Even four GPUs and eight displays ought to work effortlessly, as I understand it, though I've not had the chance to try it out myself. The one drawback here is that 3D apps running in a window are only accelerated by a single GPU. AMD says multi-GPU support in windowed mode is on its roadmap, but not yet ready.

Another new perk AMD has added for CrossFire X is the ability to use the Radeon HD series' custom antialiasing filters in conjunction with the CrossFire "Super AA" mode. Super AA, for the uninitiated, is a GPU load-balancing method in which each GPU renders a different set of sub-pixel samples; those samples are then composited into a highly antialiased final image. The Super AA mode available on the Radeon HD series is a 16X mode. When combined with a wide-tent filter, Super AA can deliver what ATI classifies as "32X" AA. AMD also has an edge-detect custom filter that it claims can achieve up to "42X" AA in combination with Super AA, but that filter isn't available in Catalyst 8.3.

Super AA plus wide-tent filter equals 32X AA

Incidentally, Catalyst 8.3 includes a number of other new features and enhancements for both single- and multi-GPU use. We've already covered those elsewhere, so I won't repeat the laundry list of changes here.