Original Link: http://www.anandtech.com/show/2910
Last year Lucidlogix came to us with a rather amazing claim: we can do multi-GPU better than the guys who make the video cards in the first place. Through their Hydra technology, Lucid could intercept OpenGL and DirectX API calls, redistribute objects to multiple video cards, and then combine the results into a single video frame. This could be done with dissimilar cards from the same company, even different companies altogether. It would be multi-GPU rendering, but not as you currently know it.
That was in August of 2008, when the company was first showcasing its technologies in hopes of finding a suitor. In 2009 they found that suitor in MSI, who are anchoring their new high-end Big Bang line of motherboards with the Hydra. After some bumps along the way, Lucid and MSI are finally ready to launch the first Hydra-equipped board: The Big Bang Fuzion.
We’ve had the Fuzion in our hands for over a month now, as the hardware has been ready well ahead of the software. Lucid has been continuing to develop the software side, and the two parties are finally ready to sign off on the finished product, although Hydra is still very much a work in progress.
The Big Bang Trinergy, the Fuzion's identical twin
As we’re currently in Las Vegas for CES (where MSI is launching the Fuzion), today we’ll be taking a quick look at the performance and compatibility of the Hydra, to answer the most burning of questions about the technology. Once we’re back from CES, we will be following that up with an in-depth look at image quality, edge cases, and other deeper issues. We’ve only had the newest drivers for a few days now, so we haven’t had a chance to give it a complete workover.
Finally, this is just a look at the Hydra technology itself. We’ll have a separate review of the Fuzion board as a motherboard at a later time. However it’s virtually identical to MSI’s other Big Bang board, the NVIDIA NF200-equipped Trinergy. The only significant difference between the boards is that the Fuzion has the Hydra chip, while the Trinergy has the NF200.
With that out of the way, let’s get started.
Where AFR Is Mediocre, and How Hydra Can Be Better
Perhaps it’s best that we first start with a discussion on how modern multi-GPU linking is handled by NVIDIA and AMD. After some earlier experimentation, both have settled on a method called Alternate Frame Rendering (AFR), which as the name implies has each card render a different frame.
The advantage of AFR is that it’s relatively easy to implement – each card doesn’t need to know what the other card is doing beyond simple frame synchronization. The driver in turn needs to do some work managing things in order to keep each GPU fed and timed correctly (not to mention coaxing another frame out of the CPU for rendering).
However even as simple as AFR is, it isn’t foolproof and it isn’t flawless. Making it work at its peak level of performance requires some understanding of the game being run, which is why for even such a “dumb” method we still have game profiles. Furthermore it comes with a few inherent drawbacks
- Each GPU needs to get a frame done in the same amount of time as the other GPUs.
- Because of the timing requirement, the GPUs can’t differ in processing capabilities. AFR works best when they are perfectly alike.
- Dealing with games where the next frame is dependent on the previous one is hard.
- Even with matching GPUs, if your driver gets the timing wrong, it can render frames at an uneven pace. Frames need to be spaced apart equally – when this fails to happen you get microstuttering.
- AFR has multiple GPUs working on different frames, not the same frame. This means that frame throughput increases, but not the latency for any individual frame. So if a single card gets 30fps and takes 16.6ms to render a frame, a pair of cards in AFR get 60fps but still take 16.6ms to render a frame.
Despite those drawbacks, for the most part AFR works. Particularly if you’re not highly sensitive to lag or microstuttering, it can get very close to doubling the framerate in a 2-card configuration (and less efficient with more cards).
Lucid believes they can do better, particularly when it comes to matching cards. AFR needs matching cards for timing reasons, because it can’t actually split up a single frame. With Hydra, Lucid is splitting up frames and gives them two big advantages over AFR: Rendering can be done by dissimilar GPUs, and rendering latency is reduced.
Right now, the ability to use dissimilar GPUs is the primary marketing focus behind the Hydra technology. Lucid and MSI will both be focusing almost exclusively on that ability when it comes to pushing the Hydra and the Fuzion. What you won’t see them focusing on is the performance versus AFR, the difference in latency, or game compatibility for that matter. The ability to use dissimilar GPUs is the big selling point for the Hydra & Fuzion right now.
So how does the Hydra work? We covered this last year when Lucid first announced the Hydra, so we’re not going to cover this completely in depth again. However here’s a quick refresher for you.
As the Hydra technology is based upon splitting up the job of rendering the objects in a frame, the first task is to intercept all Direct3D or OpenGL calls, and to make some determinations about what is going to be rendered. This is the job of Lucid’s driver, and this is where most of the “magic” is in the Hydra technology. The driver needs to determine roughly how much work will be needed for each object, also look at inter-frame dependences, and finally look at the relative power of each GPU.
Once the driver has determined how to best split up the frame, it then interfaces with the video card’s driver and hands it a partial frame composed of only the bits it needs to render. This is followed by the Hydra then reading back the partial frames, and compositing them into one whole frame. Finally the complete frame is sent out to the primary GPU (the GPU the monitor is plugged into) to be displayed.
All of this analysis and compositing is quite difficult to do (which is in part why AMD and NVIDIA moved away from frame-splitting schemes) which is what makes Hydra’s method the “hard” method. Compared to AFR, it takes a great deal more work to split up a frame by objects and to render them on different GPUs.
As with AFR, this method has some drawbacks:
- You can still microstutter if you get the object allocation wrong. Some frames may put too much work on the weaker GPU
- Since you can use mismatched cards, you can’t always use “special” features like Coverage Sampling Anti-Aliasing unless both cards have the feature.
- Synchronization still matters.
- Individual GPUs need to be addressable. This technology doesn’t work with multi-GPU cards like the Radeon 5970 or the GeForce GTX 295.
This is also a good time to quickly mention the hardware component of the Hydra. The Hydra 200 is a combination PCIe bridge chip, RISC processor, and compositing engine. Lucid won’t tell us too much about it, but we know the RISC processor contained in it runs at 300MHz, and is based on Tensilica’s Diamond architecture. The version of the Hydra being used in the Fuzion is their highest-end part, the LT24102, which features 48 PCIe 2.0 lanes (16 up, 32 down). This chip is 23mm2 and consumes 5.5W. We do not have any pictures of the die or know the transistor count, but you can count on it using relatively few transistors (perhaps 100M?)
Ultimately in a perfect world, the Hydra method is superior – it can be just as good as AFR with matching cards, and you can use dissimilar cards. In a practical world, the devil’s in the details.
A Look at the Hydra Software
At the center of all of this is the Hydra software, which as we said before is where much of the magic is happening.
Once installed, the Hydra software sets up a control panel that allows the user to enable/disable the Hydra feature, and to adjust game profiles.
Yeah, you read that right – we still haven’t completely escaped profiles.
At its highest level, the Hydra software is generic. It looks at just D3D/OpenGL commands and decides where to go from there. However the process isn’t perfect, and a lot of games encounter errors with the current drivers. So in order to keep the Hydra feature from being enabled on games that can’t handle it, Lucid keeps a list of approved games, which are built into the software as profiles.
Think of this as lite-profiles however. The profiles are simply a list of executables that the Hydra feature has been tested on and approved; the profiles aren’t a list of game-specific optimizations like NVIDIA and AMD’s game profiles are, and as far as we can tell Lucid isn’t doing any other game detection in the drivers, so it’s as generic as they claim. To this extent, the profiles serve largely as a list of recommended games, rather than an absolute list. You can easily add additional game profiles to the list, however there’s obviously no guarantee that they will work correctly with the Hydra.
The latest version of the Hydra driver is version 1.4, which was released this past week. The Fuzion board is shipping with 1.3, while the 1.4 drivers will be available for download.
Currently only Direct3D 9, 10, 10.1, and OpenGL are supported. The Hydra software does not support DirectX 11 (not that you currently have a lot of cards to choose from), which is something Lucid will be adding in March with the 1.5 drivers. Also coming in the 1.5 drivers will be much more generic support for video cards. Right now the software only supports video cards on a hardcoded list (e.g. the 1.3 drivers didn’t know about the Radeon 5000 series), with the 1.5 drivers they will recognize and support every card within an entire family, including unreleased cards. So a Radeon 5860 for example would be supported, which means the drivers won’t be out of date the moment someone releases a minor new card variant.
Speaking of new releases, we asked Lucid about what the software support policy is for the Hydra. They are planning on quarterly releases (1.4 being their Q4’09 release), which worries us somewhat. The issue is that the Hydra technology runs the risk of being out of date for months at a time. When NVIDIA launches Fermi, it won’t immediately work with the Hydra. If a hot new game comes out and doesn’t already work with the Hydra, you’ll have to wait. Lucid has said that they’re willing to do minor drops if a situation particularly demands it, but it’s not a concrete promise like quarterly driver releases are. And to be fair we encounter these things with NVIDIA and AMD as well, but AMD and NVIDIA have proven to be fairly reliable in getting beta/hotfix drivers out when it counts.
For anyone curious, Lucid has said that it takes them on average a couple of weeks of work on their end to build in support for a new family of video cards. When Fermi is released, potentially it may be supported by the Hydra in a short period of time.
Finally, we’ll quickly cover some terms that Lucid is using to describe various card configurations. A-Mode is the name for running 2 AMD cards. N-Mode is for running 2 NVIDIA cards. And X-Mode is for running a mixed pair of cards. This matters since some games don’t work with all of the modes.
The unfortunate state of reality for the Hydra technology right now is that the game support is still rather limited. In the last month Lucid has been putting most of their effort into getting X-Mode working (in the 1.3 drivers, it only worked on a couple of games, now it’s 40+) since X-Mode only became possible later last year with the launch of Windows 7. A-Mode and N-Mode are better supported than X-Mode, with between 60 and 70 games supported depending on the specific mode.
Besides working on X-Mode, Lucid has been working on various games based on a triage list of sorts to decide what gets added first. They’re effectively adding games based on their popularity & sales, which means that many popular games are already on the list.
Under normal circumstances we would agree with this list, but launching the Hydra with the Fuzion first presents us with an odd situation. Most popular games aren’t graphically intensive games, but the Fuzion is quite the expensive motherboard. What this means is that we can’t imagine anyone is going to pair the Fuzion with anything less than an equivalently-priced video card, which at this point in time would be the Radeon 5850. The Radeon 5850 runs just about everything well, in fact it’s a challenge for us to come up with things it doesn’t run well. The things it doesn’t run well, like Crysis and Battleforge, aren’t fully-supported games. So the Hydra is of limited utility at this point in time if it can’t be used to pair up powerful cards on graphically intensive games.
The Test & Our Results
With the limited game support for the Hydra and our limited time with the new drivers, we’ve had to throw out most of our usual video card testing suite. What we have here are games that are on the approved list and are at least somewhat graphically challenging, but by no means is it a complete list. As FRAPS and the Hydra software do not currently get along, we’re limited to games with built-in frame counters. This is also the reason that we will be doing an in-depth look at the image quality of the Hydra after CES, when we have more time to come up with ways to take screenshots.
Unfortunately our testing today will only paint a limited picture. The Fuzion board does not have SLI support, which means we cannot test a pair of NVIDIA cards in SLI and use that as a baseline for N-Mode performance. We’re hoping to track someone down from MSI here at CES in order to explain why the Fuzion doesn’t have SLI support, as this is a major oversight for a high-end board. Whether NVIDIA was willing or not to license SLI to MSI for the Fuzion is going to be the single biggest question hanging over our heads. Update: We have since received an official response from MSI. They did not implement SLI support as they felt the performance with Hydra was close enough to make SLI support unnecessary. We still find this questionable.
For our performance testing, we used the following games: Call of Juarez (DX10 benchmark), HAWX, Resident Evil 5, Company of Heroes, and Batman: Arkham Asylum. Batman is not supported under X-Mode, so we’ll leave it out of X-Mode testing.
We’ll start with Call of Juarez, which is one of the Hydra’s better titles. With our 5850s in Crossfire, we get 94fps, which is just less than double the performance of a single 5850 (49.5). Right off the bat the Hydra takes a noticeable performance dive when using a pair of 5850s, splitting the difference between 1 and 2 cards with 75.6fps. Certainly it doesn’t look like Hydra can beat SLI/Crossfire, so it shouldn’t come as a surprise that Lucid and MSI aren’t claiming otherwise.
Moving to A-Mode with dissimilar video cards, we get some more definitive good news. Combining a 5850 and a 4890 gets us 61.9fps, a 25% performance improvement. This is less than the raw power of the 4890 (which is to say, in a perfect situation the 4890 performs at well more than 25% of a 5850) but it’s solid proof that this works.
As for the NVIDIA side, since we don’t have SLI results we’ll have to look at single-card and Hydra results. While 1 GTX280 gives us 30.8fps, a pair of them in N-Mode gives us 53.9, a 75% increase. This is much better than the increase we got on the 5850s, and much closer to the 100% theoretical max that we expect SLI is close to.
Switching to a GTX280 + 9800GTX+, things aren’t so rosy. The performance difference is practically absent at 0.2fps. While the Hydra technology scales worse the more mismatched a set of cards are, this is particularly awful.
Finally we have X-Mode using a 5850 + GTX280, with the AMD card as the master card. Here we get 43.5fps, which is slower than a single 5850. During this time we got significant microstuttering and striping in the image. Our best guess is that the Hydra was having trouble in the compositing phase, as the striping is a product of that. However in A-Mode and N-Mode we encountered no such issues. To the naked eye, Call of Juarez looked just as good in A-Mode and N-Mode as it does on a single video card.
Moving to our old standby of HAWX, the picture is similar. Hydra performance on the 5850s is still below CF, but it’s still a 50% improvement. 5850 + 4890 is a 20% performance improvement. The GTX280s weren’t quite a success story however – HAWX crashed with a Lucid driver error when attempting to load the main menu of HAWX. Strangely the GTX280 + 9800GTX+ had no launch issues, rather the combination significantly underperformed the single GTX280 at -56%. Finally the 5850 + GTX280 came in at 58fps, which at a few fps faster than the lone 5850 is less than flattering.
Besides the single crash at no point did we see evidence of graphical corruption. HAWX always rendered correctly, even in X-Mode.
Resident Evil 5, in spite of being on the approved game list, was problematic for all Hydra modes. Every mode suffered from the same flickering problem (we suspect it’s lighting related), which doesn’t make the game unplayable but does make it annoying to play.
The performance however was very, very good. The 5850s got within 4% of CF mode, and the 5850 + 4890 still offered a solid 33% performance boost. The GTX280s did 57% better than a single GTX280, and the GTX280 + 9800GTX+ was the odd man out by losing performance. In X-Mode, the 5850 + GTX280 managed to squeak ahead of the single 5850 by 3.5%.
Company of Heroes is another game on the supported list that we didn’t have much luck with. There was no graphical corruption this time around, but instead it crashed on every mode involving an AMD card.
As for the NVIDIA cards, the GTX280s picked up about 30%, and the GTX280 + 9800GTX+ lost nearly the same 30%. There was no graphical corruption to report.
Finally we have Batman: Arkham Asylum, one of the most popular games of 2009. It doesn’t work in X-Mode, but does in N-Mode and A-Mode.
Unfortunately for the AMD cards, Lucid is having some scaling issues in A-Mode, something they do note in their release notes. A pair of 5850s is barely better than a single 5850, and a 5850 + 4890 flat-out isn’t better. The GTX280s pick up 15%, and the GTX280 + 9800GTX+ loses over 20%.
Frankly our testing experience was a mix of failures and successes, and this was sticking to the approved games list. Not a single game we picked to test worked perfectly in all cases, and the 1.4 driver release notes are a minefield of known issues. And unlike NVIDIA/AMD’s known issues, which tend to affect esoteric hardware and games, these are issues on what would be reasonably common high-end hardware configurations with popular games.
Here is by no means a complete list of games with known issues of graphical corruption: Call of Duty 4, World in Conflict (DX10), Rainbow Six Vegas 2, Operation Flashpoint Dragon Rising, Resident Evil 5. And as we’ve seen, this doesn’t include crashes, or undocumented graphical corruption.
We held off in doing significant testing on our Fuzion board until we had the 1.4 drivers in order to give Lucid time to get their next driver set out, since that set would be available when the hardware shipped. It was our hope in that moving from the 1.3 to 1.4 drivers that we’d see a reduction in graphical corruption compared to our tests in December when Lucid and MSI sent reps out, but that has not been the case.
This is by no means a complete list, and we aren’t going to claim otherwise. But in our testing thus-far, the Hydra drivers clearly need much more work. Frankly, we hesitate to think about what might have happened if the Fuzion shipped in November as originally announced.
As we’ll be following up on this article with a look at more games, image quality, and hopefully some feedback from MSI and Lucid, let’s stick with some first thoughts rather than some final thoughts.
To Lucid’s credit they have demonstrated the viability of their technology. They are successfully splitting up frames through API interception, compositing them, and spitting out a final frame. We don’t have any doubts that the technology can work, otherwise we wouldn’t have any successes to talk about today.
But what they have is clearly not enough. Too many “supported” games have issues and too many graphically intensive games that would be a good match for the Fuzion board are unsupported. Crysis may not be a high-scoring or widely-purchased game, but what else is there that a single 5800-series card can’t handle on its own? The ability for the Hydra technology to work on lighter games like Portal and Lego Indiana Jones is basically lost on a Fuzion board.
In our limited testing, there is little else we can say besides the fact that the Hydra software needs more development. Lucid needs to squash the graphical corruption and the crashes, and then they need to work on getting more product-appropriate games supported. More performance is almost a must, but at this point it would be a bigger sign of progress if the glitches went away first.
MSI is taking a big risk on Lucid and the Hydra here, but they themselves have also stumbled on their attempt to get into the high-end motherboard business. While this is not a motherboard review, we can’t wrap our heads around the fact that the Fuzion doesn’t support SLI. If a $350 motherboard doesn’t support SLI, what will? If you buy this board and the Hydra technology doesn’t pan out, you’re effectively limited to AMD cards if you still want to go the multi-GPU route, and that’s a risk that can’t be ignored.
Ultimately, I’m reminded a great deal of the PhysX launch. We have a product that could significantly impact PC gaming, costs a decent chunk of change (Anand estimates the Hydra 200 chip in the Fuzion to run at $80), and at launch doesn’t do enough to justify itself. As we have said since the Hydra announcement, the technology has a great deal of promise – but right now it’s not delivering on that promise.
As with any kind of promising technology that can shake things up as much as the Hydra can, we’re hopeful for the future, but you can’t ignore the present or the path to the future.
We’ll have more on the Lucid Hydra next week in Part 2 of our review.