The Architecture of Full Hardware Acceleration of All Web Page Content


We’re excited that other browsers have started to use hardware to accelerate graphics performance. With different implementations starting to become available, now’s a good time to blog about the difference between full and partial hardware acceleration.

In November 2009, developers had their first look at hardware accelerated graphics in a browser at the PDC. In March 2010, we released the first IE9 Platform Preview with “GPU-powered HTML5” turned on by default. In that release, hardware acceleration applied to 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.

Understanding Hardware Acceleration

Browsers can use hardware to accelerate none, some, or all of the steps in rendering an HTML pages. The diagram below illustrates the major steps in HTML page rendering in IE9.

HTML Rendering process diagram

Content Rendering. IE9 accelerates the first phase, Content Rendering, using Windows’ Direct2D and DirectWrite subsystems. As shown back in November, the results here include much smoother text and vector graphics. Accelerating this phase using the GPU (Graphics Processing Unit) improves the display performance of the most common HTML elements: text, images, backgrounds, and borders.

Page Composition. IE9 uses Direct3D for the next phase, Page Composition, giving IE awesome performance in image-intensive scenarios (like Flying Images and FishIE Tank). Accelerating this phase takes advantage of one of the GPU’s most significant features: the ability to draw bitmap images at very high speed. Moreover, because the GPU’s private memory retains images, redraw of pages heavy in images is very fast.

Desktop Composition. After a browser renders content and composes pages, Windows Vista and Windows 7 use the GPU to compose the final screen display via the Desktop Window Manager (DWM). Because IE9 uses DirectX and only DirectX, there is better interaction between IE9 and the DWM, using less GPU memory and resulting in better stability than browsers that mix different subsystems.

Full vs. Partial Acceleration

With IE9, developers have a fully-hardware accelerated display pipeline that runs from their markup to the screen. Based on their blog posts, the hardware-accelerated implementations of other browsers generally accelerate one phase or the other, but not yet both. Delivering full hardware acceleration, on by default, is an architectural undertaking. When there is a desire to run across multiple platforms, developers introduce abstraction layers and inevitably make tradeoffs which ultimately impact performance and reduce the ability of a browser to achieve ‘native’ performance. Getting the full value of the GPU is extremely challenging and writing to intermediate layers and libraries instead of an operating system’s native support makes it even harder. Windows’ DirectX long legacy of powering of the most intensive 3D games has made DirectX the highest performance GPU-based rendering system available.

When you run other browsers that support hardware acceleration, you’ll notice that the performance on some of the examples from the IE Test Drive site is comparable to IE9 yet performance on other examples isn’t. The differences reflect the gap between full and partial hardware acceleration. As IE supports new, emerging Web standards, those implementations will also be fully hardware accelerated.

Hardware acceleration of HTML5 video is a great example. At MIX10, we showed the advantage of using hardware for video. In March, IE9 played two HD-encoded, 720p videos on a netbook using very little of the CPU while another browser maxed out the CPU while dropping frames playing only one of the videos. Because of full hardware acceleration of the entire pipeline, you experience great performance playing these videos while moving them around the page and styling and compositing them with opacity, using web standard markup.

Measuring Graphics Performance

A typical measure of graphics performance is frames-per-second (FPS), which indicates how many times per second a browser can update the screen. Be skeptical of demos that show frames-per-second rates greater than 60 fps. The reason is simple: most computer screens refresh at 60 hertz. While it’s possible to render and compose page content faster than 60 frames-per-second, most users will not see it. The extra CPU and GPU cycles spent to render at rates above the refresh rate of your monitor are simply being wasted. This is why the graphics performance demos on the IE9 Test Drive site explicitly limit their frames-per-second to 60—to avoid wasting cycles rendering content you won’t see.

Monitor Settings Options

More interesting than simple frames-per-second measurements is looking into what your PC is actually doing. Using the Windows Performance Analysis Tools, developers can see that other hardware-accelerated browsers take anywhere between 20% and 500% more CPU time than IE9 to render a single frame. Depending on the graphic operations required to render the Web page, the actual difference in CPU time will vary. If this additional CPU consumption occurs between visual updates (16.7 milliseconds on a typical 60 hertz display), the difference may not be visible to the user but it does affect how much of your PC is available to do other tasks. Less CPU usage means better overall system responsiveness.

Remember, Real World Performance is Multidimensional

As Jason Weber described in a recent post, display rendering performance is one of 11 core subsystems in modern browsers. While GPU-accelerated page display can improve the performance of every Web page, it is particularly important on graphics-intensive pages (and demo pages designed to highlight graphics performance). All browser subsystems need to be fast individually, and work well together, to make the overall browsing experience of the real world Web fast.

Better Browsing on Windows

We’re excited that other browsers are starting to optimize for the Windows platform. Taking advantage of the PC’s hardware through the Windows APIs makes browsing on Windows better than browsing on other systems. Since that first demo last November, other browser vendors have begun to work on hardware accelerated rendering using the DirectX family of Windows APIs. Hardware acceleration is an important part of delivering great HTML5 performance. Keep in mind that not all hardware acceleration is equal. Today, IE9 is the first and only browser to deliver full hardware acceleration of all HTML5 content.

—Ted Johnson, Program Manager Lead for Web Graphics

Comments (113)

  1. Juliana Pena says:

    What happens when the DWM is disabled?

  2. paul says:

    Fair enough. But given that several of your competitors have now beaten you to support in a beta release, albeit with partial support, what's going to stop them beating you to full support in a final release?

  3. @Paul, at his Mom's house... says:

    Really? I've been running platform previews of IE9 since March. Seems kinda beta to me…

  4. Gunthar says:

    > display rendering performance

    Does this include image decoding? This is something still done in the CPU, does IE make use of SSE2 and similar? What about sites with very large images where clogging the memory should be avoided and therefore caching the raw bitmap is not advised?

  5. Gunthar says:

    And talking about FPS, are there any plans for an API to give the user control over this, e.g. so that an advanced web app will burn less cycles when in battery mode?

  6. Rob says:

    Firefox had hardware acceleration some time last year, at least before November or September.

  7. Rob says:

    To be clear, I'm talking of the beta, of course.

  8. Nick says:

    Nice!  Keep up the good work!  I'm enjoying watching the other browsers spin, and their small flocks of sheep bleating across the web.

  9. @ Moron responding to Paul says:

    Platform preview != end user beta

  10. Michael says:

    Microsoft Should listen to the users of Internet explorer. Just to see what New stuff and features that the users want to see in Internet Explorer.  (Like They did with windows 7)

  11. Daren says:

    And this is the biggest problem that faces anyone trying to build web applications that are leveraged outside of the enterprise – there are now more "standards" that have to be complied with. Say WebDev1 builds and HTML5 compliant app (whatever HTML5 compliance means – as it is not yet a standard…) and builds this app ontop of IE9, taking full advantage of the capabilities to provide a fabulously rich and interactive experience. Then user1 tries to run it in his HTML 5 compliant browser and finds it's unusable… now Dev1 needs to include a bunch of user agent detection code to scale up and down the experience and target HTML4, HTML5, unaccelerated browsers, etc. Widely different performance characteristics are going to be as much of an issue as varying degrees of compliance with the Editors Draft of the HTML 5 specification.

    Of course, there's huge cool factor in having "the best, fastest, browser" running on your platform – and I don't deny that the performance I see in the preview is impressive. Unfortunately I see the negatives of trying to build solutions with reach.

  12. Mark says:

    Great work IE team! Can't wait for IE9!

  13. Santosh says:

    What happens to the XP users ????  Is IE is going to be slowest browser for me ?

  14. Debbie says:

    @Santosh

    Yes, if you use IE8.  But Opera, Chrome, Safari and Firefox all still support Windows XP.  And to make some operations faster if you decide to stick with IE you could try a solution like Google Chrome Frame.

    If for whatever reason you need Windows XP for some sort of compatibility purpose consider using the Windows XP Mode under Windows 7; then you can use IE9 on 7 and whatever application you need under XP.  Though, generally, I've found few pieces of software that won't run on the 32-bit version of Windows 7 that ran on XP — the 64-bit will cause some issues, however, especially with really old 16-bit software, or 32-bit software that uses a 16-bit Setup stub.  They won't run at-all.

    People here can appreciate if you don't wish to upgrade from Windows XP, but ultimately it cannot be supported forever.  After all, just because it's the most in-use OS currently doesn't mean for that reason alone it should be fully supported.  There's more PlayStation and PS2 consoles out there (130 million PS1 and 145 million PS2, according to Wikipedia) — so one could equally argue Sony and their partners should still be making games for these.  (Those figures are more than PS3 (38 million), XBOX 360 (42 million) or Nintendo Wii (74 million) !).  Reality is we'd all be paying a fortune for products if companies never discontinued products.

    That said, perhaps an IE 8.5 could be created backporting the new standards work but without the rendering features that require at-least Vista with Platform Update and Microsoft could charge users for it, and treat it as standalone software?

  15. Matt says:

    Excellent points, Debbie. It's nice to see that there are still some thoughtful comments here that include research and consider multiple points of view.

  16. @Rob to be completely accurate, Firefox put a prototype hardware acceleration in a nightly build after Microsoft demo'd an internal build of IE 9 with it at the PDC last fall – not really a full beta and it didn't return to Firefox until the recent beta. It's kind of leapfrogging as everyone works out how to do this, I think.

  17. Stifu says:

    @Debbie: did you mean to propose that people would have to pay for this "IE 8.5"? It's just not going to happen. No one is going to pay for a desktop computer web browser anymore (especially if the superior IE9 is free, although not available for XP).

  18. @Juliana Peña IE9 runs without any issues when DWM is disabled – the GPU is still used to render content.

  19. Ted Johnson [MSFT] says:

    In all this talk of GPU acceleration, I should have noted that IE9 will fall back to a software rendering mode if, for some reason, your GPU is not capable of running Direct2D (perhaps 5% of GPUs on Vista and Windows 7 machines). This software mode is also used with remote desktop sessions, in virtual machines, or if you boot Windows in "Safe mode."

    The software mode is not Windows' GDI but a software emulation of DirectX with all the features of Direct2D and Direct3D and higher performance than GDI.

  20. giuseppe SNCR says:

    "Today, IE9 is the first and only browser to deliver full hardware acceleration of all HTML5 content."

    Context2D compositing ist not hardware accellerated yet.

    and with

    "As IE supports new, emerging Web standards, those implementations will also be fully hardware accelerated."

    you surely must be talking about WebGL.

    just kidding…

    jokes aside: in response to"Remember, Real World Performance is Multidimensional":

    That 'real world' means the existing web, a world of websites that were developed based on pre-html5 technologies. In the 'real world' of the future, there will be new scenarios of how the new technologies are combined and applied. this in consequence will expose new bottlenecks that are not visible from todays benchmarks and not from the simple html5 demos (e.g. from apple, google, microsoft) that showcase single aspects, but no real world scenarios.

    I am co-developing a 'same markup' html5/css3/ES5/SVG application (several KLOC), and while it runs in IE9pp, I am afraid to say that it feels the slowest of all competing browsers. Safari 5 for windows is the second slowest, then come opera 10 and chrome 6. Surprisingly firefox 3.6 shows the best overall performance (FF4 is even better) albeith it is positioned further back in popular browser benchmarks.

    There are aspects where the 'old' firefox is outperformed by other browsers, but those browsers are signifficantly slower at some other things that are more noticable to the user, and not in a good way. For IE9pp (and safari) it appears to be the layout and/or compositing subsystem/s that is/are a major weak point, but that is just a guess and it has not been further investigated yet, as currently available final versions of firefox, opera and chrome all perform well in this concern, and IE9 is not available as final version yet, so it is believed that this is a subject to change. I am sure it is html5 content that i am referring to, and i believe you that all of it is hw accelerated. however in that case for example it still is slower than the rest.

    So yes, "Real World Performance is Multidimensional", but the axes are not scaled yet, which makes it difficult to maximize for its volume…

    nevertheless, thanks for bringing IE closer to other web browsers. maybe the web now can finally evolve out of that big mess that is is today, where the client side part of webpage, -site, -app  content doesnt consist of 95% cross browser abstraction (library) code written by people that didnt have time to learn javascript because they were busy identifying the 'implementation specialities' of different browsers.

    nice weekend everyone,

    g

  21. Leith says:

    I have to agree with MS here. I think Chrome's approach using OpenGL is a big mistake. They should keep OpenGL on Linux/Mac and use Direct2D and 3D on Windows. The reason is that as far as I can tell it is going to a mission to emulate al of Direct2D's font rendering etc in pure OpenGL, so I think Chrome will only ever be able to use GL for composition.

    Also, does Microsoft have any plans to support WebGL in the near future? As much as Microsoft hate GL's guts, it would be nice to see a cross platform/browser 3D and kill Flash for good. They can always use Direct3D 9 to emulate WebGL like Chrome's ANGLE does, or they could just use native GL or GL ES.

    Lastly, with all this talk of Direct3D composition, are we going to see some cool support for CSS3 3D transforms? Seems like it would be very easy to implement in IE9's framework.

  22. era says:

    MS is too prideful to use a standard like OpenGL.

    They obviously want to divide the web along acceleration approaches.

  23. Kraham says:

    Is this just a coincidence or is this blog post basically a reply to hacks.mozilla.org/…/hardware-acceleration ?

  24. Kraham says:

    @Leith:

    "The reason is that as far as I can tell it is going to a mission to emulate al of Direct2D's font rendering etc in pure OpenGL"

    FreeType/Pango…

  25. jason k says:

    GPU acceleration is great and we are glad to see Firefox 4 embracing it (at any level, partial or complete) because Firefox, Chrome and other non-IE browsers can also handle basic JavaScript and CSS that IE can't – not even IE9.

    Poor IE9 is still not capable of setting innerHTML properly even though MSFT has known about their bugs for over 12 years.  Its always the little things that make developers face palm every day when developing for the web and testing in IE.

    Oh yeah, this won't work in IE6.  Oh yeah, IE7 can't handle simple DOM methods, Oh yeah IE8 can't do rounded corners or W3C events, Oh yeah IE9 still can't do innerHTML.

    IE9 has to stop this insanity and "Just work"… and by recent tests it is still a long way off.

  26. Mike Shaver says:

    You are unfortunately incorrect about what Firefox 4 provides, even in today's tree, and I suspect that testing our publicly-available builds with the D3D and D2D debug layers would have let you find that out for yourself.  (Or reading the many public discussions of our features and plans.)  Firefox implements Direct2D acceleration of content elements, including text via DirectWrite, borders,  and canvas — including globalCompositeOperation, which IE9 PP4 doesn't implement at all.  We also accelerate compositing, using D2D and D3D10, and can implement WebGL in the absence of effective operating system and driver support via the ANGLE project.  We would definitely appreciate it if you could get the Direct2D team to implement support sufficient to handle the canvas LIGHTEN operator without requiring expensive readback, though, since you seem to work quite closely with them!

    On Windows XP, Firefox 4 will provide compositing-only acceleration to ensure that the majority of our Windows users — and probably the majority of  Microsoft's as well — who are on that operating system can still benefit from their graphics hardware.

    If you find yourself in the future with questions about what Firefox can do, please feel free to contact me (Dean has my address :) ).  You need not rely on mere interpretation of blog posts, since we provide runnable nightly builds, full source code, and extensive public discussion.

    It's true that taking advantage of hardware acceleration requires architectural investment, and certainly a lot of debugging. (As an example, some WHQL drivers have problems under D2D if the IE9-bundled hotfix is installed.  It's our hope that installing IE9 won't cause problems for other browsers that take advantage of Direct2D capabilities, perhaps through improved testing of Direct2D behaviour in the WinQual process.)  DirectX itself is an abstraction layer over software and multiple-vendor userspace drivers (and, given the Xbox, multiple operating systems), but if you find that you are seeing a lot of performance loss due to abstraction overhead, I'd be happy to see if we can help.  We're very interested in the web being fast, including for those users who remain with their operating system's default browser.

    Mike Shaver

    VP Engineering, Mozilla

  27. I'm glad you guys brought up the problem with animations taking up more CPU than they needed.

    One of the things about Firefox 4 is that it contains a per-document timer that drives painting and internal animations (like those provided by SMIL / SVG Animation.)  One of the things that we've also done is expose that timer to page content so that if you're writing an animation you don't waste time redrawing when the browser isn't ready to paint.  If your browser is only painting at 60fps, there's no reason to go faster than that.

    You can read more about it here:

    hacks.mozilla.org/…/more-efficient-javascript-animations-with-mozrequestanimationframe

    We also expect that we'll be able to turn down that refresh timer in windows that aren't visible meaning that page content could potentially save huge amounts of CPU for pages that aren't in the foreground.  It's generally a much better architecture than polling via script.

    Christopher Blizzard

    Director of Web Platform Product, Mozilla

  28. ROFLLMAO says:

    Somebody hit a nerve with this blog post. :-D  

    I wonder whether Microsoft execs will now go troll the Mozilla blogs in return?

    What a show this is turning out to be!

  29. Mario says:

    Internet Explorer 9 will have a timer on it?

  30. Andreas Nilsson says:

    Im tired of internet explorer not supporting webkit.. Why not support that when all the other "Bigger" browsers does?

    Just because of that im not going to spend my time to optimize my site for Internet explorer.. Its time consumeing.

    I have alot of friends and I have asked people on my school what browser they use at home and its not internet explorer.

  31. Aethec says:

    @Andreas Nilsson >> What do you mean ? Webkit is a rendering engine – you can't "support webkit".

  32. Meni says:

    With all due respect to the poster and the FF guys (i'm a ff user myself, so thanks guys), this direction is the wrong one to go. "My browser can do x FPSs more then yours" is just a waste of time. So is talking about DirectWrite, Direct2D etc. It gives some fanboys false sense of what just happened. And this is what happened: MS is supporting standards! Standards I have never dreamed i a million years they'd support. Standards that MS fanboys would have never touched with a stick. This is what just happened:

    We all just woke up from a bad dream where SVG was held hostage by Microsoft (granted, it was a story of egos and pride in w3 graphics commity, SVG vs VML, Microsoft might had a reason to be hurt, who cares), where one MUST use a library such as jQuery just to create a simple interactive page (granted, we still have to use it for the foreseeable future unless targeting only standard-compliant browsers), where some developers think the web is an extension of the win32 platform, and they demand that the world stop for them, and their users browse only with IE6 on Windows.

    I my be naive but i feel now is the time to get together and a) quickly finish HTM5 b) fill those holes in HTML5 and EcmaScript as quickly as can be done. Put your energy there, no in talks about FPS and Direct@#@$%. It's time to kill flash and SIlverlight (which, thanks to MS marketing, was a huge waste of time/effort esp. of your MS partners).

    On a different note, IETeam, the sooner you issue a statement on WebGL, the better it is for YOUR fans! I really, but really, don't care one way or another. My plans include using/teaching WebGL! For me, if you don't support WebGL, you're just marginalizing IE. After having 95% market share for IE, who would imagine a world with iPhones, Androids, Firefox, Chrome etc. How impredictable the world is.

    And how bright the future looks (for everyone).

  33. Aethec says:

    Meni >> WebGL can't be a standard since it is based on OpenGL. Same would go with a DirectX-based 3D thing. Web standards must be platform- and hardware-independent.

    By the way, Silverlight and Flash are *not* going to die.

  34. Klimax says:

    @meni: Link to WebGL being standard. Nothing is on W3C nor it seems to be standard. I expect to be WebGL to be ignored by majority as useless while they'll wait on W3C. And I am sure they won't use single technology based upon vendor-extendable standard. (And instead of signle techology they will release sort of API with implementation being browser dependant)

    You may teach that all you want,but don't be suprised if it will be wasted effort.

    IE won't fail/be marginalised just because your favourite technology is not supported. Forget nonstandard techology and you save yourself and your students(?) a lot of time.

  35. Robert O'Callahan says:

    @Klimax, Aethec: OpenGL is definitely an open, multi-vendor standard. It's managed by the Khronos Group, many vendors have contributed to it over many years, and there are many implementations on almost all platforms, including Windows. If we're going to have 3D graphics on the Web, it makes total sense to base that on OpenGL.

    WebGL is also an open, multi-vendor standard. It is also being developed in the Khronos Group. Microsoft has chosen not to participate, but every other major browser vendor is involved, plus other interested companies. Once every browser but IE has WebGL (which will happen soon), I believe Microsoft will be dragged into WebGL whether they want to or not, just like they have been with HTML5.

  36. DaveGreen says:

    Reading mozilla guys claiming the irrelevant here is quite funny.

  37. infinte says:

    The pixel-blending(compising) can be done with D3D shaders? And text-shadow? even -ms-shader (using .shader files)? Some -ms- prefixes are great.(for "compacity")

    And where are the OpenType features(like LIGA or CALT)?

    As for 3d… Can you provide something "has the same feature" like canvas.getContent("MSD3D10")?

  38. OPEN says:

    en.wikipedia.org/…/Fear,_uncertainty_and_doubt

    en.wikipedia.org/…/Embrace,_extend_and_extinguish

    en.wikipedia.org/…/Halloween_documents

    Sounds familiar? It should be. If you can't compete with superior open source software, lie, cheat, steal, FUD, EEE your way.

  39. Klimax says:

    WebGL is not even finished. It dictates technology. True web standard (and be carefull with this statement as it can be logical fallacy – not that somebody cares) should define API with all behaviour defined. Nothing less,nothing more and what techology is used shouldn't matter. That way those platforms benefiting from OpenGL will use that while MS wouold use DirectX. (And this would make more sense as OpenGL is not directly over GPU drivers in Vista and 7 AFAIK)

    It is interesting idea,but should be reworked into techology-agnostic standard. Better outcome for all.

  40. infinte says:

    The pixel-blending(compising) can be done with D3D shaders?(unsupporting it is limited by D2D API, not by the IE team. And, D2D is interopable with D3D.F*** the API designer!) And text-shadow?(the box-shadow is almost fully supported.) even -ms-shader (using .shader files)? Some -ms- prefixes are great.(for "compacity")

    And where are the OpenType features(like LIGA or CALT)?

    As for 3d… Can you provide something "has the same feature" like canvas.getContent("MSD3D10")?

    ———-

    Advices:

    * DISABLE third-party embedding(ieframe.dll), by changing the interface (like what jscript9 did)

    * IGNORE  the old-fashioned sites

    * DISABLE ocx-es, provide NSAPI or another interface?

    * DISABLE VBS and HTC

    * Seamless silverlight/.NET interop.

    * Easy-to-develop extension system, by silverlight, .NET, or JS. STOP SUPPORTING COM EXTENSIONS NOW!

  41. Ted Johnson [MSFT] says:

    @Mike Shaver: My article makes no claims regarding “what Firefox 4 provides.” My post simply points out that IE9’s Platform Previews have had GPU-acceleration “on by default” since first released in March 2010. One of the sources I consulted, Paul Rouget’s September 7 post at hacks.mozilla.org/…/hardware-acceleration, states, regarding Compositing acceleration, “This feature is not activated by default yet [in Firefox 4 Beta 5].” My own experimentation (using default settings) supports that observation. We fully expect all Windows-based browsers to hardware-accelerate all stages of their rendering pipeline at some point. It’s great to know Firefox is moving in that direction. IE9’s just had it “on by default” since March.

    @Christopher Blizzard: That’s great to hear regarding the painting and animation timer. Consuming unnecessary cycles for animations no one will see is just silly. So I wonder why the so-called Hardware Acceleration Stress Test (demos.hacks.mozilla.org/…/HWACCEL) shows an FPS greater than 60 fps on my [very capable] home machine. Inspection of the test shows it uses a simple “setTimeout(draw, 0)” call, meaning that what’s really being tested is the resolution of the setTimeout() timer, not actual rendering speed (except in the case rendering a frame takes longer than the timer resolution). We all know that different browsers implement different resolutions for their setTimeout() and setInterval() timers.

  42. Jones111 says:

    @era/@all:

    OpenGL is a way different graphics acceleration standard than DirectX. It's based on other technologies and it's implementation on a system that uses the way better and faster DirectX is a waste of time. DirectX has been the best since its first release showing doom on W95. Now, we've got a long support and there's no graphics card in the last ten years that didn't had an DX api and an optimized layout for best performance on Windows.

    So WHY should anyone be interested in destroying an industry standard that is better any version?

  43. Blah says:

    @FX4: Even your authors admit that they don't try to be objective. From their About Us page: "Our coverage is highly opinionated".

    From the article, it's obvious that the CT guys aren't even running with hardware acceleration enabled… perhaps they have a card on the list that isn't supported due to poor drivers. I mean, 32fps on a "quad core system"?? Why don't they say what GFX card they're using? Even my two-year-old notebook with a junk Intel graphics chip gets 50+fps.

  44. Firefox 4 has all the three levels of acceleration says:

    weblogs.mozillazine.org/…/full_hardware_a.html

  45. Meni says:

    Jones111, VML is 10 times better then SVG, IPX is 20 times better then TCP/IP, and yes, who can forget, Betamax is way better then VHS. [And may I add a more controversial one: Win32 Api is way cleaner then POSIX. As far as .net vs Java, the way I see it Microsoft will open the entire stack one not very far day]

    All this is water under the bridge, as is this 3D one. Will just have to wait and see how this will play out.

    :-)

  46. Badger says:

    @Kilmax   You nailed this one on the head. The problem with WebGL is that it is too tied to OpenGL. It should instead be a more generic description of 3D canvas APIs and their expected behavior. A web standard needs to be created in such a way that it can be implemented regardless of platform or underlying technology. The tight linkage that exists between WebGL and OpenGL is the reason why I hesitate calling it an open web standard (despite Khronos shamelessly stealing the W3C's document styling/formatting :-) ). They are doing the web a great disservice by implementing a "standard" that can't easily be implemented via one of the most popular graphics systems around: DirectX.

    Don't get me wrong: I want hardware accelerated 3D Canvas APIs. But that's the key: APIs. Perhaps, MSFT will find a way to abstract out the API portion of WebGL but implement the underlying graphics work through DirectX. That would be a decent compromise, but may cause some inconsistencies between browsers. Then down the road, people will complain that MSFT isn't interoperable…..but really the reason is that WebGL was craftily based on a technology that its creators knew MSFT wouldn't want to use.

  47. Richard says:

    @Ted Johnson [MSFT]: How can I check whether my GPU supports Direct2D or not? And will there be a way to know if IE9 is running Direct2D or if it is emulating it? (Maybe something like about:direct2d?)

    Thank you.

  48. Anon says:

    OK. You were the first to offer full acceleration. But telling us that other browsers are not currently supporting it, while knowing full well that it will be extremely soon supported by other browsers too, is dishonest. Your words might be correct but what it can be infered from them is intentionally missleading. I would have liked you to be more honest and mention in your post the fact that Firefox and Chrome both intend to add acceleration perhaps even before IE9 RTMs. Your post currently sound like other browsers will either be slower because of the abstraction layers or will implement only partial acceleration. This is not true and implying this is dishonest. Alsoo, don't forget that other browsers have had many many features that IE9 only now is trying to catch up to and yet in their blogs they do not bost about it.

  49. Ted Johnson [MSFT] says:

    @Richard: In the full IE9 beta there's a setting in the Internet Options dialog, Advanced tab that lets you select software rendering instead of GPU-based rendering. If that option is checked and disabled (grayed out), it means your GPU (or the currently installed driver) either does not support or function correctly with IE9's use of Direct2D. There's no equivalent option in the Platform Preview builds.

  50. Are you on crack? says:

    <<yet in their blogs they do not bost about it.>>

    Clearly, you don't read very well.

  51. Ted Johnson [MSFT] says:

    @Anon: My post is about the state of the world as it is today. I cannot predict if or when other browser vendors will enable full hardware acceleration by default. “On by default” is a valid measure. Turning a feature on by default means the engineering team has confidence that the hundreds of thousands or millions of users who install that software will not encounter severe problems. Having an experimental feature in a build but not enabling it by default is—for the vast majority of users—the same as the feature not being there.

  52. Richard says:

    @Ted Johnson [MSFT]: thanks!

  53. Robert O'Callahan says:

    Ted, D2D and D3D are enabled by default on Firefox trunk today, and have been since September 4:

    hg.mozilla.org/…/fd13b6ce36bd

    D3D wasn't enabled in beta5, which was made just before that, but it will be enabled for beta6 of course.

  54. No one cares says:

    Normal humans don't download the trunk and compile it themselves, nor do they run nightlies.

  55. http://www.conceivablytech.com/…/google-activates-chrome-gpu-acceleration

    Still faster than IE9 even without GPU acceleration, now with GPU acceleration, Chrome is even faster and embarasses IE9 in standards support, 262 points in beta.html5test.com vs IE9's measly 96 points.

    Try again when you got real substance, MSFT.

  56. Reinhold Hoffner says:

    @No one cares: I'm a normal human and I run Firefox 4 nightly builds.

    @Ted Johnson, Chris Blizzard, Mike Shaver: Arguments over architecture are far less interesting than arguments over outcomes. In his IE Blog post on the 3rd of June Seth McLaughlin wrote, "Like each other browser tested, we ran Minefield in its default configuration (which means hardware rendering with D2D was not enabled). We will post comparisons with Firefox’s hardware acceleration when it’s on by default in their beta." Well, rendering acceleration is on by default in Firefox 4 Beta 5 and compositing acceleration will be turned on by default in Firefox 4 Beta 6. Why not benchmark Beta 5 against IE9 PP4 now and then benchmark IE9 Beta 1 against Firefox 4 Beta 6? It would be more productive than vague, hand waving arguments over which architecture is better. Show me the numbers.

  57. ieuser says:

    @Google Chrome: Give me an real web example where chrome is faster then IE 9 P4 without GPU acceleration? beta.html5test.com sucks itself and uses a lot browser detection techniques…

  58. Aethec says:

    @Google Chrome: Please a) read what you are linking to (they explicitly say both FF4 and IE9 scored better than Chrome 7) and b) think hard before posting results from html5test.com…Bonus points for PCM audio? Points for WebGL? UA-sniffing to give some browsers points they wouldn't get otherwise? Ridiculous.

    @Robert O'Callahan, Reinhold Hoffner: Last time I used FF nightlies, they corrupted my profile, created 2500 "places.sql.corrupt" files, and threw RPC errors when I tried to open Windows Explorer. (I don't blame Mozilla – it's quite obvious that nightly builds have bugs) Sorry, but a nightly build can't be compared to what the IE team calls a "Platform Preview". They are confident enough to release something to everyone in an official website, talk about it, and even give presentations about it. Mozilla is not.

    But I agree we should compare IE9 Beta 1 to FF4 Beta 6 when they're out.

  59. James says:

    So, when is IE9 going to come out? 2013? 2014?

    Chrome team is hammering you so bad, it's hilarious.

    It's time for a big cup of STFU and execute.

    Though to be fair I guess most of the good Microsoft guys have left and are now working for Google ;)

  60. Eric says:

    @Google.Chrome

    I notice that that html5 beta page has increased its vastly increased points for forms support and fgives points for non html5 webgl. I guess when IE does not support something more point should be given to it. The page gives point to supproting specs which are stil a total mess.

    One of the biggest part of supporting html5 is the embedded use of SVG which in itself is a huge spec but I guess the html5 test page gives 1 or 2 points for supporting embedded SVG. However the test does give extra points for supporting Theora which is likely been the worst codec to have appeared in the last ten years and which should preferbly be banned from ever being used again. I would prefer negative point given for supporting terrible codecs like that.

  61. ego says:

    @Aethec

    I've been using Firefox nightly builds for daily browsing for a few years now. IE 9 Platform Preview is hardly suitable for that. Remember that you need to use CTRL+O to open a new site!

    So, yes, let's compare IE9 Beta 1 to Fx4 Beta 6 when they're out.

  62. 7flavor says:

    IE9 is also the first and only browser to ignore 70% of the web (10% OS X, Linux) and 60% XP and target only 30% of web users. Microsoft just doesn't get it that hardware acceleration is secondary to delivery standards compliance to all Windows customers. Maybe IE10.

  63. someone says:

    How about I dump IE and actively tell all other people I know to spread the message to use anything else but IE is only the evil IE will continue to tie itself to Windows technlogiies in one way or the other. Tomorrow, IE11 will dump Windows 7 because it won't have the necessary graphics support Windows 9 has. Software can't be supported forever but YOU HAVE TO FREAKING SUPPORT SOFTWARE ON THE DOMINANT PLATFORM PEOPLE USE. Microsoft obviosuly doesn't get it with their Windows-7 colored glasses and now IE9 as much awesome as it is will and must die slowly for punishing its dominant platform users. No other vendor will be this level of nefarious evil. WINDOWS XP HAS TO BE SUPPORTED BECAUSE VISTA WAS A COMMERCIAL FAILURE.

  64. FFFan says:

    IE9 is a slap to the very essence of the open standards-based web. Targeting a select few with Windows specific new technologies that aren't mainstream. I say this even as I like, upgraded and am posting from Windows 7.

  65. Esben Sundgaard says:

    I think it makes perfectly sense to make a browser that only support the newest in graphics technology. And because the IE9 team can concentrate on making it only for Vista and 7 they can hopefully spend much more time on making a great browser instead of spending a lot of time making a browser that works on every OS in the world. Looking forward to the beta! :-)

  66. AntiLuddite says:

    @7flavor and @someone ( I know you are the same person, aka, Tuxplorer), XP has only 46% market share right now, and within 12 months it will have less than 30%. XP is a pathetic, fugly, insecure and unusable OS which is dead as a dodo. So, Kudos to Microsoft for not supporting the pathetic XP OS with IE9. Windows 7 FTW.

  67. Giuseppe says:

    @ D3D vs WebGL

    I wonder if some of you need to be told by gartner first before they see that a lot of web browsing will happen on CE devices instead of desktop computers. TVs, mobile phones, gaming consoles, car infotainment systems, etc.

    Looking at D3D vs WebGL under this light, it should be noticed that there are already a lot of OpenGL ES hardware accelerated devices amongst them.

    WebGL basically is a subset of OpenGL ES with a different ('ecmascript friendlier') api, and some additional data types for ecmascript (cvs.khronos.org/…/TypedArray-spec.html).

    I see a clear advantage for WegGL.

    g

  68. XP FTW says:

    Winblows 7, garbage slow bloatware OS with SLOW 2D performance.

    http://www.youtube.com/watch

    http://www.youtube.com/watch

    Enjoy your slow 2D, slow GUI and extremely high CPU usage even on a quad core CPU.

  69. dugbug says:

    @FFFan

    Dude, switch to decaf.  Honestly, what are you talking about?  The fact that IE9 is for windows? ppffft. whatever.

  70. Aethec says:

    @XP FTW: Yeah, you're right, Microsoft should continue supporting very old technologies instead of creating new, better ones. Dummy.

  71. Klimax says:

    XP FTW: Argumentum ad youtubum. Perfect. Just  convinietly ignores old drivers and numerous updates fixing whatever left behinds. Just tested "demonstration" from first YT and just don't see it. I loaded Win7 on Atom,Core2 and Core i5/7 (Intel or GeForce) and all those animations and extra effects just are fluent. If there was sluggishnes it was due to old drivers and some bugs.(WDDM 1.0 – Vista drivers!)

    If however you want your rants have some merit,I suggest to run benchmarks (there are tons of them) while using latest drivers and with all updates installed,otherwise you spread FUD.

    (I have load of fun everytime I show Atom netbook running Windows 7 proff. with Aero active,while being very responding to commands…)

    The only thing those vids avoided was using FRAPS-like programm…

    Are any 7-bashers up to task of measuring properly performance of 2D graphics or will they be cowards and FUDers?

  72. XP FTW says:

    http://www.tomshardware.com/…/2d-windows-gdi,2539.html

    http://www.tomshardware.com/…/2d-windows-gdi,2547.html

    http://www.tomshardware.com/…/ati-2d-performance-radeon-hd-5000,2635-6.html

    "Despite significant improvements made by the ATI driver developers and Nvidia, the two graphics manufacturers are not exactly soiling themselves with glory. The performance level that Windows XP sported in 2D is still very much missing."

    If you Win7 fanboys want to use a garbage, slow, bloatware OS, that's your choice, live with inferior performance and unresponsive GUI and high CPU usage. Don't even try and talk nonsense if you don't know anything.

  73. Literacy, FTW says:

    If you bother to read, XP, you'd know that the quotes you're citing out of context refer to GDI performance. GDI isn't used by games, WPF apps, or (at the risk of making this discussion relevant) hardware-accelerated browsers.

  74. AntiTuxplorer says:

    Ha ha, some Luddites are finding it very difficult to accept the reality that the pathetic XP OS is going out of favor by everyone throughout the world! Times are indeed very tough for the Luddites of the world!

  75. tigerhawkvok says:

    Picking a nit:

    <blockquote><p>A typical measure of graphics performance is frames-per-second (FPS), which indicates how many times per second a browser can update the screen. Be skeptical of demos that show frames-per-second rates greater than 60 fps. The reason is simple: most computer screens refresh at 60 hertz. While it’s possible to render and compose page content faster than 60 frames-per-second, most users will not see it. The extra CPU and GPU cycles spent to render at rates above the refresh rate of your monitor are simply being wasted. This is why the graphics performance demos on the IE9 Test Drive site explicitly limit their frames-per-second to 60—to avoid wasting cycles rendering content you won’t see.</p></blockquote>

    This is not true, actually. You stop gaining theoretical benefits at 2nu, which is they <a href='en.wikipedia.org/…/Nyquist_rate& rate</a>. So, for a 60Hz monitor, you can see a difference to 120fps, though above that you can't even theoretically see the difference. So, the artificial  60fps limitation may introduce aliasing artifacts. (Now, if there was a clever way to poll the monitor refresh rate and set a browser-wide cap on FPS to 2nu, wherenu=[screen refresh rate], then that'd be impressive and definitely meaningful)

    Huzzah, physics!

  76. but does it fix innerHTML? says:

    Full Hardware Acceleration is great but will someone please think of the children! the innerHTML children! do they not deserve love too!

    In IE World the poor HTMLTable and HTMLSelect parents are unable to bear children easily due to Dr. innerHTML being unable to deliver.

    Please think of the children! and fix Dr. innerHTML.

  77. tigerhawkvok says:

    Picking a nit:

    <blockquote><p>A typical measure of graphics performance is frames-per-second (FPS), which indicates how many times per second a browser can update the screen. Be skeptical of demos that show frames-per-second rates greater than 60 fps. The reason is simple: most computer screens refresh at 60 hertz. While it’s possible to render and compose page content faster than 60 frames-per-second, most users will not see it. The extra CPU and GPU cycles spent to render at rates above the refresh rate of your monitor are simply being wasted. This is why the graphics performance demos on the IE9 Test Drive site explicitly limit their frames-per-second to 60—to avoid wasting cycles rendering content you won’t see.</p></blockquote>

    This is not true, actually. You stop gaining theoretical benefits at 2nu, which is they <a href='en.wikipedia.org/…/Nyquist_rate& rate</a>. So, for a 60Hz monitor, you can see a difference to 120fps, though above that you can't even theoretically see the difference. So, the artificial  60fps limitation may introduce aliasing artifacts. (Now, if there was a clever way to poll the monitor refresh rate and set a browser-wide cap on FPS to 2nu, wherenu=[screen refresh rate], then that'd be impressive and definitely meaningful)

    Huzzah, physics!

    (I hope this doesn't double post …)

  78. rebi says:

    Will it support VP8 out of the box or do we risk a Youtube lockout

  79. joe says:

    Where is WebGL support Microsoft?

  80. Matthew Raymond says:

    @Killmax and @Badger:

      Creating a true abstraction layer around current 3D graphics APIs is nearly impossible, because all current shader languages are tied either to the API (GLSL, HLSL) or specific hardware (Cg). In order to create a practical abstraction layer over the API, you'd have to create a layer that translates a completely new, neutral shader language into a platform specific one. This problem has already been demonstrated. Opera implemented an API-neutral 3D context, but no one uses it because it doesn't support shaders. Meanwhile, Mozilla implemented a 3D context that was essentially a thin wrapper around OpenGL, and it evolved into WebGL.

      (I'm actually surprised that people are arguing for a neutral context API when the parent article talks about how developers using abstraction layers "inevitably make tradeoffs which ultimately impact performance and reduce the ability of a browser to achieve ‘native’ performance". And wouldn't WebGL essentially serve as API neutral when used with ANGLE or some other emulation layer? How does that not achieve the same goal?)

      Furthermore, why incur the cost of API abstraction to avoid using a cross-platform API that will continue to be supported on Windows, and which will receive improved support on older platforms with the use of ANGLE? Note that OpenGL 4.1 has full support for the OpenGL ES 2.0 APIs, and since WebGL is based on OpenGL ES 2.0, it can be directly accelerated on any OpenGL .41 hardware. As someone else already pointed out, OpenGL ES is currently the most common 3D graphics API on phones and other mobile devices. (Considering all the cell phones out there, it may be the most common 3D API in existence.)

      So which would make more sense if you were a browser developer, abstracting all 3D graphics APIs (which is pretty much just Direct 3D and a subset of OpenGL, and exclusively OpenGL on anything not Windows or a game console), or basing a standardized Javascript interface around the already-standard OpenGL ES and using libraries like ANGLE on Windows when the integrated graphics hardware lacks proper driver support? (I'm looking at you, Intel!)

      BTW, it wouldn't surprise me if Microsoft already knows this, which is why I very much doubt that they'll offer a competing Canvas 3D context API. Any 3D context they could come up with would have one or more of the following issues:

    1) It would be viewed as proprietary, because Microsoft would initially be the only vendor supporting it.

    2) Assuming either the overall API or the shaders are based on Direct 3D, it would go largely unimplemented on non-Windows platforms because it would require an emulation or translation layer.

    3) Assuming a neutral API, it would very likely be slower than WebGL and would either not have shader support or would require a whole new "neutral" shader language (again, initially only supported by Microsoft).

    4) It would undercut Silverlight for 3D applications.

      No, I expect Microsoft will exclude WebGL support in IE 9, saying that the standard isn't complete. This gives them time to use their position as majority browser vendor to slow down the OpenGL adoption by developers as much as possible until WebGL becomes popular enough that they have little choice but to include it in IE 10 or 11. They'll then differentiate then version of Direct 3D as a "premium" graphics API, while painting OpenGL/WebGL as a APIs for simpler, lower power hardware.

  81. XP FTW says:

    As usual Winblows 7 fanboys can't read. Enjoy your slow 2D, unresponsive GUI and high CPU usage on quad core CPUs because most software still use GDI/GDI+ and even MS hasn't even begun porting the multitudes of MS software that still use GDI/GDI+ in Win7 since it's a massive undertaking.

  82. pete says:

    DirectX is an abstraction layer. So which is it? Abstraction layers kill your performance, or abstraction layers are awesome?

  83. Anon says:

    How come Google within only two years come up with a browser that is more advanced than even IE 9? Or, if you do not agree that Chrome is more advanced then at least it is comparable, or perhaps at least very very good. With a plug-in, Javascript and add-on architecture that is superior and with a security model that is also superior.

    How come Firefox implement hardware acceleration and enable it by default in full browser builds before IE9 comes out with a full browser beta, even though the IE team came up first with the idea of hardware acceleration?

    How come Firefox and Chrome release innovations so fast and so much sooner and do it across many platforms like the Mac, Linux and older versions of Windows that IE9 will not support?

    How come Firefox 4 and Chrome 6 come out perhaps with full hardware acceleration and many more innovations before the end of 2010 whilst IE9 most probably will take another 6 to 9 months?

    Why is the IE team so slow? Why does it lack vision? I mean why haven't you come up with one new and interesting feature except hardware acceleration and do it faster than your competition?

    You say that you have an advantage because you work only on Windows. Well, the results do not prove that. Other vendors do a much better job, support more standards, do it on many more platforms and do it faster than you. And at least Firefox has millions of users as IE, so number of users cannot also be an excuse. So, what is the problem with you people. The last 10 years were only catching up. Google continuously thinks of new things, like syncing of add-on settings across computers. You are slow in innovating and slow in executing.

  84. johnnyq3 says:

    Well enjoy using an OS that in 4 years won't get any updates, then. ^^

    As for me, I'll use Win7 on a 1.73 Celeron M processor computer, and rarely have problems.

  85. pete says:

    @Badger

    OpenGL and WebGL have nothing to do with DirectX. They're not implemented in DirectX, they're implemented in the GPU drivers. They're designed to replace DirectX. You ever notice how other platforms that don't have DirectX still have OpenGL? If anything, WebGL needs to be implemented on top of OpenGL, and that got a lot easier with the latest version.

  86. T says:

    This development of IE 9 is so Microsoft. Delusional and irrelevant.

    A single platform Internet Explorer is irrelevant to the open web of tomorrow. Who cares if you are adding acceleration to IE, when users are only using IE on mass as a conduit to install and use safer and faster web browsers instead of Internet explorers.

    Who actually cares if your Internet explorer product can render accelerated canvas elements for a standard that hasn't even been published yet when it cannot even render pages validated to today's published standards???

    Surely this "We have a new irrelevant feature" means more ignorant bliss for you guys, when in reality, web developers all over the entire world are becoming even more sick and tired of your Internet Explorer product's lack of security and inability to render currently published and widely used web standards correctly.

    Learn to walk before you can run and if that's too much to ask, then I'm sure the Mozilla, Chrome or Opera developers can teach you how to build a web browser instead of an Internet explorer, should you ask them nicely.

  87. Mark Hollis says:

    Any acceleration in a browser is great, especially as the US lags the rest of the developed world in Internet speed delivered to the home. But I have had to rewrite (or purchase) special code to have to deal with Microsoft's long-standing decisions to go their own way when standards (now ten years old) are developed.

    Microsoft says they sell software that makes you more productive. But if you are developing for the Internet, you are less productive because of Microsoft decisions.

    I'm happy they're writing good code they can crow about, but it fails miserably if I have to edit and modify code due to incompatibilities due to IE being non-compliant with W3C standards (both current and proposed) and doing everything they can to hold up consensus on new ones. It's past time for Microsoft to start playing well with others.

    I have been urging all of my clients to use modern standards-compliant browsers that show off their websites as they should look. I have no hope that Microsoft will write an HTML5 and CSS3 – compliant browser. Ever.

  88. Meh says:

    XP FTW: Maybe you don't know this, but 2D performance also dropped enormously from 95/98/Me to 2000/XP. If you want the best 2D performance, you should be using Windows 98.

    Leaving that aside, these hardware accelerated browsers (and yes, that includes Firefox as well as IE9) are the fastest I've ever used on any system, so it's all good.

  89. pleasestopspreadingmisinformation says:

    @tigerhawkvok: I don't think you understand what a Nyquist rate is.

    Speaking simply, if you have an ANALOG (that is, continuous) signal with a frequency f, in order to reproduce it perfectly you have to sample it a rate of 2f. Sampling is just an act of recording current amplitude as a number.

    This doesn't have anything to do with fps. Nothing. Your post makes absolutely no sense.

  90. alec says:

    Microsoft IE developers: the world does not want or need your browser!  I don't care how fast you make the page render. You have cost me (as a web developer) countless hours in lost productivity due to the absolute lack of concern you have always demonstrated when it comes to actually making IE (any version!) standards compliant. Every month I look at browser stats from around the web and exclaim "hurrah!" for every percent IE loses to FF, Chrome, Safari – any modern browser will do, just not IE!

    So please, do the world a favor and just cease and desist. Go home. Spend some time with your family. Look for a new job somewhere else. Forget about this embarrassing, demeaning time of your life that you have spent developing this cancer tumor of a program that is known as IE.

  91. please... says:

    No, in order to reproduce an analog signal perfectly, you have to be God or equivalent.

  92. Sigh says:

    The trolls are out in full force… sad little fellows who haven't come out of dad's basement lately. Boy are they going to be annoyed when IE9 beta comes out and their rants are buried under the feedback of non-dorks.

  93. Bold talk from the company behind the lamest web browser of the last decade.  Let's hope you get it right this time for the sake of those who don't know they have other options.  Not trolling, just calling like it is.

  94. @Gabriel Gunderson says:

    "Not trolling…"

    That's called denial

  95. Bill Gates II says:

    Most IE Blog post fall in to at least one of these categories:

    1) Relevant question; These post ask the IE Team and/or MS to explain something they said in the post, or they change it in a respectful manner.

    2) Positive thinkers; These posts are from people who see that IE is taking some giant leaps and praise the IE Team for admitting they may have made mistakes and are correcting them. Also may be combined with #1.

    3) Bashers; Theres post are from people who either hate some browser for no other reason then it exists. Whether it's IE, Opera, FF, or Chrome they will bash it, with at best out of date information.

    4) Complainers; Similar to Bashers but they have one little thing that they will harp about IE having/doing/not-having/not-doing.

    5) MS Haters; Similar to Bashers but the hate is at a company, most often MS (hence the name).

    6) Random; self explanatory.

    Which are you? (I like to think I'm a bit of 1, 2, and 6)

  96. badger says:

    @pete  …. I completely understand that WebGL does not use DirectX. The problem I'm pointing out is this: WebGL is not technology agnostic. While the W3C has its own faults, the W3C does a good job at making sure standards are implementable on a variety of hardware platforms and using a variety of technological approaches. Khronos's WebGL "standard" pushes a particular technology when implementors should be able  to choose whichever suits their needs best. We want hardware accelerated 3D Canvas–and that should be possible with either D3D or OpenGL. Unfortunately, WebGL does not allow this.

    @XP FTW    IE9 does not use GDI.

  97. Klimax says:

    Strange,those who are bashing Windwos 7 never provide proof. YT videos are not proof. Hard numbers with entire methodology explained with all relevant info disclosed is (like apps installed,changes to default settings,…)

    Even stranger are those who bash IE and IE team. I doubt they'll be ever right about change in browser market. And to those "web designers" who complain: Use small libraries like PIE and shut up. You get IE6+ compatibility withóut effort.

  98. AntiLuddite says:

    @ Klimax

    "Those" are not bashing Windows 7. It's just one man. This guy uses the nicks "Tuxplorer", "7Flavor", "anonymous", "someone", "XP FTW", "XPclient" to troll MIcrosoft blogs. He just can't get over the fact that the rest of the world has abandoned XP and embraced Windows 7 – which is the greatest OS ever.

  99. The Little Guy In The Corner says:

    This is how I see it, I think hardware acceleration is great. As a web developer, I personally do not care how the browser implements it (in a web designer sense, though as a person who likes computing, it is interesting) as long as it works and works well.

    I personally would prefer Javascript and CSS fixes and any extra speed that can be squeezed out of them. I would really like if my code would simply work in all browsers without any extra libaries (note there to Klimax, I like IE but dont like using libaries to fix fairly straight forward problems).

    Now for the Windows 7 thing that has been discussed. I have been a Windows user for many years and I really liked Windows XP and when Windows Vista came out, I still thought XP was far better (which some if not most will agree). Now more to the point about GDI and speed in Windows 7 vs XP. Firstly, I run Windows 7 on a quad core and get little to no CPU usage because the Microsoft engineers are brilliant at what they do (when they want to be :P ). If anything, Windows 7 is a much faster beast then Windows XP due to various other OS improvements. Windows 7 might have a more graphics intense default theme setup but is easily changeable to something a little less if required (which I doubt it is required if you got minimum spec PC) and the "2D" you are talking about is GDI not Direct2D, so like badger said, IE9 won't use GDI unless it has to.

    Windows 7 is not bloat ware. Overall, it is not slow compared to previous versions Windows and it gets a few things XP will never get, DirectX10+ and security updates. So XP FTW, while I use this beautiful OS that is Windows 7, you will be stuck with XP, a host of security flaws and no IE9.

    Also, thank you to both the FF team and the IE team for continuing to improve your products.

  100. The Little Guy In The Corner says:

    This is how I see it, I think hardware acceleration is great. As a web developer, I personally do not care how the browser implements it (in a web designer sense, though as a person who likes computing, it is interesting) as long as it works and works well.

    I personally would prefer Javascript and CSS fixes and any extra speed that can be squeezed out of them. I would really like if my code would simply work in all browsers without any extra libaries (note there to Klimax, I like IE but dont like using libaries to fix fairly straight forward problems).

    Now for the Windows 7 thing that has been discussed. I have been a Windows user for many years and I really liked Windows XP and when Windows Vista came out, I still thought XP was far better (which some if not most will agree). Now more to the point about GDI and speed in Windows 7 vs XP. Firstly, I run Windows 7 on a quad core and get little to no CPU usage because the Microsoft engineers are brilliant at what they do (when they want to be :P ). If anything, Windows 7 is a much faster beast then Windows XP due to various other OS improvements. Windows 7 might have a more graphics intense default theme setup but is easily changeable to something a little less if required (which I doubt it is required if you got minimum spec PC) and the "2D" you are talking about is GDI not Direct2D, so like badger said, IE9 won't use GDI unless it has to.

    Windows 7 is not bloat ware. Overall, it is not slow compared to previous versions Windows and it gets a few things XP will never get, DirectX10+ and security updates. So XP FTW, while I use this beautiful OS that is Windows 7, you will be stuck with XP, a host of security flaws and no IE9.

    Also, thank you to both the FF team and the IE team for continuing to improve your products.

  101. hAl says:

    It is easy to see for people using Windows 7 that on the example Youtube video with a performance comparison between XP and W7 the W7 installation has issues particular to that installation.

    I have much more fluent GUI performance even on fairly old hardware.

    I also notice that the comparison video uploader switched of comments. Probalby because the uploader knows his comparison is bogus as it seems releated to him having issues with drivers or even him faking the example.

    @ AntiLuddite

    You are probably right that it is only one person or mayby just a few trolling this blog with changing nick names.

  102. Gringid says:

    @Anon: Different project management styles. I believe MS generally uses their own agile model called Microsoft Solution Framework (MSF). Also I heard that they use some awful versioning software, somewhere in the intertubes there is a blog post of an ex-MS employee describing it and how he worked on the start menu in Vista.

  103. Gringid says:

    @tigerhawkvok: I thought this was only the case for CRTs, not LCDs.

  104. Mark says:

    It is amusing seeing so many posts on here trying to disparage OpenGL and call it poor compared to DirectX … this is true only on Windows. OpenGL is crippled on Windows compared with any other platform. Run another OS on the same hardware, and OpenGL performance will easily rival Windows DirectX performance on that same hardware.

    As for OpenGL vs DirectX as a part of standards such as being the basis for WebGL, well OpenGL is royalty-free (a requirement for W3C standards) and available for most platforms (expect poor performance only on Windows), while Directx is patented and available only for Windows.

    No contest. DirectX is not even in the race for consideration to base any standard on.

    You see, "standards" are meant to be something that everyone can work with, without constraints. Everyone may freely implement a standard, without having to pay dues to any one group. Standards are not a popularity contest, they are rather a basis for interoperability.

  105. The Little Guy In The Corner says:

    I thought there was even little to no performance problem with OpenGL on Windows. OpenGL also does a large amount of things DirectX does.

    Isn't there pretty much only two types of operating systems? (Unix/Unix-Like and Windows)

    So is it really that hard to use DirectX on Windows and OpenGL on everything else? As long as OpenGL can do the same things as DirectX (or even the other way around), it really shouldn't matter. Don't the web browsers already have to be compiled for each operating system/type?

    I agree with what you are saying Mark with the idea to base a standard around OpenGL for the reasons you stated.

  106. Anonymous says:

    @Mark

    Normally I don't mind when people conflate Direct3d and DirectX, however in this discussion it it quite relevent to point out that opengl only competes with Direct3d, not the entire DirectX library. In particular, OpenGL does not compete with DirectWrite and Direct2d. And while it is of course quite possible to accelerate an application like a web browser with opengl, it is akin to using a square peg to fill a round hole so to speak. OpenGL was not designed for the task  for which IE and Firefox developers are using DirectWrite and Direct2d.

  107. John says:

    @Ted Johnson [MSFT]: You made a comment about what happens when GPU acceleration isn't available (it's emulated). Is not supporting XP a decision based on principles or technology? If the former, I find that aweful.

  108. Clue says:

    John, it's both. GPU acceleration is emulated using code that doesn't run on Windows XP. Graphics is only one area where IE9 uses APIs not available on the ancient xp codebase.

    And Windows XP isn't supported because that's what "out of support" means. All products have an end-of-life, and XP reached it.

  109. Raffi12 says:

    @Mark

    OpenGL apps generally run fastest on Windows since the video drivers there are the most mature.

    OpenGL and Direct3D are both basically lightweight interfaces, there's not a lot of meat there.  The implementation of both is provided by your video drivers.

  110. Joly Mathew says:

    All !

    I tried the IE9 on my quad-core 8 GB Windows-7 professional edition… and I must say the overall performance is not that great  in comparison with what I get from the latest  Chrome and FF .  I am using full Ajax based applications with live grids and lots and lots of data injection from server through threaded Ajax calls.

    The User Interface is somewhat better than FF , however not as good as chrome or its ease of use.

    I am glad finally the web developer can relax from the nightmare of  IE Hacks , they need to perform all time.

    It is definitely a welcome change from Microsoft , but they have to go real good miles to reach Chrome or FF

    Cheers!

  111. The Little Guy In The Corner says:

    @Joly Mathew

    Make sure you are not comparing the IO communication of the browsers to the client side performance. This page specifically was talking about hardware acceleration to which it seems like the application you were running would not use that to its full advantage. Out of curiosity, could you see how IE8 handles that application in comparison to IE9?

    Also, there still will be a number of IE hacks and little anomalies with either CSS and DOM manipulation to which I am slightly disappointed.

  112. Matthew Raymond says:

    @Badger: Your argument is nonsense. An "agnostic" Javascript API has no benefit for the following reasons:

    1) It does not allow Web application developers to choose the best API. They have to develop for the "agnostic" API. Only browser implementers would get to pick the underlying API used for implementation.

    2) It requires Web application developers to learn an additional graphics API. If you already know OpenGL and Direct3D, you actually have to learn a third API to do Web applications.

    3) It provides no benefit to browser implementers, because they'd have to create an ANGLE-like "thick" abstraction layer for the underlying operating system APIs regardless of the platform. WebGL, by contrast, is merely a thin API wrapper for OpenGL ES, and can be implemented on top of existing libraries like ANGLE or Mesa if the local platform doesn't support OpenGL or OpenGL ES.

    4) Application performance would suffer because of the abstraction layer the "agnostic" API would require to communicate with the underlying operating system APIs. In no scenario would such an API outperform WebGL, because ANGLE proves that OpenGL ES can be implemented on top of APIs such as Direct3D, and the "agnostic" API would have to encompass WebGL's feature set for it to be even remotely usable.

    5) The standard for an "agnostic" API would duplicate years of standardization efforts already performed by the Khronos Group. OpenGL ES and WebGL already exist as standards within that standards body. This would delay 3D support in browsers by years.

    6) An "agnostic" API has already failed in the real world. Opera had an API-agnostic 3D Canvas context, but no one uses it, and they now support WebGL.

      If Microsoft really wanted to give people the freedom to use what ever 3D graphics API they wish, it would make more sense for them to implement a sort of "WebDirect3D" Canvas context API as a thin wrapper around Direct3D. That way, a programmer could perform a simple check for WebDirect3D support and fall back to WebGL if support isn't present. Of course, all the major browser vendors except Microsoft already support WebGL and have no reason to support another competing API, and Microsoft will likely want to avoid the bad PR from exclusively supporting a rival, proprietary, platform-specific API.