Jaa


Getting the Most from IE9 and Your GPU

Over the past year, Internet Explorer 9 went from a technology platform preview to final release for millions of users. Before IE9 beta, our opt-in telemetry data showed IE9 running on a relatively small number of high-end GPUs. Within two weeks after beta release, IE9 was running on nearly every kind of GPU in the world—from expensive and fast desktop GPUs to power-sipping netbook GPUs.

In this post we talk about our approach to ensuring IE9 is using the GPU across a broad range of PCs, and what you can do to ensure you are getting the most out of IE9 and your GPU.

We gauge GPU usage through our opt-in telemetry across a broad number of systems using the GPU’s unique PCI device IDs. After we released Internet Explorer 9 Beta, the number of unique IDs quickly grew to over 600. By the end of 2010, we had hit 700. The number is still slowly climbing. Note that these numbers represent unique device IDs only; the total number of unique device + driver combinations is in the thousands – Windows has a very diverse hardware ecosystem.

Chart showing the increase in unique device ids over time
Number of unique GPU device IDs seen since just before IE9 beta to today

Throughout Internet Explorer 9 development, we compared the GPU market share data reported by our telemetry to overall GPU market share. From this data, we conclude that a couple of weeks after Beta we were seeing GPUs representative of the Windows market as a whole—With regard to GPUs, IE9 became a general purpose browser very quickly.

Fully Hardware Accelerated

We’ve talked a lot on this blog about how IE9 is “fully hardware accelerated” and it is on the vast majority of modern GPUs capable of supporting IE9. Yet, on a relatively small percentage of GPUs—generally older, XP- and Vista-era devices—we revert to software rendering using a high-performance DirectX emulator known as the Windows Advanced Rasterization Platform (WARP), a fast rendering library that is faster than the GDI subsystem we use in Internet Explorer 8. To switch to software mode, we use a list of GPUs and driver file versions with known issues.

There are three reasons IE9 will use software instead of GPU rendering:

  1. The computer’s GPU and driver appear on the software fallback list, part of the IE9 compatibility view list
  2. The user is running IE9 in a remote desktop session
  3. The user has selected “Use software rendering instead of GPU rendering” in the advanced Internet options:

Screen shot of the Internet Options dialog Advanced tab showing the checkbox for Use software rendering instead of GPU rendering

There are also three reasons why a GPU and its driver may appear on the software fallback list:

  1. The GPU and driver is slower at rendering common Web content than software rendering;
  2. The GPU driver has severe stability or security issues, for example, it crashes when rendering frequently-visited Web sites; or
  3. The GPU or its driver has severe rendering quality issues when rendering Web content (including new features such as of HTML5, CSS3, SVG, <canvas>, and <video>) or popular ActiveX controls such as Adobe Flash.

Over the past year, we created this list after investigating issues reported by automated testing, beta users, and IEBlog commenters. The screen shot below shows an example of a rendering issue that caused us to add a GPU and its driver to the software fallback list:

Screen shot of Web page with very poor rendering due to a bad GPU and driver

You can tell if IE9 is running in software mode by examining the “Use software rendering instead of GPU rendering” option on the Advanced tab of the Internet Options dialog. If the option is checked and disabled (grayed out), your GPU or driver are on the software fallback list and IE9 renders using software.

Screen shot of the Internet Options dialog Advanced tab showing the checkbox for Use software rendering instead of GPU rendering checked and disabled indicating your GPU is on the software fallback list

What You Can Do

If your machine is running in software mode, your GPU may have a newer driver that will allow Internet Explorer 9 to render in hardware mode.

To ensure you’re running with the most recent driver, try the following:

  • In Windows Update, look for GPU driver updates (Optional Updates section)
  • Look for GPU driver updates in the computer manufacturer’s update software in your Windows start menu
  • Look for GPU driver updates on your computer manufacturer’s Web site. For example:
  • Look for an updated driver on your laptop or GPU manufacturer’s Web site. Here are links to the three leading GPU makers:

We’ve been working with GPU makers and computer manufacturers for over a year to get updated drivers ready for IE9. Most manufacturers will auto-update drivers if needed (your machine might have been updated already) and offer updated versions on their Web sites to ensure that you can enjoy a GPU-powered Web in IE9.

As always, we welcome your feedback.

—Frank Olivier, Program Manager, Internet Explorer Graphics

Comments

  • Anonymous
    April 01, 2011
    The comment has been removed
  • Anonymous
    April 01, 2011
    The comment has been removed
  • Anonymous
    April 01, 2011
    I have same GPU with BBC barcode screenshot.
  1. Unfortunatelly, GPU and driver software-fallback-list works only in IE9. Other applicaitons (for example, Windows Live Mail 2011) still renders some font as barcode and there is no option to use software rendering...
  2. Software rendering is sometimes toooo slow. When scrolling #NewTwitter, it works with only 2~3FPS.
  • Anonymous
    April 01, 2011
    @Mike: This is a browser-wide setting that requires restarting IE9. Hardware and software rendering should be pixel-for-pixel identical. The only reason to run in software is if there are GPU or driver bugs.

  • Anonymous
    April 01, 2011
    @Ted Johnson: I am not sure I understand this. Is your statement true for anything that is rendered in IE9? Because, if both were pixel-for-pixel identical what difference does DirectWrite's "sub-pixel" rendering make? How can it result in a smoother animation if it were the exact same set of pixels as software rendering?

  • Anonymous
    April 01, 2011
    @Senthil Kumar DirectWrite is always being used in IE9 even if hardware acceleration is disabled. Directwrite essentially has two modes, hardware and software. Both of these modes look identical, but hardware mode is faster.

  • Anonymous
    April 01, 2011
    My desktop motherboard is Asus M2A-VM which is Radeon 1200 graphics. AMD has abandoned driver updates and says henceforth they will be community developed and supported. I did not find improved drivers anywhere. So I am stuck in the software lane forever according to the IE9 settings. Not only the current AMD driver has issues with IE9, I also have observed it having problems with WPF. (Freenake Video Converter, Sharekhan TardeTiger (India))

  • Anonymous
    April 01, 2011
    Aha.. I thought if hardware mode is turned off, DirectWrite woundn't be used at all.. Now I get it. So, software mode means software mode using DirectWrite.

  • Anonymous
    April 01, 2011
    I just upgraded one of my GMA drivers. The software rendering was still checked but no longer greyed out. Should it not automatically be unchecked when a better driver is installed?

  • Anonymous
    April 01, 2011
    About the text/font rendering issue. I had the same issue but I found out that it was because I was using two screens (the laptop and an extern screen) and my Cleartype setting was optimized for the both screens. I change that to only optimizing for the external screen and now my text in IE9 looks perfect. I hope this can help others with the same problem.

  • Anonymous
    April 01, 2011
    IE9 with hardware acceleration enabled causes video playback in other media player software to stutter. All it takes is for a web page to have some animation on it, or for you to scroll that page. This occurs on both of my PC's running it, one with Nvidia GPU and the other with ATI GPU. Both are multi-monitor setups. I witnessed this issue right from Beta, to RC, to RTM. When will there be a solution for this?

  • Anonymous
    April 01, 2011
    Intel has released new Intel graphics drivers but if you read Eric Law's blog: blogs.msdn.com/.../ie9-benchmark-tests-and-gpu-fallback-to-software-rendering-mode.aspx "[EricLaw: Thanks for the note. FWIW, these drivers refuse to install on Lenovo x200 complaining that they're not yet approved for this hardware.]" This is truly ridiculous. The latest Intel graphics drivers won't install on many notebooks and laptops still. Do something about this once and for all, Microsoft.

  • Anonymous
    April 01, 2011
    That's hardly Microsoft's fault, is it? Perhaps you can complain to Intel that their drivers still don't comply.

  • Anonymous
    April 02, 2011
    Today marks the release of Classic IE9 as part of Classic Shell to fix some huge IE9 blunders: xpwasmyidea.blogspot.com/.../minipost-classic-shell-310-released.html. More will be fixed in upcoming versions.

  • Anonymous
    April 02, 2011
    The comment has been removed

  • Anonymous
    April 02, 2011
    The comment has been removed

  • Anonymous
    April 02, 2011
    @Anonymous My guess is that issues with DirectWrite often has one or more of the following causes: *) low DPI *) non-native resolution *) VGA cable *) bad color calibration *) bad ClearType setting

  • Anonymous
    April 02, 2011
    Will updating to the very latest video driver actually make font rendering in IE9 bearable? I'm downloading the update now but I find it odd that every other app has no issue with fonts its only IE9 that can't render them properly.

  • Anonymous
    April 02, 2011
    You never really tell a DirectX 10 video card is required for hardware acceleration. It is, right?

  • Anonymous
    April 02, 2011
    I have a DirectX 9 card in my system (nVidia 7600GT), it works fine.

  • Anonymous
    April 02, 2011
    @Björn I'd expect any of those factors to affect normal ClearType text rendering just as much as they affect IE9's DirectWrite text rendering. That isn't what we're seeing.

  • Anonymous
    April 03, 2011
    @Evan: make sure you have installed all patches and the latest driver version. In Firefox 4, an extension called Anti Aliasing Tuner can improve font rendering in hardware accelerated mode a great deal - I dunno if an equivalent feature exists in IE9. If it does, use that, if it doesn't, you can:

  • disable hardware acceleration,

  • force all sites to display in IE8 mode (which also disables HA),

  • uninstall IE9,

  •  or switch browser.

  • Anonymous
    April 03, 2011
    hahaha, M74, aatuner????

  • Anonymous
    April 04, 2011
    my monitor isnt dimming in windows 7 & my printer's DS page wont appear in w7hp but works in w7e. whats the deal going on

  • Anonymous
    April 04, 2011
    I just wanted to comment your blog and say that I really enjoyed reading your blog post here. It was very informative. <a href="http://www.binaryrepublik.com">SharePoint Consulting</a>

  • Anonymous
    April 05, 2011
    Hi, you wrote "The user is running IE9 in a remote desktop session" does it mean that IE9 can't use a vGPU in a VDI machine (Windows 7 SP1 + RemoteFX) ?

  • Anonymous
    April 06, 2011
    The comment has been removed

  • Anonymous
    April 07, 2011
    Any idea when IE9 will be able to support text-shadows? This is one of the most basic and most popular features of the CSS3 spec, even more popular than SVG and Canvas, it seems quite strange that Firefox, Safari, Chrome and Opera have all supported this feature for several years now but IE9 is still playing catchup.

  • Anonymous
    April 09, 2011
    The comment has been removed

  • Anonymous
    April 09, 2011
    This one of the main problems I have with Firefox.  It starts hogging GPU bandwith if I open a video.  Did IE9 solve this issue? http://jamesjoe.com/

  • Anonymous
    April 09, 2011
    The comment has been removed

  • Anonymous
    April 09, 2011
    I suppose TWebBrowser is leaking, not IE 9 ActiveX.

  • Anonymous
    April 10, 2011
    Faster but still slow. I mean come on by now at least you should support all of the latest standards you had so much time to catch up. Please actually try a bit harder please!

  • Anonymous
    April 11, 2011
    @Mark dowling: if you want to update your Intel drivers, simply uninstall the Dell one, reboot, and then install the generic Intel version. Worked like a charm for me.