Please read my blog's comment policy here.
I recently heard from some users who are seeing lower-than-expected scores on the Speed Reading and FishIE Tank benchmarks. I went to check these tests myself and found that my laptop’s score was low. In fact, it was much lower than I’d seen last year. What happened?
First, a bit of background: These graphically rich demos are designed to use your PC’s Graphics Processing Unit (GPU) instead of the Central Processing Unit (CPU) to do most of the heavy lifting. Generally speaking, a faster GPU will give better performance than a slower GPU. However, there are cases where the GPU is not used for rendering, and instead the CPU is used. The primary case where this occurs is when the GPU has an outdated driver version which is not supported by the browser. In those cases, the browser will use software emulation mode, forcing the CPU to do the work instead of the GPU.
You can determine whether Internet Explorer 9 is in software mode by clicking Tools > Internet Options > Advanced. The first checkbox in the list indicates whether IE9 is running in software mode.
When I went to check my setting, I found that the software rendering box was ticked and disabled:
This indicates that my GPU is on the Software Emulation fallback list. This list contains a list of GPUs and GPU Driver versions which are known to have reliability, functionality, or performance problems when running Internet Explorer. The most common case is that the driver crashes when IE attempts to use the GPU for hardware acceleration. Because IE9 uses hardware acceleration for all web content, this means that these drivers will constantly crash IE when you try to browse. Our telemetry data indicates that such crashes, along with crashing browser add-ons, make up the vast majority of IE crashes.
The Software Emulation fallback list is delivered as a part of the Internet Explorer Compatibility View list. In my case, the Intel Series 4 Family GPU in my Lenovo X200 laptop was using driver version 188.8.131.522 (ig10umd64.dll) released in August 2010. Tip: You can learn more about your graphics driver version by running the dxdiag.exe tool that comes with Windows.
I found an updated version of my GPU driver by visiting Lenovo’s support site. In the Downloads section for my laptop, the latest driver versions were provided. (Note: Driver updates often eventually make their way to WindowsUpdate, but that isn’t always the case.)
After I updated to the latest driver version, 184.108.40.2066, released in October 2010, I found that my laptop was back in hardware mode, with great benchmark scores for Speed Reading and FishIE Tank. Now that hardware acceleration is enabled, my Internet Control Panel option looks like this:
If I find that my browser is crashing a lot and I suspect the graphics driver is at fault, I can go turn off hardware acceleration myself and see if it helps.
Until next time,
Update: See http://blogs.msdn.com/b/ie/archive/2011/04/01/getting-the-most-from-ie9-and-your-gpu.aspx for some interesting data points about how many different GPUs IE9 supports in hardware mode, and some screenshots showing why some drivers are on the software fallback list.
Tip: Users of Hyper-V and Windows Server 2008 R2: When used on machines with the Hyper-V role installed, Internet Explorer 9 will only be able to use a supported GPU for hardware-accelerated rendering if Service Pack 1 is installed, and the processor supports SLAT.
Tip: Non-Internet Explorer hosts of the Web Browser control use software rendering mode by default, even when hardware acceleration is available. Applications can set FEATURE_GPU_RENDERING to opt-in to hardware acceleration, if the user’s hardware is compatible.
Hi Eric and thanks for the tip.
Going off on a tangent, I have been using the IE9 beta ever since it came out as my primary browser. I was eagerly waiting for the opportunity to use the RC as well, but unfortunately, I have not been able to install the same on my desktop. I am running windows 7 x64. When I try to run the 64 bit ie setup, it prompts a restart and starts configuring updates. Then the screen says " failed to configure updates" and "reverts changes" . This happens about 2 or three times in a loop and then it quits.
Can you suggest the next course of action?
@Vaibhav: Can you email me (ericlaw at microsoft) the file C:\windows\ie9_main.log so I can have a look?
Thanks, that was useful to know. A couple of questions:
1. Is there a way to check the rendering mode in the platform previews?
2. Would the rendering mode effect the page reflow performance?
@Sean: No, I don't believe the previews expose this information. Yes, using software emulation could affect reflow performance because re-layout would be competing for CPU time with the software rendering.
Could you send me your updated driver at my email address ? I've noticed my computer uses exactly the same driver (v220.127.116.1102), and the same GPU. My manufacturer (Acer) don't have published the update on his website (I've checked).
I would like to install the update (if it causes problems, I could still run Windows in Safe Mode to restore my computer before the installation). Do you still have my mail address (if you have a download link, you can post it here, it would save you a mail in your outbox !).
Thanks a lot,
Okay, I've found the update directly on the Intel website. I can confirm I see an huge difference !
Intel has released new drivers, 18.104.22.1681(newer than 22.214.171.1246) for Intel G45 chipset(X4500HD/MHD IGP).
Porting comments from another post to the more relevant post:
Hello - Tue, Mar 15 2011 5:05 PM
@IE9 Team: Psychedelic Browsing Score: IE9 RC - 1320 iE9 RTM - 44 Windows 7 SP1 Upgrade and Intel 945 GMA. Why?
Klimax - Tue, Mar 15 2011 9:58 PM
They found that some drivers have issues and had to be black listed. BTW:It is reported that it will be same case with FF4 and Chrome. (both ran into same compatibility problems as ie team.) It is said that new version of drivers usually fix it and that it is case for intel drivers. See blogs.msdn.com/.../ie9-benchmark-tests-and-gpu-fallback-to-software-rendering-mode.aspx.
I hope the final IE9 release (I'm still on the RC) blocks usage of Flash < 10.2, because with hardware acceleration, they basically don't work. The web's littered with people complaining of black screens and missing interactivity with Flash, all of which was solved with 10.2.
@DD: You should definitely upgrade from RC as soon as possible. Generally speaking, we do not block ActiveX controls by version, but Flash's updater should be rapidly moving folks from outdated Flash versions to the latest version.
Intel has released new drivers, 126.96.36.1992(newer than 188.8.131.521 or 184.108.40.2066) for Intel G45 chipset(X4500HD/MHD IGP). 32bit downloadcenter.intel.com/Detail_Desc.aspx 64bit downloadcenter.intel.com/Detail_Desc.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.]
Dell's Intel 4 (GM45, Win7x32) are build 2182 - Intel having 2302 drivers is of no use to us since like Lenovo we can't install the newer drivers either.
Intel has released new drivers, 220.127.116.113(newer than 18.104.22.1682 or 22.214.171.1241) for Intel G45 chipset(X4500HD/MHD IGP). Try uninstalling the current drivers before installing these so the idiotic driver checks/blocks will not interfere.
Good morning all,
we have an issue with ATI and nVidea boards when we span multiple displays. We really need to use GPU rendering but IE9 freezes. If we turn it off IE 9 does not crash but we loose performance in our application. Previoius versions of IE did not cause this same issue. We are running custom medical boards for hi-res displays. Has anyone seen or experienced this?
@Doug: Please email me using the "Email blog author" link at the top-right of this page. Thanks!