2D, Acceleration, And Windows: Aren't All Graphics Cards Equal?

Tom2D Conclusions, Preview Of Part 2

Based on our own hands-on analysis of the current situation, we have to observe that the ATI's Radeon HD 5000-series cards are really struggling with 2D graphics. It’s also somewhat embarrassing that an older on-board graphics chipset is not only faster in a several areas (against both ATI- and Nvidia-based discrete cards), but also that there’s no real workaround for dealing with vector-based programs, either. This is not just a deficiency being measured in our testing; it’s also readily discernable to those who work with 2D graphics on a daily basis. Frankly, it’s quite difficult to imagine how an older Radeon HD 4870 can come so close to matching or beating the newer card in so many tests.

While 2D acceleration (including 2.5D layering) functions well, ATI has not yet managed to implement a number of pure GDI functions in its Radeon HD 5000-series cards. With a number of driver revisions behind us since Windows 7's initial launch, this situation is difficult to comprehend for the folks spending hundreds of dollars on next-gen hardware and running into trouble in 2D apps. We must also point out that this applies not only to our synthetic 2D benchmark, but also to various other real-world programs we used for our testing, including AutoCAD, as well as Corel Draw, Adobe Illustrator, Photoshop CS3/CS4, Microsoft Publisher, PowerPoint, and more. This calls for urgent and dramatic improvements, especially because our test results for Vista demonstrate significantly better scores than those in Windows 7 (we'll get into more depth on this in Part 2).

In preparation for and during testing, we participated in several calls with Antal Tungler, technical PR manager at AMD, to discuss the 2D performance of the Radeon HD 5000s under Windows 7. After we proved to ourselves that these performance issues stemmed purely from GDI problems, which nearly every program must handle in creating windows for the desktop, this pronouncement no longer seemed as appropriate, especially for small offices and home users. This is doubly true in light of our discovery that a competitor’s on-board GPU could handle 2D graphics more deftly.

We can only speculate (and hope) that the Catalyst drivers are where the issue and probable solution lies. If this is true, ATI should be able to remedy things relatively easily. Given that its latest budget and consumer grade graphics cards were recently introduced, general 2D slowdowns across the whole product line seem probable. What troubles us most, given the results of our testing, is that rectangles receive genuine acceleration, while all the other geometric primitives (especially lines and curves) do not. By contrast, an extreme performance fall-off when GPU acceleration is used suggests that nothing good is going on here. Nvidia also falls off when rendering ellipses and polygons, and we’d like to figure out why this is happening as well.

For the time being, we recommend that users deactivate Aero when working with 2D graphics programs if they’re using one of the latest Radeon HD 5000-series cards in their PC. The resulting performance improvement of up to 300% that follows should make up for the lack of eye candy in those windows. That’s why we implore our readers to deactivate Aero for affected programs, so as to avoid turning off Aero altogether on their machines.

How-to: Deactivate Aero for a Specific Program

Right-click the program icon, then select the Properties item from the resulting pop-up menu. Click the Compatibility tab in the properties window, then select the setting checkbox that reads "Disable visual themes" (or similar language).

DWM usage gets deactivated when visual themes are disabledDWM usage gets deactivated when visual themes are disabled

What’s Next

In Part 2, we’ll test the reflexes and capabilities of our ATI cards thoroughly once again and compare the results with direct and indirect competitors from Nvidia. In the meantime, we’ll also circle back with ATI and Nvidia regarding the results of our initial testing, and wait in rapt suspense for their responses.

After intense conversations with our peers and colleagues (and raging rants on our forums) we want to exercise this benchmark more thoroughly and also put it through its paces on various hardware running XP, Vista, and Windows 7. Our aim is to develop a more comprehensive understanding of the 2D graphics capabilities for all of these systems. We plan to look at older S3 cards, Voodoo, numerous older GeForce-based models, and a full range of ATI cards. In short, we plan to leave nothing out, including even integrated graphics chipsets from our large collection of motherboards.

We already know we will encounter one or more moments of illumination during this process, along with our share of disappointments. A more precise description of the benchmarks, ratings for test results, and a download link for the Tom2D benchmark software will also be included in Part 2, as well. We’re pretty sure that you’ll find all this material pretty interesting, especially as we discover which consumer-grade graphics cards deliver the best 2D graphics performance for specific Windows versions. Let us surprise you: stay tuned!

Update (1/26/2010): With preliminary research into our 2D performance analysis, AMD reports back with the following:

  • Tom’s Hardware has tripped over a workload area (2D lines, etc.) that we have not optimized yet.
  • Until this new benchmark, we have not seen any other applications that are bottlenecked by this path, and hence have not focused on it until now.
  • Our initial analysis has shown that we have no hardware limitations in this area.
  • We now have our driver team engaged to optimize this path and will release a new driver to address this workload as soon as possible.
  • We have already found an easy way of increasing our performance greatly, and are now going to try and schedule this in a future Catalyst (need to code in production, validate, ensure it doesn’t break anything else, etc.).
This thread is closed for comments
    Your comment
  • fatkid35
    next, toms finds bigfoot eating a chupicabre! WTF? nice catch guys.
  • pcxt21
    Very nice work! Until that little update I was ready to put my old Matrox Millennium (1996/1997 I think) 2d accelerator back into my gaming rig...
  • For those who still remember Matrox...shouldn't that be included in the test as well? Ancient history shows that it was the best card to be paired with VooDoo when first released...:P
  • one-shot
    LOL. The clip of Steve Ballmer looks like an ad from the late Billy Mays. To think he's the CEO of Microsoft after watching that clip makes me laugh. I'm going to watch it again.
  • chookman
    I actually went to put a Professional Matrox card (G550 PCI-e) in my Windows 7 machinde for a few more displays... alas it seems most of the range doesnt have Windows 7 drivers yet :(
  • killerclick
    Hey, I have GF7050 on my motherboard but I'm not using it!
  • belardo
    The sad thing is, as shown was that Windows 1.0~3.0 were never an operating system, ever. 1.0~2.x we're never really used by anyone, yet Amigas and Macs had full GUI functionality since 85/84... Windows3 was at least usable, but still a single-tasking POS, and yet MS-DOS was able to dominate the computer industry... not because of talent, but because of luck, good moves by Gates & Ballmer and the stupidity of IBM. It kind of worked out anyway thou.

    Think about it, it wasn't until the tail-end of 1995, with the release of Windows95, did MS produce an actual GUI OS for the general public, 10 whole years after Apple's Mac and the Amiga by chicken lips. Atari only copied much of the hardware abilities of Amiga with a variant of a MS-DOS clone.

    Only business bought PC-Clones in the 80s~90s, paying around $1500~4000 per desktop. Since IBM didn't make the OS and the hardware was generic, it was super easy for clones to exists. Home users bought Amigas and Macs and laughed as DOS users... but in the end, they lost to the clones.

    At one time in 1990, the Computer Shopper Mag was about 500 pages (phone book) with at least 500 Clone companies advertising.

    Windows is still the Copy-Cat OS. Its still an ugly beast under the hood. At least Windows7 runs good and looks nice.
  • Raid3r
    Indeed, way to take one for the team..I am one of those 2d workers and greatly appreciate the foot that was used to affirm the position of 2d recognition on these "new" cards. I can't say it enough.
  • micky_lund
    woot for toms...
    catch some more massive companies out, and make them fix up their drivers
  • belardo
    I just finished reading this entire article. A good one too guys.

    While I had my rant about old MS days, I did work in the PC field starting with 3.1. We'd benchmark various video cards with programs that would test lines, boxes, etc. This WAS important for some games like DOOM and Quake which were not "true" 3D cards we have today.

    For every new type of PC build or a clients computer, I would save these generic overall system benchmarks. And I *have* notice different 2D performance abilities of computers and the various cards. All super fast compared to the 90s, but I've seen a GF card perform worse than an older ATI, but also an older ATI work a bit better than a newer one. These are all WinXP and don't have anything to do with the problems of Win7 and/or DX11... Part2 isn't out yet... but I would be curious to see if the problems in Win7 happens in Vista with DX11 installed hmmm.

    ATI has been putting all their work into 3D gaming performance, its good to see that they have put a team to fix their 2D issues. There is a good chance that this is a DX11 issue they were not aware of. Since Nvidia doesn't have any DX11 parts (but a DX10.5) - this "bug" doesn't yet show... but I'm speculating of course. :)

    With the eye-candy of Win7, the 2D performance *IS* important for those doing work, watching videos, etc. No good excuse to miss this, and hopefully ATI will have it resolved in 1-2 months.

    PS: Your memory usage chart of vista vs Win7 shows exactly WHY Vist . That is why Windows7 runs pretty good on a 1GB computer, but Vista still needs at least 3GB for a bottom-end PC. My notebook has Win7rc with 1GB, runs fine.

    Hey, will your results sometime include intel graphics? After this bug-issue is resolves, include overall-2D scores with your graphics Charts. :)
  • notty22
    This is no news to the enthusiasts, ATI drivers. One more reason to go green, Nvidia, :)
  • BartG
    So the Vista bashers now need to rethink why they dont like Vista, its not the OS (even though its not perfect), its the lack of 2D performance from your cards!
  • sohei
    good article
  • supasso
    The new ATI cards throttling down pretty aggressively in 2D AKA "idle" mode to keep the power consumption low. Perhaps that's what happening here.
  • sohei
    notty22 you exaggerate...if ATi has a problem with drivers in 2d, what about nvidia with new drivers ? no over-clocking...you know that?

    pls read more than talk
  • eddieroolz
    Reading it at 2:20am, it was hard to grasp every part of the article but it did arouse my mind a bit :P But good job to you guys!

    Now back to programming in C xD
  • mitch074
    @supasso: even throttled down, current cards far exceed the capabilities of older 2D cards; the problem is that, if an operation is badly optimized, it can slow down even the most powerful system to a crawl, by requiring thousands of CPU cycles and as many sleep() cycles, to perform something that, on said older hardware, would take a few cycles at best.

    One good area to look at here, is the Linux world. Why is it relevant?
    - dixit an AMD engineer, 90% of the Linux driver code is common with Windows'. That includes 2D, video and OpenGL.
    - there are two (well three, but this is not really relevant here) Ati card drivers for R600/700 cards: one (proprietary, very close to Windows) from AMD, one (FOSS, based on AMD documents and reverse engineering) from the Xorg development team.

    Benchmarking those in 2D (say, with X's own benches and GNOME's) shows that the
    FOSS driver is around 4 times (and in some cases, 100x) faster than AMD's driver on purely 2D operations - showing that, indeed, AMD's driver needs a kick in the arse to push windows around.

    Please note that Xorg does also provide purely 2D (EXA+Render) and 2.5D (EXA+Composite) modes. enabling Composite on AMD's driver causes it to slow down across the range, while it actually improves things on the Free driver when used with a compositing ('like Aero', although it actually came out before) window manager - and a GPU that is at least level with a Radeon 9500.

    Please note that the very same thing happens with Nvidia hardware, eventhough Nvidia seems to have done a slightly better job at supporting 2.5D (the difference between Nouveau and the Nvidia blob is less apparent).
  • dimitrik
    Excellent article and about time 2D got some attention. The amount of emphasis on 3D graphics in the majority of technology media is insane given that gamers are hardly a majority among mainstream users. Clearly this extreme emphasis on gaming has finally led to the "core" features being neglected by the vendors!
  • haplo602
    Same but worse situation is with ATI linux drivers. Their 2d part is horribly bad even compared to the OSS X11 drivers. I just hope that by fixing the 2d in Windows, they will get to fix 2d in Linux as well.
  • Wouldn't this benchmark be better suited using Direct2D instead of the long-since-deprecated GDI? You should get performance improvements for all of the graphics cards that way. I did some checking and it seems that at least since Vista, the main GUI/window manager has been using DirectX, not GDI. Someone brought up the issue of vector drawing programs like Inkscape (GTK), but I don't know what those use.

    Here is a 2008 article espousing Direct2D over GDI/GDI+:


    Both Windows 3.x and Mac OS 9 & earlier were cooperative multi-tasking OSes, and thus suffered the same fatal flaw. Windows 9x offered preemptive multi-tasking and memory protection (and management), whereas Mac OS 9 & earlier all had such poor protection that any program could easily read/write any other programs memory space intentionally and accidentally. Prior to the MultiFinder's creation in 1988 (OS 5), there was no multitasking at all, and the Desk Accessories had to be written using drivers to emulate it. That's the reason Mac OS X was created; all the previous versions were such utterly irredeemable, insecure, unreliable pieces of shit, they had to start almost from scratch.

    I don't know what an "actual GUI OS" is in your mind, but it doesn't seem like Mac OS classic qualified by your own standards. OSes can run within OSes, and I don't just mean emulating hardware running a "full OS," but rather the definition of an OS doesn't require that it be capable of running completely on its own. This why some research and student OSes are made to run on top of pre-existing ones.

    The way I see it, Windows 3.x was like a powerful DOS extender (DOS4GW is an example of a dos extender that many games used albeit 32-bit) that added a graphics subsystem, cooperative multi-tasking, and ran in 16-bit protected mode (DOS ran in real mode).
  • This is a rather interesting article. Thanks for the good read. What is strange though is the fact that a lot of companies, including Microsoft is looking at Direct2D to speed up browsers and various apps. I find it strange that MS have not spoken more harshly to the Graphics people of ATI and nVidia.

    One take 2D for granted, yet it is clear that no one at ATI or nVidia does...yet we spend 99.5% of our time in there...

    It also points out some of the underlying problems of MS designs...they have so much raw horsepower to yield, that it is no longer important to focus on optimisation. If it where, this would have been picked up earlier and flagged during the beta stages.
  • notty22
    Straatkat I find it strange that MS have not spoken more harshly to the Graphics people of ATI and nVidia.

    Because its only ATI that has the problem. Even Nvidia's IGP performs satisfactorily. Lack of testing, rushing out a product before its right.
    This is poor. Fermi may be late, but it will be right.
  • Onus
    No HD5xxx for me until this is fixed.
  • scrumworks
    Update (1/26/2010): Nice to know AMD has taken a task to fix those pending issues even those problems might just look bad in benchmarks and not in real use.