September 02, 2008, 9:40 AM — Editor's note: The person quoted in this story as "Craig Barth" is actually Randall C. Kennedy, an InfoWorld contributor. Kennedy, who presented himself as the CTO of Devil Mountain Software, no longer works at InfoWorld. Given that he disguised his identity to Computerworld and a number of other publications, the credibility of Kennedy's statements is called into question. Rather than simply remove stories in which he is quoted, we have left them online so readers can weigh his data and conclusions for themselves.
Microsoft's latest version of Internet Explorer 8 (IE8) requires more than double the system memory of its main rival, Mozilla Corp.'s Firefox , and spawns nearly six times the number of processor threads, a performance researcher said today.
Internet Explorer 8 (IE8) Beta 2 also consumes 52% more memory than its predecessor, IE7, and uses almost three times as many threads, said Craig Barth , chief technology officer at Devil Mountain Software Inc., a Florida-based maker of PC performance testing software.
"IE8 is epically porcine," said Barth. "Microsoft has gone to epic levels of bloat."
Barth tested IE8 Beta 2, IE7 and Firefox 3.0.1 in a 10-site scenario that involved media-rich domains such as boston.com, channel9.com, cnet.com, infoworld.com, nytimes.com and others. Each site was opened by each browser in a separate tab, then links on those sites were opened in new tabs. Both Flash and Microsoft's Silverlight were installed as plug-ins for each browser.
By test end, IE8 Beta 2 had grabbed 380MB of memory on the 2GB-equipped system running Windows Vista , while IE7 accounted for 250GB and Firefox 3.0.1, the most-recent version of the open-source browser, had taken 159MB. When the same tests were run under Windows XP, each browser consumed slightly less memory than in Vista; IE8 Beta 2, however, continued to lead the competition by wide margins.
"When Windows XP starts, the entire OS takes 130 to 150MB," said Barth. "Suddenly you're looking at a memory footprint for IE that's bigger than Microsoft's earlier operating system. IE8 is fatter than XP."
When Barth tallied up the separate processor threads each browser spawned during the tests, he also found that IE8 Beta 2's count was dramatically higher than either IE7's or Firefox's. The latter, for instance, never used more than 29 concurrent processor threads during the 10-site test, while IE7 spawned a maximum of 65. IE8 Beta 2, however, used a whopping 171 threads.
Piling on the threads, said Barth, "becomes overwhelming after a while" and can have a direct impact on the speed of the browser. The more concurrent threads, the more operating system overhead managing those threads, and the more the processor is stressed. Web browsers typically uses multiple processor threads, but when the thread count climbs, performance can suffer unless the application is running on a multiple-core processor.
That may be Microsoft's plan, Barth speculated. "If a multi-threaded application is designed well, and runs on a heavily parallel system, like a multi-core machine with four or eight [processor] cores, you can get additional performance. My guess is that Microsoft is targeting IE8 at the next generation of hardware."
While that may be good news for users with multi-core machines, what about people running older hardware? "On legacy systems with just one core, IE8's going to struggle," Barth answered.
He likened IE8's penchant for spawning a large number of threads with Windows Vista's similar habit. Vista, said Barth, uses over 90 at startup, while the older Windows XP spawns less than 60. "No matter how much you strip out [Vista], you still have more threads than in XP," he said. "My theory is that's why Vista is 40% slower than XP, no matter how much you take out of Vista."
Last year, Barth used Devil Mountain 's DMS Clarity Studio performance-analyzing software to make several performance claims about Windows XP and Windows Vista, including that Vista Service Pack 1 (SP1) was no faster than the stock version.
The one bright spot for IE8 in the Devil Mountain tests was its CPU utilization. On average, Firefox consumed 33% of the CPU's time under XP, and 48% under Vista. Meanwhile, IE8 Beta 2 took 22% of the CPU in XP, 33% under Vista. IE7 was the least aggressive at utilizing the processor: its averages were 13% and 24% under XP and Vista, respectively.
Barth attributed Firefox's heftier CPU time consumption to a "more efficient rendering engine" that employs fewer threads but aggressively pushes the processor to gain faster performance.
"Microsoft has taken the attitude that hardware is cheap, like it did when Vista first came out," Barth said. That may play out better for users down the road, he added, but he wondered if it is the right move for the present.
He also defended testing IE8, even though it is only in beta form. "Absolutely, it's fair to test now," he said. "I'm sure they'll do some performance optimization, but I don't see that much debug code here. And unless they do something drastic to the architecture, I think this is the kind of performance we'll see in the final."
Microsoft has said that IE8 Beta 2 is "feature complete," which means it doesn't plan on adding any additional features to the browser. It has, however, refused to set a timetable to shipping the major upgrade, and officially has only been willing to say it will launch before the next version of Windows.
For its part, Microsoft has touched on some performance improvements it's made in IE8. In a blog entry posted last Tuesday, for example, Christian Stockwell, a program manager on the IE team, said company developers fixed more than 400 memory leaks in the browser that reduced, not increased, the amount of memory used by the beta.
Stockwell, for instance, cited WebSlices, IE8's new data feed feature, as a major productivity boon, and thus a performance win for Microsoft's browser. "In some cases the fastest browser is the one that does not need to load a page at all," he argued.
Barth remained skeptical. "Firefox is rendering pages faster, by most measurements, and doing it with half the memory. It has way less code bloat. But IE8, this is fat."
Devil Mountain also operates Exo.performance.net (Xpnet), a community-based collection network that gathers performance and other metric data from more than 3,000 PCs. Users can join the network by downloading and installing a small utility, DMS Clarity Tracker Agent, from Devil Mountain's site.