When CrossFire first launched, there were many criticisms about the design and the famous CrossFire cable. ATI continually claimed that CrossFire was a natural evolution of something it had been doing for a long time in more industrial applications, like flight simulators, but one couldn’t help but think that the implementation suggested otherwise.
In fact, it wasn’t until RV570, known by many as the Radeon X1950 Pro, when ATI actually included native CrossFire support inside the GPU architecture – we heaped praise on AMD for finally adopting native multi-GPU support. The implementation remained the same with the R600 family, where the card required two CrossFire bridges connecting the two cards together.
With RV670, the implementation changes again - however, this isn’t as stark a change as the one required when ATI moved from a non-native solution to a native one. Instead of connecting two CrossFire bridges, you now only need to connect the one when you’re running a pair of Radeon HD 3870s or Radeon HD 3850s in CrossFire.
The reason for this is mainly down to the fact that with the Spider platform, AMD has introduced an extended multi-GPU technology—known as CrossFireX—which includes support for up to four GPUs. The drivers aren’t available at the moment, but AMD says that it will release CrossFireX-enabled drivers in January – we’ll be looking at CrossFireX performance when those drivers are available.
From what we gather at the moment, AMD is limiting CrossFireX to its 790FX chipset, which seems a bit strange given that it doesn’t have the fastest CPU available at the moment. I can understand why, because if it didn’t it would break the whole ethos of the Spider platform, but we had to ask whether it’d happen in the future. However, despite numerous attempts to get confirmation on whether or not this was ever likely to happen, the company refused to comment on whether we’d see CrossFireX support on Intel’s X38 and X48 chipsets.
When I hear someone talk about four GPUs, I remember the horrible time I had when I first looked at Nvidia’s Quad-SLI platform
. Even when the stability issues were ironed out with the GeForce 7950 GX2
, it still didn’t perform as well as it should – a lot of this was down to the fact that DirectX 9.0 didn’t support rendering more than three frames ahead.
This is now fixed in DirectX 10 and you can render more than four frames ahead, meaning that quad-GPU solutions can potentially scale much further than they could under DX9. However, I’m still not convinced and there are a number of reasons for this. The first one is driver support and this is largely because the Nvidia GeForce 7950 GX2 left us with a bad taste in our mouths
when Windows Vista turned up. There was really no support for the company’s previous high-end product from day one and moreover, we are yet to see a driver that supports Quad-SLI under Windows Vista.
The second issue I’ve got is related game profiling and it’s also loosely related to driver support. The problem I’ve noticed in the past is that when new games come out, it usually takes at least a month (depending on when the last Catalyst driver drop was) to get support for dual-GPU CrossFire in the latest games, nevermind CrossFireX with three or four GPUs.
As a technology enthusiast, it’s great to see technology such as this working even remotely well because, after working with Nvidia to debug Quad-SLI for almost a month, I understand how difficult it can be to get the drivers working as they should. However, as a consumer I think it’s fair to say that if I’ve paid for four GPUs, I want to see scaling almost the day a game comes out. I certainly don’t want to have to wait for more than a week to play the latest games with decent scaling across the four graphics cards in my system and if I did, it would surely defeat the point of owning four graphics cards if you’re a hardcore gamer.
That’s not all though, because AMD’s next high-end graphics card will be a dual-GPU monster—the Radeon HD 3870 X2—and will rely on CrossFire support. This concerns me, if I’m brutally honest, but a lot of that is based on the relatively poor support the GeForce 7950 GX2 has had from Nvidia. It’s unfair to tar both driver teams with the same brush, but we’ll be keeping an eye on CrossFire support in games when the Radeon HD 3870 X2 becomes available and the same can be said for CrossFireX support too.
I hope you can understand why I’m sceptical about these products and why I’m treading carefully given the problems many users have clearly had with previous dual-GPU products. I had a good long discussion with AMD about CrossFireX and unfortunately it all got very political rather quickly.
The long of the short is that AMD believes that Nvidia is locking it out of the market with its TWIMTBP programme
—something I’m sure Nvidia would disagree with—and that developers working with Nvidia often make it difficult for AMD to get access to code early enough to develop CrossFire drivers in time for a game’s launch. Whatever the case may be (I try not to get involved with the politics of this industry), I’d really like to see more CrossFire support out of the gate in as many of the big titles as possible - but I don’t think it’s just an issue for the developers to tackle. AMD’s driver and developer relations teams need to pull the strings on AMD’s side of the fence too.
One interesting tidbit I did learn was that AMD is looking at ways to make multi-GPU as transparent as possible, because it no longer sees a future in making increasingly large GPUs. I’m speculating here, but I can see AMD using something like a HyperTransport bus to pass data between the two (or more) GPUs and a PCI-Express controller, which may also have the render back-ends incorporated that talk directly to the on-board memory. It sounds crazy I know, but I really believe that if multi-GPU is going to be the future, it needs to be as transparent for the user as humanly possible.