Slashdot Mirror


Half-Life 2, ATI, NVIDIA, and a Sack of Cash

Latent IT writes "If you're into games, and unless you've been living under a rock for the past few days, you've heard a bit of a rumble from Valve on the relative quality of ATI vs. NVIDIA cards. Starting with articles like this one (previously reported), Valve told the world that the ATI 9800 Pro was nearly three times faster in some cases than the formerly competitive NVIDIA offering, the 5900 Ultra. Curiously, this happened at an ATI sponsored event, "Shader Day". But the story hasn't stopped there. NVidia released this response, essentially claiming that their new drivers, that were available to Valve at the time of their press conference, would make for vast, legitimate performance improvements. An interview with Massive, the creators of the Aquamark 3d benchmark, seems to confirm this opinion - that the NV3x chipset wasn't designed around any certain API very well, and the drivers are critical in achieving good performance. Anandtech writes here about the restrictions Valve placed on what benchmarks could be run. However, the key to this whole story may be this: an article, which I haven't seen get much coverage in all this, seems to make everything a little clearer - Valve stated that their OEM bundling deal with ATI came from the fact that ATI's cards were so superior, and that they were "performance enthusiasts". However, if the Inquirer is to be believed, the bundling deal was a result of an outright auction, on what will probably be the most popular game of the year. Which year that might be, is another issue altogether. Whatever happened to just making hardware, and making games?"

16 of 412 comments (clear)

  1. gaming is big business now... by Loie · · Score: 5, Insightful

    "Whatever happened to just making hardware, and making games?" unfortunately..where there's a multi-billion dollar industry, there's shady business deals.

    1. Re:gaming is big business now... by Kashif+Shaikh · · Score: 3, Insightful

      And you know when a Game Developer has gone big-time? When the phrase "gaming community" is replaced with "our customers", "installed base" with "market share", and "we love to do" with "our interests". Not that its bad or anything, but it has a cold touch of "the guys in suits". And this was how Gabe sounded like on Shader Day. Times have changed.

      OT, one thing I like about Id software is that they are down-to-earth and very objective about the strengths and weaknesses of vid cards.

  2. Not all that deep and mysterious... by Nogami_Saeko · · Score: 5, Insightful

    About all the article in the inquirer says is that Valve put the bundling rights for HL2 up for grabs. Makes sense.

    I don't think that article says anything about one hardware platform being better than the other, and I don't doubt that had NVidia won the bundling deal, they would've had a "NVidia Shader Day" event, regardless of the performance of the product.

    I still find the most interesting point being that Valve says that they had to put in a lot more time and effort making the gaming experience on NVidia cards good than on ATI cards, to the point of developing a seperate graphics path for NVidia chips.

    If the solution to the performance issues was a simple driver update from NVidia (WITHOUT degrading quality in any way), then surely Valve would've left it to Nvidia to handle and proceeded to spend their time working on the game iteself...

    N.

    --
    "Nothing strengthens authority so much as silence." - Charles de Gaulle
  3. Hardware release and driver quality by nemaispuke · · Score: 4, Insightful

    Maybe I'm just dumb but it doesn't seem to make much sense to release new hardware without drivers optimized to take full advantage of the hardware. If you (or a hardware site) has to wait for a new driver to get the performance the vendor specifies for the hardware, I would be real leary of buying hardware from them. From what I saw of the ATI/NVIDA test, the NVIDA card was trounced, so maybe NVIDA should hold off on releasing new cards until their drivers catch up to the hardware.

  4. bla bla bla bla by jimius · · Score: 5, Insightful

    the 45.xx detonator drivers were used for the Nvidia cards because that is the final working driver Nvidia released. The 50.xx which NVidia says should have been used doesn't show fog, which they call a bug and just so happens to create better results. Also the 50.xx drivers were still beta last time I heard. So Valve chose a stable driver over a "bugged" one. Not to mention NVidia's earlier actions surrounding "driver enhancements" wouldn't make them suspicious.

    1. Re:bla bla bla bla by Badaro · · Score: 5, Insightful

      The 50 series drivers were incomplete during HL2 development. The driver samples that nVidia was providing to Valve were milestone drivers - incomplete featurewise, but each completed feature was "complete" (written to specs and considered stable). The fact that fog was not rendering is likely not a speed hack, but an as-yet incomplete (as in not even started in that driver release) feature.

      Even if this is a driver bug and not a speed hack, if there are missing graphical elements in Half-Life 2 with the 50.xx drivers then Valve certainly did the right thing when they asked reviewers not to use them for benchmarking.

      []s Badaro

      --
      My sig became obsolete, and I lack the imagination to create a new one. :(
  5. share the damn drivers! by SHEENmaster · · Score: 4, Insightful

    And let us take a crack at them. Suddenly you'll have NetBSD running directly on the card, twice the framerate in Linux as in windows, and (worst of all) both companies' products will be advanced, eliminating the advantage over one's competitor by tossing more money at the problem.

    Betterment serves no profitable purpose unless it is unatainable by one's competitor. If someone can show how they'll make more money by making a better product while also aiding their competitor in the same endeavor, they might help us out a bit more.

    --
    You can't judge a book by the way it wears its hair.
  6. What about OpenGL? by BillKaos · · Score: 5, Insightful

    What scares me is people doing those benchs in DirectX, and most, people doing games using DirectX. Nvidia certainly didn't made its card to perform good in DirectX's new API, and I don't see the problem.

    What's about OpenGL; I only purchase OpenGL games, because I mostly can make them run in Linux, and WineX is only a ugly workaround to run games in non native enviroment. If I'd a game company, I'd take care of potential Linux customers.

    1. Re:What about OpenGL? by Lord_Dweomer · · Score: 4, Insightful
      " If I'd a game company, I'd take care of potential Linux customers."

      Aside from the comments about how Linux users might be more likely to pirate the games instead of buying them.....I'd like to point out the fact that the Linux userbase is literally NOTHING compared to the Windows userbase. I'm sorry, Linux is nice...but you Linux advocates have to realize that while your system might be superior in many ways....it still just lacks the pure numbers of Windows, or even Mac.

      So, of course you'll get karma for making a pro-linux comment, but you'd never get modded down here for the fact that your idea of taking care of linux users is just a BAD BUSINESS IDEA (at the time). It's a waste of money on support and development when you could make a lot more money for a lot less by developing/support a Windows market.

      So in summary, wishful thinking never hurt anyone....but your idea is not good business move. No hard feelings.

      --
      Buy Steampunk Clothing Online!
  7. Ah, but games arnt written for hardware by T-Ranger · · Score: 3, Insightful

    There written for some type of graphics API, DirectX and/or OpenGL. The days of writing to bare hardware were over more then a decade ago.

  8. Re:Video card benchmarks: the epitomy of dishonest by SD-VI · · Score: 3, Insightful

    They made a deal with Valve, eh? Then why is it that many independent sources (including the developers of AquaMark 3 and John Carmack) have noticed that NV3x has a lot of trouble with PS2.0 and that to get good performance out of it you have to program a special path? And why is it that NV3x clearly only has 16-bit and 32-bit precision when the DX9 specs call for 24-bit? Don't you think this could account for NV3x's terrible "real" DX9 performance? Don't be so quick to jump to conclusions. That having been said, ATi's Linux driver support is shameful, although they ARE working on it. I think they're both fine companies, it's just silly to accuse one of cheating when there's so much evidence to support what Valve is saying.

  9. Re:cant be that bad by mcbridematt · · Score: 5, Insightful

    But then.. ATI hasn't always given a shit about OpenGL, while NVIDIA has.

    "And thats why I'm with NVIDIA"

  10. Blame Microsoft by jettoblack · · Score: 3, Insightful

    After nVidia's falling out with them over the Xbox chipset pricing, its likely MS changed the DX9 spec mid-development and only gave the new specs to ATI. Thats why ATI's cards are perfectly designed to run DX9 but nVidia's specs are off. For example, DX9 calls for 24bit FP, which ATI does, while nVidia only supports 16 or 32bit, forcing developers to choose between correct rendering or improved performance.

    Also nVidia is to blame for their driver cheating fiasco, which makes developers especially weary to trust beta or "optimized" drivers, and for expecting every game company to optimize for their cards just because they're the biggest.

  11. Re:cant be that bad by Nogami_Saeko · · Score: 4, Insightful

    OpenGL was great when there wasn't an alternative (except perhaps 3DFX's Glide).

    Times have changed however, and DirectX development has lept forward in a way that would be nearly impossible for OpenGL to do as quickly. Mainting platform compatbility is great, but it does severely limit the development speed of the language when it comes to new features that developers need. With DirectX, there's a single codebase for all developers that's updated fairly frequently with new features available to everyone.

    I'm not bashing OpenGL, it's a great language that is well suited to jobs where platform cross-compatibility is of paramount importance, industial graphics applications, 3D, etc. That said, most of those said applications now support DirectX as well, but retain OpenGL for compatibility reasons.

    OpenGL is just not all that valuable for games anymore, with DirectX being a better alternative for Windows games where porting to other platforms isn't a concern.

    N.

    --
    "Nothing strengthens authority so much as silence." - Charles de Gaulle
  12. Re:You're both right by CaptCanuk · · Score: 4, Insightful

    With specific reference to OpenGL, games are written in many paths based on the acceleration available on various graphics cards exposed through vendor specific and ARB approved extensions to GL. Drivers optimizations are written both to speed up GL calls and all sorts of other common calculations as well as speed up games by cutting corners. Corners to cut often include what assumptions certain games makes. If a game or game engine makes an assumption such as a static camera, a lot of variable dependencies can be chucked out the window (PTP: pardon the pun) and an "optimization" is born. I would find it hard to believe that a GFX 5800 Ultra would ship with anything less than 75% of the optimal general driver (i.e. nothing game specific or context specific) -- so me thinks the new Detonator 50 has some nice "halflife2.exe" code :P

    Oh, and mentioning DirectX before OpenGL in the same breath might mean you like serializing items in a list in alphabetical order... oh no!

    --
    ---- The geek shall inherit the Earth.
  13. Deal is irrelevant... by Canis · · Score: 3, Insightful
    Whatever the terms of the ATI/Valve deal, it's irrelevant: As a videogame developer (not for Valve -- not even on the same continent as them -- and with no such deal with anyone) I can assure you that NVidia's chips have serious problems.

    Here's Valve's problem: They make moddable games. That's at the core of their business. They didn't just make HalfLife as a game (although they did that, and very well) -- they made it as a platform upon which anyone was free to develop their own FPS games: CounterStrike being the most famous, but there are many others, such as Natural Selection or Day of Defeat.

    Likewise, they are not just making HalfLife 2, but a platform upon which mods will be made. But why is this relevant to the videocard debate? Here's where we get back to the drivers.

    The drivers -- the mythological r50 drivers that noone's actually gotten their hands on yet -- might well provide a speed boost to HL2 as it stands. Maybe. But if they do, it is because they have hand-tuned those drivers for HL2. See Mr Burke's quote:

    [...] we had been working closely with Valve to ensure that Release 50 (Rel. 50) provides the best experience possible on NVIDIA hardware.

    What he omits is, the best experience possible for the specific subset of vidoecard functionality currently present in HL2 at this time. A little background for those of you who haven't kept up on recent videocard technology: Modern videocards have Vertex Shaders and Pixel Shaders. These are essentially short programs written in assembler (and now a variant on C) that the driver compiles and executes on the videocard, not the CPU (taking load off of it) that customise rendering in various ways. Vertex shaders typically perform lighting, animation or mesh deformation effects, while pixel shaders provide surface material effects, such as water distortion or bump mapping.

    ATI's cards appear to be able to handle any pixel shader program you throw at them. Whether this is because the cards are just that fast and general they can cope with it, or whether the compiler in their driver cunningly optimises any GPU program you throw at it (the same way a C compiler optimises CPU code, by reordering instructions to avoid stalls, factoring out loop invariants, etc) we don't know. Frankly, we don't care: The important thing is, we write code, and it works.

    NVidia's cards do not work this way. NVidia's cards are fast, but only if you hand-tune your assembler to precisely match their architecture. Except we don't know enough about their rules to do this (proprietary NVidia technology blah blah).

    When Valve have written shaders, found them to be fast on ATI cards and slow on NVidia's cards, NVidia have released new drivers and, lo... it's fast on NVidia's cards. NVidia go "hey, uh, our bad... driver bug... fixed now...". But make even a tiny, trivial change to the shader, and bam: it's slow again. With a little more experimentation along these lines, it's easy to come to the conclusion that there was no bug, there is no fix, NVidia simply have a lookup table of shaders they 'recognise', and when one of those comes along, they replace it with one they wrote themselves, hand-tuned for their card.

    There's a problem with this, of course. For a start, if you're not as big as Valve, NVidia aren't going to set aside an engineer to go around optimising shaders for your game or release new drivers. Secondly, if you make any changes you're back to square one and need to resubmit your shader to them and get it fixed up. Thirdly, if like Valve you care about modders, you're not going to be happy with this "solution" -- because even once your game is complete and on store shelves, and NVidia have stopped making new driver releases to 'fix' it, modders can make new shaders. And suddenly find their game runs like ass. You think NVidia are going to go chasing after modders? Bwahaha.

    I suspect this is why Valve were careful about the benchmarks they let be