Forgot your password?
Quake First Person Shooters (Games)

ATI Drivers Geared For Quake 3? 511

Posted by timothy
from the arbitrary-benchmarks-met-arbitrarily dept.
alrz1 writes: "HardOCP has posted an article wherein they accuse ATI of writing drivers that are optimized for Quake 3, just Quake 3, and only Quake 3. Apparently, using a program called quackifier, which modifies the Quake3 executable by changing every "Quake" reference to "Quack" and then creating a new executable called "Quack3", they have demonstrated to some extent that the Quack3.exe benchmarks are around 15% slower than with the original Quake3.exe (same box, os, drivers, etc). The slant seems to be that there is something inherently wrong about writing game-specific optimizations into drivers, if in fact this is what ATI has done. I think this is perfectly acceptable: Quake 3 is the biggest game out there on Windows, and if ATI has invested a little extra time into pumping a few extra (meaningless) frames out of your Radeon 8500, is this really an act of treachery?"
This discussion has been archived. No new comments can be posted.

ATI Drivers Geared For Quake 3?

Comments Filter:
  • Wha?? (Score:5, Interesting)

    by FortKnox (169099) on Wednesday October 24, 2001 @02:45PM (#2473612) Homepage Journal
    Seeing that CounterStrike [] has the largest online community, killing both Q3 and UT communities, and that quality mods [] are still coming out of Halflife, wouldn't it be smarter to target the bigger audience??
    • by crisco (4669)
      Yeah this was my first response to timothy's posting, that the relatively ancient Half-Life engine is much more popular than Quake 3. Of course, how many benchmarks do you see for Counterstrike?

      Probably because the engine is old and doesn't strain today's crop of computers it isn't worth bothering with. My old P200 with VooDoo2 card ran the HalfLife mods passably, if not exactly smoothly (15-40fps @ 640x480).

    • ATI knows that just about every review compares cards primarily based upon Quake 3 (looks at any of a large number of sites to see this), often under the premise that it's totally relevant because so many current and up-and-coming games are based upon the Quake 3 engine.

    • Indeed halflife is the largest actively played windows game out there, but anandtech dosent benchmark on half-life. It would seem they're attempting to rectify their reputation as a company that puts out crappy drivers or as a company that has good cards that never see their potential.
  • by OmegaDan (101255) on Wednesday October 24, 2001 @02:46PM (#2473622) Homepage
    When intel optimizes adobes plugins at the expense of amd processors -- so they can use it as a benchmark -- thats ok as well?
    • No, but... (Score:5, Informative)

      by mblase (200735) on Wednesday October 24, 2001 @04:19PM (#2474173)
      It's not unethical to optimize your hardware for a particular piece of software.

      It is unethical to then use that software for a competitive benchmark, without telling anyone you've done the optimizing.

      The first is an example of giving your customers what they want. The second is an example of manipulating independent reviews to give misleading data.
      • Last time I checked a video card review, Quake 3 rated right up there in the top of the benchmarks being run.

        Sounds to me like ATI's behavior is a response to that, and so is unethical.

  • by egomaniac (105476) on Wednesday October 24, 2001 @02:46PM (#2473627) Homepage
    This is benchmark manipulation more than trying to give customers benefits. They know perfectly well that Quake 3 is used as a benchmark, so they artificially inflated their scores.

    This is nothing new, and I don't think the fact that they're catering to a real program rather than an artificial benchmark makes it any less reprehensible.
    • by general_re (8883) on Wednesday October 24, 2001 @02:53PM (#2473702) Homepage
      Normally I'd agree with you, but that's because in many cases, vendors seem to tune their drivers for the benchmarks at the expense of everything else - Q3A scores go up, but real-world performance suffers. If they've figured out some way to boost Q3A performance without having some performance trade-off somewhere (and they aren't spending so much time on Quake tweaking that their drivers lag in other areas), then I say it's fair game....
    • ATI repeats itself (Score:3, Insightful)

      by D3 (31029)
      Many years ago I bought an ATI expert@play card because it had good Quake benchmark numbers. Guess what, they had written the drivers for that benchmark and the card itself couldn't actually play games at the speed the benchmark indicated. Nothing new here. This is also why I stopped buying ATI cards.
  • by Royster (16042) on Wednesday October 24, 2001 @02:47PM (#2473635) Homepage
    I think this is perfectly acceptable: Quake 3 is the biggest game out there on Windows, and if ATI has invested a little extra time into pumping a few extra (meaningless) frames out of your Radeon 8500, is this really an act of treachery?"

    Yes it is. It's writing for the benchmark rather than writing for the user.

    I'm reminded of a Richard Feynman quote "For a sucessful technology, honesty must take precedence over public relations for nature cannot be fooled."
    • by StenD (34260)
      It's not even writing for the benchmark. If it was writing for the benchmark, then functions heavily used by Quake would be more optimized, but it wouldn't matter if the program which used the functions was named "quake.exe" or "quack.exe". This sounds like a marketing payoff, where the publisher of Quake is paying ATI to slow down competing games. I can't think of any other rational explanation for the drivers to care about the name of the executables.
      • StenD writes:

        This sounds like a marketing payoff, where the publisher of Quake is paying ATI to slow down competing games. I can't think of any other rational explanation for the drivers to care about the name of the executables.

        Alternate suggestion: The driver surely has performance tradeoffs that need to be tuned, many complex performance-critical drivers do. Perhaps when ATI got the driver tuned well for general purpose applications, they found it worked badly for Quake. Rather than make everything work less well so Quake could be happy, they watch for quake.exe and give Quake its own custom tuning.

        I'm not saying this is the case, it's merely another rational explanation, in my opinion.
    • It's writing for the benchmark rather than writing for the user.

      Completely irrelevant. Quake 3 may be a benchmark but it's a benchmark which users use on a daily basis - because it's a game first and a benchmark second. Your argument is equivilant to stating that Seagate engineers for the benchmark instead of the user when they make hard drives with higher throughput. Seagate optimizing for Microsoft Disk Performance BusinessBenchmark 2001 would be cheating, optimizing for latency and throughput are not (nor would optimizing for opening a large file in photoshop...but I don't see that happening in a disk drive).

      Where ATI did screw up is in their shoddy engineering. The developers should be ashamed of themselves. If there's a 15% (!) performance gain to be had using the same hardware between the "default" behavior of the drivers and some optimized behavior, they should really find a better way than looking at the name of the freaking program being run. Maybe that means having intelligent drivers that benchmark themselves during the first few minutes of gameplay, seeing which set of code produces the best results, and using that afterwards; but I'm skeptical of saying this couldn't be done in a more generic way.

  • by SanLouBlues (245548) on Wednesday October 24, 2001 @02:47PM (#2473643) Journal
    Why the hell do they not want everything else to be similarly optimized?
    • If it truely is a issue of the drivers running faster because they know it was quake (not a program that is uses graphics calls in a certain way, but it is acutally an executable called QUAKE3.EXE with quake3 strings inside), then it's not an issue of tuning. If the drivers were 'tuned', they would be optiomized for the way the quake3 engine uses/makes graphics calls. Changing the STRINGS would have no effect.

      I'm beginning to think this is is some sort of collusion, although the benefit seems lost to me...

  • It IS wrong... (Score:5, Informative)

    by levendis (67993) on Wednesday October 24, 2001 @02:47PM (#2473644) Homepage
    Take a look at this article [], its in German, but the pictures are worth 1000 (english) words. Mouse over the ATI pics to see the "cheat" version versus the normal ATI version. Clearly they are sacrificing image quality for speed.
    • The 'normal' ATI images look better than the NVidia images, the 'cheat' images look horrible. I can't read German so I have no idea what the context is. Now if the differences were an option that was clearly labeled, that would be fine, just like Quake's quality levels that can be set. But if it is just dumped in with the next rev of drivers, that would suck. With today's crop of computers, I'd probably be quite happy with the higher image quality still at 90 fps (or whatever).
      • I ran babelfish on the page, the Germans suspect that the drivers run the display at 32 bit resolution, but drop the textures down to 16 bits.

        Sounds a bit cheaky to me. The kind of screenrate you get with these cards is already very high, dropping the framerate for better resolution would be better for most people I suspect. If all this is right, the company has basically screwed their customers for a better benchmark, to sell more cards or to push the price up on the cards they sell. (IMHO).

        Still, if you pay more for a graphics card for 10% extra performance when the performance is as high as this anyway, you are practically begging for them to trick you I suppose. Doesn't make it right though.
    • by Nindalf (526257) on Wednesday October 24, 2001 @03:24PM (#2473901)
      Different video cards give different quality video, so benchmarks have to take that into account. Some are butt-ugly or just plain wrong, and competent hardware reviewers mention that.

      They always have to make trade-offs between frame rate and image quality, what makes tweaking this trade-off for certain games necessarily some kind of trickery?

      Id's games have always tended to be a bit freakish, based on unusual, privately researched approaches. Maybe the standard approach isn't perceived as being as playable for Quake 3.

      Ideally, they could tweak the system for every individual game, but maybe it's just a case of focusing such efforts on a particularly popular title. Others have pointed out that there are more popular high-performance games, but it would make sense that the default would be optimized for the most popular games, and exceptions coded only for those nearly as popular but different enough for the default settings to be sub-optimal.
      • The point is that users can already lower the settings to get better framerates. Why don't they let the users decide? Because that wouldn't help their scores in one of the most popular benchmarks, of course. The main problem with the claim that they are just tweaking the driver to help out with a certain game is that they didn't disclose this little tidbit to reviewers! If this is such a noble effort to help the gamers get more performance, why haven't they said anything about it?

        • The point is that users can already lower the settings to get better framerates.

          But can they do it in the same way?

          Just how complicated should user configuration be? If it's a matter of juggling a dozen different variables to come up with an optimal view, then it's better not to give that control to the user, though it would be impolitic for them to say so. Regardless of how complex the problem is, most gamers (especially the more vocal ones) would believe they could come up with a better configuration, so they'd fiddle with the settings, then blame any problems this causes on the video card and be bitchy over the time they "had to waste to get it to work half-decently."

          The problem doesn't likely reduce to a single slider-control that runs from high-quality/low speed to low-quality/high speed.
          • It's quite easy to change the detail levels and such in Quake3. Anyone could do it without even knowing a thing about graphics. Of course it's possible to get even finer control by juggling a dozen different variables, but it's by no means necessary. And ATI isn't giving them that fine control with this hack either. It does the same thing that the simple Q3 options let anyone do (i.e. increase framerate at the expense of image quality), except that ATI doesn't let the user choose for himself.

            • And ATI isn't giving them that fine control with this hack either.

              That doesn't mean that they aren't exercising that fine control. My whole point was that it would be counterproductive to offer that complex, fine control to the end-user.

              It does the same thing that the simple Q3 options let anyone do

              There is no evidence to support this claim. There are many aspects of image quality ("more things in heaven and earth than are dreamt of in your philosophy"), and nobody has presented evidence that the exact performance of the Quake exe can be duplicated in the Quack exe merely by changing settings available to the user.

              I don't accept that the Quake images are simply of worse quality, either. I've looked at the images, and while there are distinct differences, it's hard to say which is better. In the zipped tgas provided, there is more detail in the textures of of the Quack sample (especially noticable on the teeth), but some of the complex relief shading (particularly on the armor) seems indistinct by comparison. Also, the jaggies seem worse in the Quack version. It's even harder to say which looks better when you're playing just by looking at stills.

              Besides, maybe Quake 3 has a few scenes that cause it to really bog down with the default settings: you go around, happily accepting your 15% FPS hit for the slightly better image quality, then you go around a corner and suddenly it's an 80% FPS hit in a crucial scene, and practically unplayable. It's better not to allow users to set it that way if it's not sustainable, because people get really annoyed at that kind of inconsistant performance.

              The fact of the matter is that we don't know why they did it, and until you try it for yourself, you don't even know what the real effect is. Of course it's possible that this was an underhanded trick, but we don't know that yet. I'm sure we'll hear more as the testers dig into it and ATI responds, so keep an open mind instead of jumping to conclusions.
      • The difference is that Quake 3 is used for benchmarking a lot because with the detail cranked all the way up, it really stresses video cards in certain areas. Judging from the article, the ATI drivers intentionally ignore certain detail settings (like MiP mapping and some texture depths) above a certain level, automatically lowering them to something lower than what the user asked for. More damning is the fact they only do it when Q3A is running, which definitely suggests they're doing it to artificially raise benchmark scores.

        This IMHO is deception because when I see benchmarks for Q3A High Detail I'm expecting a representation of how the card perfoms when rendering textures at the highest possible detail, not at detail levels lowered to boost benchmark scores. This would be like ATI advertising their cards' Medium Detail scores compared to nVidia's High Detail scores, and justifying it by saying that when I'm playing Q3A I probably won't notice the difference.

    • There's always a trade off between image quality and raw speed. Game Designers know this. Chip Designers know this, and reviewers know this. Most of the video chipset reviews I've read report on image quality.
      If tweaked benchmarking takes off- we might see reviews such as the following:
      nVidea Geforce 4 Extreme Titatinum Edition Plus
      240 fps-- looks like crap, though. Nvidea needs to stop using 12bit textures.
      ATI Radeon III 65536
      210 fps-- slightly slower speed, but sharp images.
      nVidea Geforce 4 (with firmware hacked to use "Pro" drivers)
      200 fps-- absolutely beautiful.
    • Looks like a slight discrepancy in the gamma leves... but the details seem similar..
    • to everyone who is saying "sure, you always have to trade quality for speed"....

      Yes, that is true, but that misses the point. When I read a review/comparison of video cards, I am assuming that the benchmarks are based on fairly real-world situations. That what makes Quake 3 such a great benchmark - almost every gamer has played it, and is at least generally familiar with how torturous it is to the standard video card. Everyone also knows that you can improve the FPS by lowering resolution, using 16-bit textures, etc etc

      When I look at a comparison of Quake benchmark scores on, say, Tom's hardware, they are meaningful because they are a comparison of video cards, all else being equal. If ATI is specifically lowering quality on Quake3 (not just the Quake3 engine, but the game itself) to increase FPS rate, clearly they are doing this to stand out in such comparisons, and clearly this is - if not outright fraudulent - misleading and manipulative.
      • If Nike discovered that people who bought running shoes and would buy them only with good ancle support for runners -- would you honestly complain when you bought the shoe and it hurts while walking?

        People who buy fast videocards usually do so because they want high FPS in Id games -- Quake 3 more recently (god only knows why). So they're giving the people what they want. If only the music industry worked like this...
    • The gist of the article: for quake the atidrivers apparently only use 16 bit textures (this makes the difference with the "100" on the first page) and simply use a lower mipmap-level for textures (that is, they only use the graphic detail of the texture that would be used if it were farther away (and thus smaller). But the detail level of surfaces contains information that is often vital: The detail depends on the distance of the surface, if a surface is very detailed it is nearer than a surface with less detail. If you only see a part of a surface (through a gap or window for example) the detail is the only hint how far that surface is away. Many gamers probably use this information automatically without thinking about it. With the 'quake-improved' drivers someone accustomed to the previous detail levels will probably estimate that objects are farther away now (since they are less detailed). Even after being accustomed with the new detail levels, it still makes a difference: the more detailed a texture is, the smaller is the piece of surface you need to see to estimate how far it is.

      To apreciate the importance of textures and structured surfaces for depth perception try q3a with different texturesettins and see what a difference that makes in a map like q3dm19. In quake 1 you could even switch of all textures, then, staring at a plain wall, you couldn't tell if it was 10cm, 1m or 10m away.
  • There's no problem with writing version-optimized drivers.

    The update or improvement of such software is probably intended, first, for the new Quake buyers. It's a company that occasionally serves a fan base, it's not enslaved to the fan base that has all previous versions.

    It's like a new model of a car with a beautiful v-8 engine that previous models have always used. If the new model is configured to optimize engine performance, it's not discrimination against collectors of previous models.

    • Your analogy doesn't quite click. You're describing simple product improvement. (GeForce 4: Now with variable valve timing and dual intake runners!)

      What ATI's doing is more like this: A beautiful V8 engine that makes 300 bhp on most roads, but can detect when it's on I-80. There, it makes 320 bhp, but knocks like an over-caffeinated Jehovah's Witness. Oh, and you have to change all the signs along I-80 to read "J-80" to get the engine to quit knocking and behave right.

      If ATI could have found a few more frames per second without making the textures all fuzzy, more power to 'em. But I can get the same effect from another card by turning down the texture settings myself. This stunt served only ATI's PR flaks, up to the point where they got caught.
    • I went tire shopping this past weekend and saw a tire that is optimized for driving in the rain! And another for snow! They outwardly bragged that they had done special modifications that made them the best choice for those challenging weather conditions.

      When I asked how these tires would work on my uber-blown V8 Pinto wagon for those straightlines down the quarter-mile, he told me that they wouldn't do much good unless I was trying for the best ET down at the duck marshes.

      Can you believe it? The tire manufacturers make tires that perform exceptionally well in specific situations. There ought to be a law against it, that's for sure.

      • They outwardly bragged that they had done special modifications...

        I believe the phrase you are looking for is truth in advertising.

        If ATI had said upfront that the drivers were enhanced for Quake III, there wouldn't be nearly as much fuss (Except maybe us Unreal Tournament fans. :-) ) Unfortunately, there is no disclosure, before or after the sale, that the drivers degrade image quality in Quake III for the sake of a higher benchmark score. Even without the texture problems, it's dishonest. The lack of image quality just adds insult to injury.
  • hey guys (Score:4, Funny)

    by cosmo7 (325616) on Wednesday October 24, 2001 @02:51PM (#2473675) Homepage
    does the same thing happen to Duck Nukem?
  • Let's try to start a flame by not posting stories that have FLAMEBAIT in them. That's what the comments are for.

    Quake 3 is the biggest thing... for people who haven't found that everything else is better. HA! Now let the flamewar begin!
  • >and if ATI has invested a little extra time into pumping a few extra (meaningless) frames out of your Radeon 8500, is this really an act of treachery?

    Not if they:

    a) didn't sacrifice performance for other games ONLY to get more out of quake3 (probably not the case)

    b) admit that its true, if it is true

    I suppose the alterior motive isn't better quake3 frame rates for ATI owners, but rather more impressive benchmarks, seeing as quake3 is such a standard graphics card benchmark. So if they are claiming that quake3 didn't get any special attention, but they DID give it special attention for benchmarks, well, thats a little misleading. Otherwise, I don't see anything inherently wrong with adding some post-design juice for the benifit of all the quake3 players out there.

    Personally, I think they did it for better visibility in benchmarking.
  • by Ether (4235) on Wednesday October 24, 2001 @02:52PM (#2473687)
    It's possible that a specific driver feature or features causes Quake 3 to run 15% faster, but at the expense of making the system unstable or unreliable in other games. It would make no sense for ATI to make the cards run as fast as possible on Quake 3 and only Quake 3.

    It's also possible that the Quack-quake transfer screwed something up in Quake- I'd be interested to see how a quackified exe performed on NVidia's chipset.

    See this statement at the end of the text:
    John B. Challinor II APR - Director, Public Relations at ATI Technologies Inc. "ATI optimizes its drivers on many different levels, including the application level, the game engine level, the API level, and the operating system level. That is, some optimizations work only on specific games, while others work only on specific game engines or only on specific operating systems. In the case of Quake III and Quake III Arena, we were able to achieve certain optimizations specifically for that game, as we do for other popular games. "

    Bah, I don't even see where the "Optimizing for Quake 3 only" comes in. The Quake series has been and still is the benchmark of 1st person, 3D FPS graphics.

    That being said, it would be convenient to have a checkbox in their control panel "(X) Enable unstable 3D support. May speed up certain apps, may cause problems. Use at own risk."

    • I'd be interested to see how a quackified exe performed on NVidia's chipset

      Well, then why don't you read the artical...
      In closing we would like to say that all the same testing was run on the latest set of NVIDIA DetonatorXP drivers without any of the same issues.

  • by amohr (20818) on Wednesday October 24, 2001 @02:53PM (#2473699) Homepage
    Optimizing your card/drivers for the popular drawing method is the natural thing to do. Even optimizing for the way a specific benchmark draws is fine.

    The problem here is that it appears ATI has gained performance by reducing the image quality -- forcing a reduced texture resolution specifically in Quake 3. Compare the screenshots shown on the site. This means comparing their benchmark scores on Quake 3 with other cards is meaningless -- their card isn't performing the same task. This was a bad decision on ATI's part.

    Alex Mohr
  • The thing is that all the drivers are buggy and/or incomplete to the point that you can't just open up the OpenGL book and write code that works on any driver out there.

    When a developer is making a game they end up doing tricks to get the best performance out of the most common cards. So what happens is the more prominent developers make contacts with the driver developers at the video card companies, who make specific changes to accomodate some feature or design that the game developer needs. This often works both ways, with the driver developers guiding the game developer on how to get better performance, etc.

    The point is that 3d graphics are complicated enough to not make it as simple as having an API that performs the same on multiple games and cards. Both the game developers and the video card manufacturers are doing this stuff. I doubt you will see this changing in the near future. But I don't think it's a conspiracy.

  • by denzo (113290) on Wednesday October 24, 2001 @03:01PM (#2473760)

    With the release of ATI's newest Radeon 8500 and 7500 graphics cards, hardware review sites have been proportedly using ATI drivers that have been sepecifically optimized for Quake III.

    Various ATI fan sites are now reporting new "Quackified" drivers, originally authored by Kyle Bennett of [H]ard|OCP. Rumors are flying about this unofficial driver's unfair optimization of games such as "Duck Hunter 5: More Buckshot" and "Donald Duck's Red-Light District Exploration".

    "Wow, the animated ducks are faster, and die better," one anonymous gamer said on a forum. "And Donald gets so better action with these new drivers!"

    ATI spokeduck, Rob Erduckie, denies any involvement in these modifications. "The claims are just false," said Rob. "We do not believe in unfairly offering advantages to one side or another."

    Rob also made reference to cheating, "We also vehemently oppose offering cheat options, such as Asus's 'See-Through Duck' modification. We're totally about fair game play."

    Environmentalists have been picketing federal facilities today in protest of unfair portrayal of their favorite bird today, with writings on picket signs such as "Free the Ducks!," "No luck for Ducks," and "Ducks Need Rights Too!."

    Department of Fish & Game officials were unavailable to comment.

    The Linux penguin released a brief statement: "I understand the pain that ducks are going through right now. Did you read what Linus said about me? 'A happily drunk penguin who just got some'? Sheesh!"
  • Question: Is this just a benchmark-boosting hack or does it actually improve the frame rate while playing the game?

    Observation: With frame rates of 80+ at even the highest resolution on the HardOCP test box, it's difficult to see if there is any ACTUAL BENEFIT resulting from using ATI's drivers.

    Suggestion: Repeat their tests with the original and with the quackified executables on a less powerful box so that the actual framerates are more like 10-15 fps.

    Result: If the drivers actually help the game play, at that low frame rate, it should be readily apparent. If there's NO difference in the game play, then it's just a hack to boost the benchmark scores.

  • Personally, I don't give a fsck whether ATI optimizes for Quake or not, what I care about is who is making their specs open. It's ATI, not NVidia, so all I can say is: go ATI. Sell lots of cards.
  • Were there benchmarks for Nvidia cards under the same circumstances?

    It's quite possible that rendering the different letters could account for the different frame rates. I'd be surprised if it were 15% but I think that if Nvidia dropped as well with the modified text, then that would show that the text simply took longer to render.
  • Wrong again (Score:4, Funny)

    by thejake316 (308289) on Wednesday October 24, 2001 @03:08PM (#2473808) Homepage Journal
    Actually, Intel and other x86 mfgs have instructions in their microcode to run Quake about 15% faster than other programs, this can be demonstrated easily by renaming to (on most Windows systems). You'll notice applications start up quicker and your mouse pointer has been replaced with crosshairs. Some systems will require you to select a skill level as soon as you start Windows, be warned that if you choose "Nightmare" keyboard shortcuts will be disabled and applications do about double the damage they would normally.
  • Go check the PCData Top Ten list for the past 50-60+ weeks. What is either #1 or #2 on all of those charts?

    The Sims

    Quake isn't anywhere near the biggest game on the PC. The Sims is a $100 Mil industry unto itself at this point.

    The argument could be made that The Sims isn't a game. But, it gets charted with other PC entertainment sales, so for this argument it must be treated as a PC game product.
  • I don't know what the actual laws are or what the actual subroutines are that get optomized, but as a matter of principle I don't believe it's fair to make optimizations geared only to a certain application that could possibly benefit a wide variety of applications. This means that the ATI producer has a bias towards Quake and by making these optimizations hinders the speed and performance of Quake's competitors, and that's not right.

    On the other hand, this benchmark seems sketchy to me. There are a lot of variables that go into large applications such as Quake and an example might be (although this is purely hypothetical) that there are resource files that are tied to "Quake.exe" first and then have alternate, slower methods being accessed. When the name is changed from Quake to Quack, the slower methods have to be used. That's just a made up example but it's they type of thing that needs to be taken into consideration. However, like I said before, if these people actually did make optimizations for Quake and only for Quake, I think what they did was unfair and harmful to computer users.
  • It's not unethical to optimize drivers for specific performance. Meaning, if ATI's drivers make Quake 3 faster than the competition, that has added value for someone out there.

    From a business point of view it's not the wisest thing to do. PC games have a tendency to be an extremly rabid bunch. Buying mobo's, processors, graphic's cards and anything else that lets them milk that last bit of performance out of games. They do this frequently,by keeping up on all the latest hardware and it's associated benchmarks and purchasing accordingly. They will even go to silly lengths to make sure what they are buying is the best, such as doing a grep for Quake3 and changing it to Quack3, then seeing if the performance is the same. Even without such lengths, a gamer would be sure that more than Q3 was fast on their hardware, so that when the next rage comes along, they can buy the game and expect it to run fast. So, ATI is shooting themselves in the foot by focusing on one game's performance, rather than going for general performance and as such games won't buy their cards....
  • []. (In german), they compared the effects of the "optimizations". Apparently, ATi is fudging the quality in order to get the frame rate up. This fudging only occurs on "Quake3", and is how the improved frame rate occurs.
  • Maybe now people will have to put a little more effort into their hardware reviews now.

    Everyone and their mom can do a review with Quake 3 and report claiming to know what they're talking about. Reviewers will now have to come up with their own benchmarking tools to convince end-users of the validity of their benchmarks.

    Even though it is underhanded of ATI, it'll all work out in the end. Sort of a "can't fool all of the people all of the time."
  • What exactly had them poking around in the first place, looking for evidence of this? Not that I think they're being disingenous or have anything to hide, but it's not like we all just get the idea into our heads to run strings on drivers and come up with ways to "quackify" binaries :)

  • I seem to recall that somebody (quite possibly ATI) looking for specific strings in the WinMark benchmark set and doing something special in the driver, just to pump up the numbers.
  • Not true. Halflife is (when you include Counter-Strike). In fact it's been over a year since I've even played Quake3, and I don't know anyone else who still plays it either.

    The only place I know of where Quake3 is the biggest game out there is for benchmarks. That's why it's unethical. ATI is trying to manipulate benchmarks to make their product seem better than it really is.

  • /default.asp They are not "Optimised" for quake 3. The image quality is seriously suffering to gain performance. This is purely wrong. When I set textures to be 32 bit in a game that's what I mean. If I want faster I'll set them to 16 thank you, I don't need my driver doing it for me (Note that that was just one of 3 cheats used)
  • Optimizing drivers (Score:3, Insightful)

    by Squeamish Ossifrage (3451) on Wednesday October 24, 2001 @03:57PM (#2474087) Homepage Journal
    It seems that this is not necessarily optimizing for Quake3 at the expense of other software. When making design decisions, in some cases one option is simply better than others. e.g. Choosing a radix sort [] over a bubble sort is basically all benefit and no cost. However, other decisions will improve performance for some tasks while reducing it for others. Think about Amdahl's Law [] for instance. Or consider adding an index [] to a field in a database system improves the performance of queries but reduces the performance of inserts and updates. In optimizing a system, your goal is to maximize it's performance in actual use. That means that the more you know about the expected use, the better design decisions you can make. If your database is being used to log transactions, and inserts will outnumber queries, you don't put the index on. If it's being used for census data, and will be updated seldom or never, but querried frequently, you do. That is to say, you use what you know about which operations will be requested the most often, and favor those at the expense of less-frequently used operations. The problems is that you often don't know which operations will be used most frequently at design time. If, however, some of these decisions can be made at run time, you may have more information available, and will be able to make better decisions.

    Which gets us back to the issue at hand. I don't know anything about the inner workings of the Radeon driver, but there are probably a number of similar tradeoffs involved in its design. The most reasonable interpretation is *not* that Radeon has optimized for Quake 3 at the expense of other programs. If that were true, it would run at the same rate whatever it were named. The better explanation is that when the driver knows what program is being run (such as Quake 3) it optmizes itself to the known characteristics of that program, and when a program which the driver knows nothing about (such as "Quack") is run, it uses default settings.

    Thus, it's not necessarily favoring Quake 3 over other applications, but is instead using optimizations for for known programs which are not available for unknown ones. There's nothing in this article to indicate that similar optimizations haven't been made for Counter Strike, Half Life, or any other popular 3D programs.

  • remember Dhrystone? (Score:5, Informative)

    by jejones (115979) on Wednesday October 24, 2001 @04:19PM (#2474174) Journal
    Remember the compiler whose authors hacked it so that it would recognize the Dhrystone benchmark and perform optimizations that happened to work for Dhrystone but which couldn't be applied in general? (It's mentioned in Hennesy and Patterson, if memory serves.) This is the same sort of thing--doing something special for the benchmark that can't be done in general. It makes the benchmark figures misleading for their supposed purpose. Based on other messages already posted, this case is in fact worse than the compiler hack, because the compiler hack resulted in a program that would at least generate the expected output; the driver hack, according to the referenced pages on other posts, degrades the display quality to get speed. If I had bought that graphics card, heck yes, I'd be upset.
  • They worked with Id to have their card perform a bit better with Quake 3 (and maybe other games based upon the same engine), which just so happens to be a game that a lot of people play. Betcha there are similar calls for Valve software's Half-Life games, considering the card comes retail with three Valve games. And so what if they did? Those folks who are swayed by such thing play those games and will reap the benefits, and those of us who aren't will buy the card based upon other real-world merits.

    This story really seems to be nothing more than turd-stirring, especially since they haven't looked for any other improvements. Poor journalism brought to us by a bunch of hacks.

  • by Cinnamon (15309)
    ANY company, ESPECIALLY a computer hardware company, will trumpet any 'optimizations' to anyone who'll listen in multiple press releases. Stupid little minutiae that make no difference in frame rate for the average user (AGP, anyone?) are announced as if they were the next generation in computer 3d graphics.

    So. If ATI didn't think they were doing anything wrong, there'd be something like a sort of freaky stepchild of an iD/ATI agreement where ATI would plaster "Quake 3 optimized!" all over their boxes and take underhanded swipes at Nvidia et al. in their press releases about it being an exclusive.

    They didn't. So it's clear, to me, that regardless of what the Slashdot/HardOCP/etc. community thinks, ATI thought it was scummy enough to keep it under wraps, AND make a non-statement regarding it once they'd been caught.
    Pretty damning, I'd say. I can't wait to hear what Tom has to say about this. (Or has he spoken up already?)

  • First I think the naming convention is a classic example of duck and cover.

    The unmitigated gall of some companies, what is next? A post sequil to Moon Over Orion being called Moo3.exe? When will the horror ever stop.

    Ok, my sarcasm and stupidity stops now.

    In essence ATI is trying to make their hardware look better. Compared to the current GF3's I understand they stack up very well, but in "classic ATI fashion" their drivers blow goats/ducks/chunks (insert colorful phrase).

    ATI has always been a mass hardware producer and now is trying to break into the high end gaming market...they have the visual quality, that is a given, but their speed is/has always been lacking until recently.
    But, their lack of quality drivers has been dogging them and they have always tried to duck the maybe there is a subliminal message to this "quack.exe" thing.
    ( i could not resist, sorry, that was too good to pass up).

    I just sincerely hope we do not end of with a ATI only version of D3D or GL or Gl-ATI-ide.
    They will just be painting themselves into a corner like 3dfx did to some extent.

  • Yes, it is. (Score:3, Insightful)

    by supabeast! (84658) on Wednesday October 24, 2001 @04:24PM (#2474199)
    "...and if ATI has invested a little extra time into pumping a few extra (meaningless) frames out of your Radeon 8500, is this really an act of treachery?""

    Quake ]|[ is THE standard for PC game benchmarks. John Carmack's engines are generally regarded as the best and fastest in the industry, and test overall performance of a system without getting bogged down on the CPU like other engines do. The Quake X engines also tend to support just about every performance enhancing feature they can (Even if the games themselves may not take advantage of it.). Quake X engines also tend to be the most OpenGL compliant engines around - something that figures greatly into why ATI would do this.

    By focusing driver development on Quake ]|[, ATI is able to produce a card that will perform very well on the standard PC benchmark. Honestly, I would rather have a card that performs well on any system out there. ATI has always had horrible problems with OpenGL performance caused by weak drivers, and this has long been one of the biggest criticism of their cards. By rewriting the driver to show a great amount of Quake ]|[ performance, ATI is able to convince potential buyers that they have been fixing the OpenGL code; which if Kyle's speculation is correct, is probably one of the sleaziest things in the history of computer hardware.

    I will be keeping a close eye on this one in the next few days. If this is true, I will be changing my plans to buy a new Radeon to buying a new nVidia card - because nVidia has never given me such a reason to distrust them. On top of that, nVidia drivers are custom hacked for specific cards by other vendors, so if nVidia did try this, people would leak the truth.

    This has the potential to really harm ATI. If ATI loses the faith of gamers, OEMs will continue to abandon ATI for nVidia. At a time when the global economy is already faltering, ATI does not need any lost sales, and if they look weak they could lose the support of companies like Dell and Apple that are already moving to nVidia.
  • ATI has nothing to gain by suppressing their other scores.. Double blind this test: change "3dmark2001" to "Quake3" and see if it runs faster. Then we would know if it was ATI optimizing for quake3 or Carmack lending some friendly help, suppressing other games frame rates to claim himself game coder king. And don't think for a moment that he doesn't have millions riding on this. If UT had the frame rate of Q3A, Think of how much they could have made selling their engine instead of Carmack making the dough selling his engine.
  • The question going through my mind is - why would the graphics driver care what the name of the executable is? If you had a way of cheating to improve performance, wouldn't you just apply it across the board?

    Why would they _not_ implement this speed/quality cheat for everything they could? If they were worried about benchmark programs noticing quality problems, the logical thing to do would be to special-case WinBench, not Quake.
  • Anyone remember the Voodoo2's miniGL that was designed from the ground up for Quake2? What's the difference here? We aren't talking about benchmark tampering; they've found a way to optimize their drivers to make Quake3 run faster. Maybe there are geometric instructions that Q3 doesn't make use of that they disable? That would be a good reason for the optimization by executable name; it might not work on other games. Let's not cruxify ATi just yet; they haven't done anything wrong as far as I can tell...
  • what about other games? I mean if you're only playing quake3 sure, go get a radeon. But if you play tribes 2, CS( the most popular game on the net), or UT, it really doesn't do much for you.
  • Quake 3 is the biggest game out there on Windows

    According to GameSpy [], Half-Life is a little over 10 times as popular as Quake3, and Unreal Tournament is slightly more popular.

  • This is not tuning for a program, this is cutting corners. If the simple change of "quake" strings to "quack" causes a 15% drop in speed (if the hack really doesn't change anything else - would need to try other cards as well or something like that), then what they're doing is jumping routines.

    I remember that Hercules once did this a good few years ago. Their drivers watched for repetitive procedures and then skipped some of the repititions, giving falsely high results. They got a pounding in the news because of it.

A LISP programmer knows the value of everything, but the cost of nothing. -- Alan Perlis