IE8 Beta 2 Fatter Than Firefox and XP 597
snydeq writes "Consuming twice as much RAM as Firefox and saturating the CPU with nearly six times as many execution threads, Microsoft's latest beta release of Internet Explorer 8 is in fact more demanding on your PC than Windows XP itself, research firm Devil Mountain Software found in performance tests. According to the firm, which operates a community-based testing network, IE8 Beta 2 consumed 380MB of RAM and spawned 171 concurrent threads during a multi-tab browsing test of popular Web destinations. InfoWorld's Randall Kennedy speculates that Microsoft may be designing IE8 for the multicore future. But until your machine sports four or eight discrete processing cores, IE8 will remain 'porcine,' Devil Mountain's Craig Barth says."
Fatter but not Faster (Score:2, Informative)
Its fatter and more bulky, but definitely not faster than Firefox, Opera or Safari.
I'm sticking with Firefox, sirs.
Well, duhh.. (Score:3, Informative)
From the article:
Well duhhh, it uses multithreading - a thread per tab/window, or actually I believe it uses a threadpool to limit the total amount somewhat. So obviously it will use more execution threads. This can be perfectly fine and is in itself not an indication of any problem.
The memory usage could be more of a problem I'm sure. Javascript performance is probably even more interesting to look at...
Beta and debug code (Score:5, Informative)
As such, it'll have debug code in it, which tend to bump up the number of execution threads considerably.
You can try the same thing by running an IE7 beta against the release version and looking at the processes. The beta version is much more of a resource hog. It sounds a bit like someone hasn't considered the full picture in this 'comparison'...
bullshit (Score:5, Informative)
Unless those threads are actually processing anything, they represent basically zero overhead.
Re:Microsoft bashing? (Score:5, Informative)
Actually, IE uses one process per tab. This means that each tab has a different address space, and this is what makes it so that one bad tab crashes only itself and not the entire browser. If they were only doing threads, it'd be what Mozilla does.
Re:Microsoft bashing? (Score:5, Informative)
Chrome will have one process per tab as a feature. See here. [gamesforthebrain.com]
Re:Not apples-to-Apple (Score:2, Informative)
I don't think you have this exactly right. This is not a comparison. It is saying that IE created the six processes, not the testers.
Re:Microsoft bashing? (Score:3, Informative)
PID COMMAND %CPU TIME #TH #PRTS #MREGS RPRVT RSHRD RSIZE VSIZE
250 firefox-bi 21.1% 87:01:17 37 824 6082 472M 24M 525M 1433M
Re:Beta and debug code (Score:2, Informative)
Why bother considering the "full picture" when there's bashing to be done?
That's like imagining the personality of the girl in the pictures you're using to jerk off.
Re:Microsoft bashing? (Score:2, Informative)
This is actually the feature IE8 has too. The poster just confused processes and threads.
Re:Microsoft bashing? (Score:2, Informative)
I don't know what it is, but Firefox memory use seems to vary dramatically between people.
This is a fun screenshot [evanparity.com] of my task manager back in the days of either Firefox 1 or 1.5, of me closing Firefox and my virtual memory use dropping about a gigabyte. (This was a time when I only had 512 MB of RAM.) At the time, I regularly had to restart Firefox (maybe once a day, maybe once every couple days, it's been a while) because its absurd memory demands would slow it to a crawl.
Things have improved dramatically, but I would still say FF uses 300 MB+ typically for me.
Re:Still only a beta (Score:3, Informative)
Beta is precisely where the app should get optimised, as it is that stage where it makes the transition from unstable to stable.
Re:Firefox is a pig (Score:4, Informative)
Re:It's also _BETA_ (Score:4, Informative)
I think the concept of beta testing is lost on you, and a good few moderators as well, apparently. Performance during beta testing is not in any way indicative of the performance of the final product, and performance optimisation during beta is such an individual thing that you cannot establish any kind of gold standard for beta performance, or even get remotely close to having a basis for performance comparison. It's like comparing the visual quality of notes taken during classes. It's not telling on any level of how well you're going to do on your exams.
Re:Firefox is a pig (Score:5, Informative)
Whether or not parallel code is superior to a single-threaded solution depends on the application and the actual implementation. In some cases there's no way to actually make a multi-threaded version of the same application any faster, the best you can hope for is the same level of performance. In other cases the assumptions made when deciding what parts of the application should be in separate threads turn out to be incorrect.
Multi-core is working because most people now run multiple applications at a time, not because more applications take advantage of multi-threading properly (not to mention that the OS itself is using CPU time in addition to any applications you are using). Going from 2 to 4 cores has proven less beneficial for most users simply because people so rarely use the CPU resources they have, and the problems of getting more benefit in a single application from 4 cores are even more complicated than 2, except in specific applications.
Browsers, especially in a world of multi-tab browsers with higher use of flash and javascript on the web, should be able to benefit from multi-threading, but how much benefit can be gained and whether or not the initial assumptions programmers make going into the project are correct are the main questions at hand.
Of course, 171 threads makes you wonder what assumptions they were making, or even what they're doing with those threads.
Re:Firefox is a pig (Score:4, Informative)
ff3 generally uses quite a bit less memory than opera9.5.
Google finds many benchmarks, but to pick one: http://avencius.nl/content/firefox-3-vs-opera-95-memory-usage-take-2 [avencius.nl]
Re:Gentoo, schmentoo. (Score:5, Informative)
Re:It's also _BETA_ (Score:2, Informative)
Re:Firefox is a pig (Score:3, Informative)
Of course there are switches for threads, because they have their own stack and register contents etc.
Of course, if those threads are idle waiting for windows messages, they won't even be switched into unless a message arrives for them to deal with.
Re:Firefox is a pig (Score:3, Informative)
Why so many characters? Put this in a script, mark it executable and have at it:
$0&$0
Re:At Least Some Features Are a Step Forward (Score:4, Informative)
Because obviously an OS that schedules everything you throw at it â" from Windows Movie Maker to Firefox to RealPlayer to Excel, to trivially name a few â" is going to know how to schedule the threads for a browser, without actually knowing it's a browser, better than, say, the browser's developer.
You're correct. There are two primary types of web pages: static information displays and interactive applications. The former don't require scheduling because they just sit there passively waiting for you to click something. The latter are conceptually identical to desktop applications, except that they happen to be running in a browser tab. If you had three different Google apps open in three different Firefox instances, you'd expect the OS to schedule them appropriately.
Re:Where did you hear that? (Score:3, Informative)
http://blogs.msdn.com/ie/archive/2008/03/11/ie8-and-loosely-coupled-ie-lcie.aspx [msdn.com]
It's processes for IE8. Threads for IE7.
Re:Lost in Translation (Score:5, Informative)
That price would be your soul and anything that would be standards compliant.
Re:"fatter than XP" - what's that? (Score:1, Informative)
And by "measuring" you mean "arbitrarily comparing two things without consideration of context."
Try running IE8 and see how it handles, say, flash taking a dump on itself. I know that FF has to restart, but IE8 manages to close the faulting tab and restart it.
This is accomplished using separate processes with state information stored in the event of a crash: more stability = more resources consumed, as each process needs its own set of threads. If each process needs its own set of threads, that's n threads times w windows, meaning a straight comparison to a unified process (ff) is dumb.
Re:Firefox is a pig (Score:3, Informative)
You are correct, and my simplification was a bit much. But I'm sure you realise that the switch is very lightweight compared to a full process switch, simply due to the large amount of state information, mapped address space, etc. etc. This is particularly true on Windows, where a process context switch takes orders of magnitude longer - their own documentation refers to "cheap" threads and "expensive" processes.
As an aside, this is one reason why MS has pushed multithreading so hard as a design pattern. The Unix tradition is of course multiprocessing, and Linux was designed with very fast context switching as a priority. Linus's antipathy towards threads has its roots in this distinction.
In theory, Chrome should run very well on Unix and Unix-like operating systems, and maybe less so on Windows.
Re:Microsoft bashing? (Score:3, Informative)
There's a reason I like tabs inside the browser. Grouping.
I often have several functions I'm performing simultaneously such as development, surfing YouTube, reading documentation, checking on bank accounts, etc. It's nice to keep tabs grouped together along those functional purposes: work versus play. That way when break time is over (or when the boss is heading in my direction), I can easily close out the YouTube and banking browser windows. Also, I don't generally have problems with tabs locking up other tabs because of this logical separation.
One other thing, which is related to browser tabs. On a Linux desktop, I still use screen because I find it insanely useful. Why not just open multiple windowed shells? Because it's easier to keep the desktop orderly when your sessions are stacked on top of each other like cards. Browser tabs give me that same stacking functionality. It's easier to cycle through sessions because when I'm flipping through tabs, I'm not also cycling through other applications (with CTRL-C or CTRL-a-n).
Re:Lost in Translation (Score:3, Informative)
Same goddamn arguments every time (Score:2, Informative)
Microsoft writes some crap, bloated POS - and all the Microsoft shills come out of the woodwork to say, "Well, it's just beta, so you can't judge the final product."
The same arguments were used when Vista was in beta - and Vista proved to be just that, a bloated dog that half the industry wants to forget exists.
Stuff a sock in it. IE8 is going to be a bloated POS just like every other Microsoft product.
Microsoft does not sell software - it sells lies.
Re:Microsoft bashing? (Score:2, Informative)
I don't know which version of IE you are talking about but I clearly remember (oh my nightmares) using IE5 and 6 with several instances open, then one of them hangs. I kill the process that is not responding and all of them are closed.
Re:Microsoft bashing? (Score:3, Informative)
I've always prefered multiple windows instead of tabs, I already have a 'tab' thingy, its called the taskbar in Windows.
Except I don't want my browser tab area cluttering/being cluttered by every other application I'm running. I don't want to have my taskbar cluttered by all my browser windows when I'm not using my browser; I don't want my desktop cluttered by multiple browser windows I have to manage individually, and I want to easily be able to manipulate my browser tabs separately or as a group, again without considering other application windows.
Tabs are better.
Re:It's also _BETA_ (Score:2, Informative)
Yes it is. The performance of a product is mainly dependent on the algorithms it uses. Unless you change those - which means that the product is still in alpha, not beta - there can only be minor optimizations.
Of course the resource usage mentioned could simply be a resource leak. But 171 threads is a bit much. Makes me wonder if Microsoft hasn't hired some of Freenet's coders ;).
But it gives a pretty good idea about your handwriting.
Re:Microsoft bashing? (Score:3, Informative)
You're confusing two somewhat-unrelated concepts.
First off, tabs. Most people (myself included) like tabs. They're a wonderful organizational tool - on this computer I have six different Firefox windows, each with somewhere between five and thirty tabs. I need some kind of hierarchy just to be able to keep information handy, and the window-tab hierarchy is sufficient for me.
Second, one-process-per-window. It's a great idea to have one process per tab - I suspect the reason we moved away from it for a while was due to efficiency. Now it's coming back, finally.
I agree that one-process-per-window is a bad idea for the exact reasons you say - it's a bad design choice and a bad implementation choice. But tabs as a UI abstraction? Do not take away my tabs, thank you very much. I use them.
Re:Firefox is a pig (Score:3, Informative)
"Because everyone already knows that Firefox is a bloated pig, and that Opera is much leaner."
That's just plain old misinformation. Firefox 3 is on par with Opera in terms of memory usage, and is much faster at loading pages than Opera.
In my own testing Firefox 3 was O(1) (a small constant amount) behind Opera in memory usage. It was a tiny amount and it remained pretty much the same. Basically Opera doesn't have a significant memory performance lead now, but rather, only a token lead. Considering how much more useful Firefox 3 is, when used with extensions, than Opera, Firefox 3 wins hands down.
That's true for at least the current round. Further bouts are expected and I cannot predict the results. But if things go as planned, Firefox will kick Opera's ass one more time in the next round as well.
Google's chrome got some very mixed first impressions too. So far we've seen mostly hype from Google. There is a real paucity of useful and reliable information about Google Chrome as of yet.
Re:Microsoft bashing? (Score:1, Informative)
Is there a -1: completely and utterly wrong?
PRE-tabbed browsing, you ran multiple browser processes seperately.
No, you didn't. Running 'netscape' multiple times just gave the focus to the same instance of netscape. 'netscape -remote' was used to launch more windows in the same process. IE was even worse, since its single process was also shared with 'Explorer'. I don't use IE by choice, but I've seen plenty of times where a bad web page would knock out the entire desktop. What browser were you thinking of exactly?
In any case you seem to have conflated the notions of windows and processes, then used this mistake as a lauchpad for a loooong tirade, accusing other people of wasting their time? As Babbage might say, I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a post to Slashdot.
Oh no, hang on... its Slashdot. Situation normal.
Re:Microsoft bashing? (Score:3, Informative)
I'm running the version where you tell it to open new browser instances in a seperate process space :)
I actually think the setting is for explorer proper, but it affects IE as well, it was there in 6 and is in 7, 5 is too long ago for me to remember.