ATI Drivers Geared For Quake 3?
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?"
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??
Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
When intel optimizes adobes plugins at the expense of amd processors -- so they can use it as a benchmark -- thats ok as well?
Free Techno/Jazz/DNB/MI Music by guys obsessed with monkeys!
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.
ZFS: because love is never having to say fsck
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."
I have discovered a truly marvelous sig, unfortunately the sig limit is too small to contain i
Why the hell do they not want everything else to be similarly optimized?
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.
---- I made the Kessel Run in under 11 parsecs.
does the same thing happen to Duck Nukem?
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 hate people when they're not polite -"Psycho Killer", Talking Heads
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
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.
PRESS RE-RELEASE:
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!"
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 win.com to quake.com (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.
AC's cheerfully ignored
Simple.
Because that would require actual work.
Knowing the coding community as we do, which is more likely: this was written by work-obsessed coders who want to make the best drivers possible, or written by a handful of people who are pissed at management and just want ot make it -look- faster so they can get more money for the least ammount of effort, go home, and be with their families?
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.
In the HardOCP article there is a link to a .zip with two uncompressed screenshots -- one from their run of Quake, and the other from "Quack".
The screenshot from Quake is clearly of a lower quality than the one from Quack -- it's especially obvious on the texturing of the teeth of the "mouth". From this I can only conclude that they are getting the extra boost by sacrificing image quality for a specific game used in benchmarks.
As to why they don't have a checkbox - because anyone who actually wanted to get higher framerates at the expense of quality will do so within a game's settings menu. What compromise you want to make between quality and speed will vary from game to game. This checkbox would be system-wide, and not satisfactory.
Plus, no benchmarker would have ran with the "15% faster" option, as that would violate the benchmarks run under "highest quality". So if they did that, their little hack wouldn't have helped their quake scores.
The enemies of Democracy are
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.
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.
Do really dense people warp space more than others?
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.
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.
"...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.
This goes for everybody else who responded to me as well:
READ THE ARTICLE BEFORE POSTING.
Image quality is worse in Q3 due to the optimizations. If you do the Quack3 rename, the image quality gets better and the frame rate gets worse.
You're telling me that you're okay with a graphics card manufacturer deliberating reducing the image quality of Q3A in order to get better frame rates, when it just-so-happens that Q3A framerates are an important benchmark? And not giving you any indication (other than reduced quality) that this is happening, nor any way to change it?
I stand by my original view.
ZFS: because love is never having to say fsck