GPU Accelerated HTML5

The strongest bid IE 9 is trying to make against its competitors is that of superior, GPU-driven performance. For quite some time, the bar has been steadily raised in the JavaScript engine domain by continual competing releases of Chrome, Firefox, and Opera. However, HTML5 <video> asset tags mean that (should the standard catch on) browsers themselves (rather than plug-ins) will be a huge contributing factor for playback performance. Microsoft showed a rather compelling demo with two GPU-accelerated videos simultaneously playing back in the browser on a (ostensibly ION-based) netbook with minimal to no stutter. Surprisingly, HTML5 <video> is not enabled in the consumer preview out now. Microsoft offers a relatively curt explanation why:

"The demo of HTML5 <video> at MIX10 was a preview of a future release of the Platform Preview."

It's likely that there still are GPU vendor-specific issues that need to be worked on before they're comfortable releasing a build with support. Until then, it's impossible to really know how IE 9 HTML5 video playback stacks up against Chrome and Firefox's implementations.

In addition, they showcased the subpixel-rendering capabilities that they can leverage that other browsers still lack.

But the big performance boon comes for both 2D and 3D HTML5 display acceleration. One of the demos given the most stage presence during the keynote consisted of a grid of spinning browser logos nicknamed "spinning images." It represents what Microsoft considers an ideal showcase for the dramatic performance increases possible with GPU accelerated graphics in-browser. I went ahead and decided to run my own tests across a number of browsers. Pay attention to image quality as well.

First up is IE 8, which struggled to render a mere 1-2 FPS. You can see the banding which was evident virtually the entire time. Image quality, however, is good.

Next up is Safari 4.0.4. Image quality of the scaled logos in the extreme back and far front is likewise very good, however Safari too struggles to render more than 2-3 FPS.

Next, Firefox 3.6. Performance here is dramatically better than Safari or IE 6, however look at the images in the extreme background and extreme foreground. There's obvious image-degrading nearest-neighbor downsampling going on, resulting in horribly blocky logos. Performance is more than acceptable, but comes at the price of quality.

Chrome's performance is surprisingly bad given its stellar reputation for performance, but unsurprising given the poor performance of its WebKit brethren, Safari. Again, image quality is very good, likely at the cost of performance.

Finally, IE 9 Platform Preview gives the highest performance yet, at around 58-60 FPS. At the same time however, image quality sits somewhere between Firefox 3.6 and Safari/Chrome/IE 8. It's obvious that there's some downsampling here that isn't 100% quality-friendly, however, there's significantly less blocking. Detail is still a bit strange inside the black Safari logo.

Obviously, we have to take these results with a bit of skepticism; the IE team has had the time to optimize their platform preview to the technology demo they saw think shows off their platform best. That said, there are clear and obvious performance benefits to be had from GPU acceleration in the browser.

It hasn't been made entirely clear what system requirements are necessary for GPU accelerated content, however, they're apprently enough to completely preclude Windows XP from running IE 9 platform preview. Integration is likely tied to Windows Display Driver Model (WDDM) given the strict Windows Vista (with a platform update) or Windows 7 requirement.

Final Words

Whatever the case, it's obvious that Microsoft has heard developers plea for improved standards compliance and dramatic performance improvements across what remains the world's largest browser platform. Microsoft has been acting a lot like Google or Apple lately, evidenced through an open feedback platform preview such as IE 9, and showing an awareness for the seriousness of both its competitors browser and mobile device offerings.

Standards Compliance
Comments Locked

60 Comments

View All Comments

  • hakime - Wednesday, March 17, 2010 - link

    "For quite some time, the bar has been steadily raised in the JavaScript engine domain by continual competing releases of Chrome, Firefox, and Opera."

    This is a huge distortion of the reality for not mentioning Safari. Safari was the first in the javascript performance race, Firefox is still well behind Safari and Opera came back to the game just recently with version 10.5.

    "Next up is Safari 4.0.4. Image quality of the scaled logos in the extreme back and far front is likewise very good, however Safari too struggles to render more than 2-3 FPS.......

    "but unsurprising given the poor performance of its WebKit brethren, Safari."

    Well I have to put some precessions in this. Webkit (hence Safari for windows) for some reason or another does not support GPU acceleration on windows. It does on Mac OS X. I am running the exact same demo with 36 images on my macbook pro with a GeForce 8600M GT and I am getting something 59-60 fps with minimum load on my cpu cores. And the image quality is very good, I think well better than IE9. So what I want to say is that IE9 is not the only browser capable of achieving this level of performance in the market, Safari on mac does, it does it for already quite a while. The difference is that Safari on mac is a available today and IE9 is not and won't be for months. In other words, IE9 is catching up with the state of the art available today.

    "In addition, they showcased the subpixel-rendering capabilities that they can leverage that other browsers still lack."

    And what? The test "Text Size Animated" from the IE9 test drive runs very nicely on with Safari on mac. Again, doing GPU powered smooth animation of text with sub-pixel positioning is not a new thing.
  • nerdtalker - Thursday, March 18, 2010 - link

    I think there were two reasons that I treated Safari the way I did; primarily because IE 9 is Windows-only at this point, and it's difficult to compare validly across operating systems. It's completely obvious that we need to a longer, even more comprehensive comparison of the state of browsers. Just bear in mind that this article was prepared with an angle in mind of it being more of a validation of claims than a comprehensive roundup. My resources were limited (only had my Latitude XT) and the time constraint was virtually hours.

    That said, I'm very interested in investigating both WebGL, acceleration between Windows and OS X, and finally some of the later development builds of each browser. There's some ambiguity in the GPU requirements thus far for IE 9 hardware acceleration that I'm trying to clear up. Furthermore, I'd like to try all the latest nightly builds or whatever is suitable; it's only fair to compare bleeding edge against bleeding edge.

    I really really appreciate the feedback though, I'm getting some awesome ideas for a comprehensive roundup do-over. ;) It's definitely coming.

    Cheers,
    Brian Klug
  • hakime - Thursday, March 18, 2010 - link

    "primarily because IE 9 is Windows-only at this point, and it's difficult to compare validly across operating systems."

    Yes sure, I am ok with that. But this does not mean that one can't say that other platforms have already advanced the state of the art in GPU accelerated web moden content and that IE is following the trend. In our days, windows/IE/Microsoft, and you surely agree, are not the center of the world when it comes to web/web browser innovations.
  • taltamir - Thursday, March 18, 2010 - link

    when other platforms get double digit market share then we will talk, until then "everyone" [sic] uses windows.
  • nerdtalker - Thursday, March 18, 2010 - link

    I totally agree; GPU acceleration isn't entirely IE 9 centric in this circumstance, nor is the innovation entirely from IE 9. That said, they've acknowledged the huge performance gap between IE 8 and other modern browsers (WebKit and Gecko based) and are promising to do something about it. Illustrating that was my primary focus here, even if it did come off sounding a bit to IE-fanboyish.

    Rest assured we're definitely putting something together that's comprehensive comparing WebGL, WDDM (IE 9) and OS X (Quartz Compositing). The big problem was that I was on my relatively underpowered tablet (with an obsolete integrated ATI GPU) and couldn't really get the full gamut of GPU acceleration working.

    Seriously though, I really appreciate the tips and suggestions. This is still extremely valuable for discovering what you all would like tested (so I don't forget anything ;) )

    Cheers,
    Brian Klug
  • mechBgon - Thursday, March 18, 2010 - link

    "This is still extremely valuable for discovering what you all would like tested (so I don't forget anything ;) )"


    I don't know if you have any experience as a sysadmin, but central manageability is a biggie, and often forgotten by the home/SOHO press. Preconfigure, deploy, audit, update, reconfigure, enforce and lock down any number of browser installations, over the network, from your own office, whether the users want to cooperate or not? Yeah, IE can do that, since IE 5.01. Anyone else...?

    *crickets*
  • hakime - Thursday, March 18, 2010 - link

    Fair enough!

    My concern is that the way it is presented in your text makes somehow believe that IE9 is the best performer in GPU acceleration out there or even that it is the only one that does GPU acceleration. It is not the case at all, you agree I presume.

    By the way there is one little mistake in your text

    "Next, Firefox 3.6. Performance here is dramatically better than Safari or IE 6"

    IE 6 -> IE 8.
  • AnandThenMan - Wednesday, March 17, 2010 - link

    Anandtech.com needs to consider cleaning up their own code before they start testing new browsers for page rendering. Not defending IE in anyway it will always be a scourge on the Internet IMO, but 124+ errors on the homepage is not exactly a good showing.
  • ncage - Wednesday, March 17, 2010 - link

    I'll take usability over these performance zealots any day. While i don't use ie8 a lot i found it to be acceptable in most cases. The reason i don't use ie is two fold:
    1) its the biggest target for malware writers.
    2) (again usability) Firefox Add-On libraries.

    Firefox isn't that fastest but its has the greatest functionality because of the extensive add-ons. I'll tell you on all my computers Chrome is by fast the fastest and yes they have addons now but the community is not nearly as mature right now. I think what IE team should work on along with performance would be to add a .Net library that would make developing quality add-ins for IE easy. Until they do that i will stick with firefox (its fast enough).
  • deeceefar2 - Wednesday, March 17, 2010 - link

    Notably absent is any mention of webgl. Though I didn't expect to see them mention it. I think it is important to note they are the only browser with no announced support of webgl. The standard is still in flux, but with no announced support and at least a 1 year lead time on a newer version of internet explorer, and who knows how long on the actual adoption curve. It just pushes web standards evolution back further.

    Webgl being based on open gl es 2.0 should make it possible to write a game or 3d browser app that works the same on all web platforms from all browsers except IE and all phones. Would be a shame to lose such an advancement because of IE.

Log in

Don't have an account? Sign up now