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

Windows 7: Radeon HD 5000-Series Cards Lack 2D Acceleration

ATI put a ton of effort into developing this latest generation of DirectX 11 hardware; it's only natural that it'd take some time for the software side to mature (and it's hardly a secret that subsequent driver releases improve performance and stability in a number of different ways). We can't exempt Nvidia from this observation either, since we also find a similar problem in its GeForce driver set when using 2D graphics on the company's mobile processors. For this article, we used the most current Catalyst version, 9.12.

Catalyst and Windows 7 afloat in heavy seasCatalyst and Windows 7 afloat in heavy seas

Problem 1: ATIKMDAG Stopped Responding, Then Recovered

Anybody who’s experienced this error message probably encountered it after shifting back into 2D mode after exiting a 3D application. We have to believe this very likely results from some kind of driver error.

Let’s recall: without Aero turned on, the DWM is deactivated, so there’s also no more 2D acceleration, either (this applies equally to Windows 7 as it does to Vista). Because we ran into this error repeatedly on test systems with Radeon HD 5750s and Radeon HD 5870 installed (in two different test configurations), we forcibly deactivated Aero across the board. After this evasive maneuver, these errors no longer appeared. Interestingly, the exact same situation (and remedy) also presented itself to us on a notebook PC with GeForce graphics. Whether this is just a massive coincidence or an indication of a conflict among DWM, drivers, and 2D hardware graphics acceleration, only time will tell.

Our next prime suspects include the relatively low default clock speeds for ATI cards running in 2D mode, or perhaps some issue with an early graphics BIOS. Determining whether these two possible culprits are in cahoots or working independently is something we can establish only through long-term observation, or a definite change in behavior thanks to a new driver version.

Problem 2: ATI fails to deliver 2D Hardware Acceleration for GDI, either in whole or in part

We basically stumbled onto this problem due to our difficulties in getting the Radeon HD 5870 to handle 2D graphics. Many might infer from this experience that 3D cards are made for gaming, not for 2D applications. But anybody who’s read through the preceding sections of this article must admit that this has only really become a significant point with the release of Windows 7 (and not Windows Vista). To be more specific, most 3D cards will cut the 2D mustard reasonably well these days. But a direct comparison between the GeForce GTX 285's and Radeon HD 5870's 2D capabilities results in a besting of the ATI card. In fact, even compared to Nvidia's GeForce 7050 (nForce 610i) onboard graphics solution, without its own frame buffer, the newer Radeon places second-best.

Things get even more interesting when the DWM is disabled. Even though no 2D acceleration is possible here, the ATI card jumps into the lead with regard to performance. Compared to Nvidia's GeForce board, running the ATI card with DWM disabled puts it well ahead. Even CorelDraw and AutoCAD run noticeably faster on the Radeon HD 5870 when DWM is turned off. This turns the tables on Nvidia, and contradicts our previous logic and experience benchmarking these GPUs.

2D Hardware Acceleration under Aero with DWM decided favors the GeForce cards 2D Hardware Acceleration under Aero with DWM decided favors the GeForce cards With Aero and 2D Acceleration disabled the ATI card runs up to 5 times faster.Shocking!With Aero and 2D Acceleration disabled the ATI card runs up to 5 times faster.Shocking!

For these reasons, we repeated our PassMark tests on these cards.

With Aero and DWM enabled With Aero and DWM enabled

Without Aero and DWM, ATI jumps aheadWithout Aero and DWM, ATI jumps ahead

Unfortunately, none of these tests could pinpoint the issues we were seeing or shed any light on the nitty-gritty details behind the disparate performance numbers. That’s what led us to create our own benchmark, which helped us get closer to the root causes of the issues involved.