Researcher: Chrome's Isolated Tabs Make It Memory 'Pig'
Editor's Note, February 21, 2010: This article was reprinted from PC World's sibling publication Computerworld, which has issued the following statement: The person quoted in this story as "Craig Barth" is actually Randall C. Kennedy, a contributor to InfoWorld (another PC World sibling). 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.
Google Inc.'s new Chrome browser chews up more memory than even Microsoft's recent Internet Explorer 8 (IE8) Beta 2, a researcher said today.
"Chrome's a pig," said Craig Barth, chief technology officer at Devil Mountain Software Inc., a Florida-based maker of PC performance testing software. "Like IE8 Beta 2, it's targeted at the next generation of hardware, not older PCs running Windows XP on a half-gig of RAM."
Barth ran Chrome, the new Google browser released Tuesday, through the same 10-site scenario Devil Mountain used earlier in the week to benchmark the memory footprint and processor thread count for IE8 Beta 2, IE7 and Mozilla Corp.'s Firefox.
In the test, each browser opened the 10 sites -- including media-rich domains such as boston.com, channel9.com, cnet.com, infoworld.com and nytimes.com -- in separate tabs, with links on those sites opened in additional tabs.
Chrome's peak memory consumption under Windows XP was 324MB, slightly less than IE8 Beta 2's 332MB, Barth said today, but the Google browser's average footprint of 267MB was 26% larger than IE8's 211MB.
In Monday's test, IE8 Beta 2 consumed far more memory than other browsers -- 52% more than IE7, for example -- and easily led all others in the dubious honor. At the time, Barth called IE8 "epically porcine."
But even though Chrome tipped the scales even more dramatically than IE8, Barth was willing to cut Google some slack. "It's going to be fat by virtue of what they're trying to do," he said, noting that Chrome eats more memory because it essentially opens a separate instance of the browser for each tab, a design Google said it used to segregate tabs, and the sites on them, so that if one crashes the browser as a whole does not.
"It's going to be fat, but you have got to give Google credit for doing [the browser] from scratch. It's fat by design, and they come out and say that.'We're willing to isolate each tab,' Google says, so you know that and expect it."
As he did with the other browsers, Barth also tallied the processor threads that Chrome spawned. The numbers, he said, "befuddled" Devil Mountain.
"Given its use of a multi-process model [similar to IE8's], we would have expected Chrome to introduce a comparable thread workload," he said. "[But] we were surprised that Chrome had spun a much more manageable 48 execution threads at the peak."
By comparison, Firefox and IE7 spawned 25 and 43 threads, respectively, while IE8 Beta 2 spawned a whopping 153.
Barth praised Chrome's each-tab-is-separate design. "It's a completely modular architecture," he said. "Our guess is that the initial 25 threads handle the user interface functions, bookmarking, all the basic stuff, but then beyond that, it uses just two fricking threads for each tab." All told, Chrome spun off 12 discrete instances of itself to handle the 10 test tabs.
At the same time, IE8 Beta 2, which also isolates each tab -- Microsoft also cited anti-crash and security concerns for using the technique -- spawned just six instances, but more than three times the number of total processor threads, to handle the 10 open tabs.
"Chrome is a very pure browser design, and that gives them an edge over Microsoft," said Barth. "IE is so convoluted by this point. It traces its origins back to Mosaic, so just from a common-sense standpoint, it has to be more complicated. That's why each process in IE8 is fatter than each process in Chrome."
Although the same criticisms he leveled against IE8 earlier also apply to Chrome -- in particular, that they're likely to stutter on older machines running single-core CPUs and on PCs with meager amounts of memory -- he ended up applauding the isolated tab model both push.
Especially Chrome's. "Google wants in the enterprise, but it can't when a Web [Office-style] suite can be taken down because the next tab has Dilbert.com on it, and fails," Barth said. "It can't have people saying'There goes my 15-page document.' Google knows they need this kind of architecture to penetrate the enterprise.
"So understanding their goal, I'm giving them a pass. I think it's worth giving them the benefit of the doubt," he added. "But IE, that's just more of the same."
And what of Mozilla's Firefox, which has managed to build a market share of nearly 20%, mostly by appealing to users dissatisfied with IE?
Based on his tests, Barth had unkind words for the open-source browser. "It's looking dated," he said, referring not to its appearance but to how it handles tabs. "It will never get the kind of tab isolation that you can get in IE and now Chrome. It's looking like yesterday's design."
But Chrome he's excited about. "You've got to admire what Google is trying to pull off," he said.
Devil Mountain operates Exo.performance.net (Xpnet), a community-based collection network that gathers performance data and other metrics 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.
Google Chrome can be downloaded in a version for Windows XP and Vista.