IE8 Beta 2 Fatter Than Firefox and XP
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."
First off, I deal a lot with AJAX and I think a lot of people feel my pain when we have to write two different Javascript methods to achieve the same functionality between IE6, IE7 & everybody else. And I don't want to hear anybody saying that IE keeps me employed by creating more work. That's bullshit, all it does is hinder my productivity. But now we have:
The getElementById method is now case-sensitive, and it no longer incorrectly performs searches using the NAME attribute.
My god, you mean it's actually going to behave like--you know--the name implies?!
Sanitize HTML -- Easily remove event properties and script from HTML fragments with window.toStaticHTML.
I am intrigued by this and think that this is a great innovative idea from a developer's perspective.
CSS Compliance
I don't think I would be the first person to say compliance to standards are currently lacking in IE. I'm glad to see them acknowledging this area of improvement!
At least it's a step in the correction direction! And on top of that, they are slowly catching up with Firefox plugins like Firebug or a their profiling tools:
I dream of a future where I have means other than javascript popups to check objects in javascript in IE. Yes, yes, I know they have a script debugger today ... if you have some form of .NET studio installed. Which is just peachy if you run Linux and IE4Linux.
... even if it assumes RAM is cheap and your CPU has over 171 cores to spare.
I am both curious of the new AJAX functionality they promise and fearful that they are simply another venue for security risks (let's all hope their cross-domain & cross-document functionalities are sound).
I do not think all is lost on this browser, however
My work here is dung.
Multi threaded browsing is a plus. One of my pet hates of Firefox is the one-bad-tab-crashes-the-browser problem.
I've not used IE for donkey's years, but one thread per tab strikes me as an excellent idea.
It seems Google thinks the same. Chrome will have this as a feature supposedly.
380 MB RAM is a lot, but don't forget about debugging code which may decrease this substantailly.
Why should 171 threads be a problem? Threads are pretty cheap today. Creation is fast and while asleep they use up almost no resources. It's a good sign that MS may be able to utilize current and future multicore CPUs.
Ok, thread pools and runnable objects might have been better style. 171 threads indicate that software engineering could not agree on a single Grand Central and every team is allowed to spawn as many threads as they want. But hey, threads are cheap - stil way better than Firefox' single process model.
As an Opera user, a fresh install of firefox without extensions actually isn't that bad, and I'm having real stability problems with Opera at the moment (Arch Linux x64).
-- Lattyware (www.lattyware.co.uk)
Well this is from the same folks that brought you Vista,which spawned one of my favorite new sayings "I got Vista'd! Real hard!". I got that one from a gas station attendant of all people,who practically dropped to his knees and begged me to build him a new machine after a month with a Compaq Vista box.
But seriously,WTF are the guys at MSFT thinking? Have they not seen how the netbooks are taking off? Or how folks are not using these quad core beasts to run their day to day tasks? Folks are getting smarter and not wanting some giant electricity sucking monster just to check their email. The only ones I know that go for the monsters anymore are the hardcore gamers and their mantra is "More resources for the game,always and forever!" which is why I am waiting for parts to build another gamer rig right now. If MSFT doesn't pull its head out of its butt and get back on track they'll find that while Apple and mini-Linux boxes sell off the shelves the retailers will be doing like the Local Wal Mart and offering to toss Vista for XP on every model they sell.
My advice,bring back the guys that made Win2K and put out a low resource OS that runs well. Hell,they could repackage XP SP3 and make a metric ton o' cash just like they did with SP2. Because when your customers go "EEEEW" when you say Vista as an option,you know it is bad. And here I was getting ready to try IE8 just to see how it ran on XP. Now I'll be chunking it in the recycle bin. Way to go,fitting with your always behind the curve and too bloated stereotype MSFT! But as always this is my 02c,YMMV
ACs don't waste your time replying, your posts are never seen by me.
Not only that, but I'd like to point out that process isolation comes at a cost.
This is a much bigger issue on Windows than on Linux, because Windows processes are much more heavyweight. Try a program that recursively calls itself via system(). 100 calls of the program on Windows take about 7 seconds (!) IIRC, while on Linux 10000 calls take 5 seconds on the same machine. I'll do a more rigorous benchmark later because I think this issue will keep resurfacing. However, I don't know whether this is due to an incredibly slow system() implementation on Windows or process creation overhead. Note: on Linux the shell forks to execute the new program, so you actually have twice the amount of new processes created.
Those who would give up liberty to obtain working drivers, deserve neither liberty nor working drivers.
I guess you missed the memo? If that article's to be believed, Firefox 3's memory usage is around 50% - 75% of Opera 9.5's. Or am I misreading the graphs?
Program Intellivision!
While what you say is true to an extent, I still don't understand the use of 171 threads - especially on an operating system that has "spotty" lotsa thread handling performance at best (when compared to... well, anything else).
Optimizing the code will probably increase performance and decrease memory usage a bit too, but unless all those threads are being used for debugging purposes, then various performance and resource issues will still exist when IE8 is out of beta.
Threads are a great thing. Even a lot of threads are a great thing... but those have prerequisites, such as thread workload that is independent of each other to a decent extent, not overrunning the operating system's ability to efficiently manage and schedule threads, not overrunning the various subsystems that each thread (or a lot of them) may be calling (for instance, in this case, the hard drive, TCP/IP stack and/or rendering engine), and a design that scales down to resource availability of the computer hardware (you dont want to try to use that many resources or threads on a slow computer... CPU, bus, RAM, HDD, etc).
Thus, the real remaining questions are (since you probably/hopefully correctly covered the memory footprint issue in pointing out it is a beta and probably has a lot of debug code loaded/running) are:
- Is IE8's threading model designed to be usable on low end hardware?
- Can the XP or Vista thread scheduler efficiently handle that many threads?
- When they designed this implementation, did they take into account hardware capabilities?
- And of course, how much of the bloat is actually due to the debug code, and how much (like in recent MS products) is "bloat by design"?
Until then, I've got no real opinion on how IE8 will perform, since there is a lack of too much necessary information to make an intelligent determination on a product that has yet to be released as GA.
And after then, honestly, I (personally) really dont care. I only fire up IE to test web pages - or for the relatively rare (nowadays) IE only site.
As for the rest of the world, they will either find it's speed acceptable, or not. If they don't, they will either find Firefox - or not.
Either way, the bigger issue (at least on any web programmer's mind) is standards compatibility... not speaking for anyone but myself, unless the performance is so horrendous that I now have to be coding "lite" sites so IE8 doesnt take forever to render them, then I really dont care if it's bloated or not. Me ranting about the bloat would be just that... ranting. Doesn't affect me unless the performance noticeaby impacts how quickly my sites load.
Though it is fun to rant any time ________ screws something up (fill in the blank with whatever company or product currently fits the "Mod this post up" criteria... I stopped keeping track of who we are supposed to rant about weeks ago). ;-)
StarTrekPhase2 - The Five Year Mission Continues!