Tuesday, October 19, 2010

Microsoft: IE9's Graphics Acceleration Better Than Chrome and Firefox

Since November of last year, one of Microsoft's big themes for Internet Explorer 9 has been "graphics hardware acceleration" using Windows DirectX. Just last week, Mozilla's Firefox 4 beta turned on graphics hardware acceleration by default. And last March, the Google Chrome team announced its ANGLE project to do something similar, while just last week a Google engineer blogged about Chrome 7 including graphics acceleration.

In response, Microsoft's Program Manager Lead for Web Graphics, Ted Johnson, has just posted on the IEblog, claiming that while other browser may be starting to implement graphics hardware acceleration, only IE9's is "full."

In the blog post, Johnson claims that IE9 graphics hardware acceleration works with "everything on every Web page—text, images, backgrounds, borders, SVG content, HTML5 video and audio—using the Windows DirectX graphics APIs. With Platform Preview 3 in July, IE9 introduced a hardware-accelerated HTML5 canvas." The competing API for web graphics, WebGL, only accelerates that last, and Google's ANGLE (Almost Native Graphics Layer Engine) project is only concerned with translating some WebGL code to display using Windows DirectX, which enjoys far more support on today's PC hardware.

Why is using graphics hardware so important? Because the graphics processor and memory are much faster at manipulating images like those the browser has to display on-screen. Microsoft has demonstrated this on its IE9 Test Drive site site with several test pages showing spinning logos and animated fish-tank visuals. The tests report frames-per-second, a common measure of graphics performance, especially for 3D games. In my quick test of the new Firefox 4 beta 5, I found that it's graphics acceleration indeed bumped its performance on the fish demo slightly above that of the IE9 Platform Preview, but the spinning logo's demo still trailed significantly.

Mozilla, too, has provided a demo that tests graphics acceleration, and running this in Google Chrome 6 shows that browser's potential Achilles heel: It delivered 4 frames per second. Firefox 4 beta 5 came in at 91, while the IE9 platform preview showed 67 frames per second. IE Test Drive's Psychedelic Browsing demo showed a similar skew: Chrome 6 clocked 50 revolutions per minute, compared with Firefox's 1774 and IE9 Platform Preview's 1810. Another test showing an animated font enlargement performed smoothly in IE9, nearly as smoothly in Firefox 4 beta, but jerkily in Chrome 6.

Why is that?

Microsoft claims it's because their nascent browser is using graphics hardware to accelerate page composition and the final desktop window composition as well as just content rendering. According to Johnson, "Based on their blog posts, the hardware-accelerated implementations of other browsers generally accelerate one phase or the other, but not yet both."

Another reason is that Chrome and Firefox also have to support multiple platforms — Mac and Linux — in addition to Windows, so they require a translation layer (such as Chrome's ANGLE) before the content can get to DirectX. IE9, claims Johnson, uses native DirectX code, with any intervening layers.

Not only can graphics-hardware support speed up web graphics and game-type pages, but it's ideal for making video — in particular HD video — play smoothly. To someone who likes to view web TV content on a big-screen TV, this is pretty important.

Microsoft has announced the availability of the first actual beta of Internet Explorer for next Wednesday. For those how prefer to avoid the earlier Platform Preview's bare bones interface, it will be a good chance to play with the next version of Internet Explorer. And at that time, not only will we be able to see its graphics-hardware-enhanced speed, but also what's up Microsoft's sleeve in terms of a new user interface. Meanwhile, you can already head to the IE9 Test Drive site to download the Platform Preview and try out your own speed tests.

No comments: