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."
It's also _BETA_ (Score:5, Insightful)
I hate being turned into a Microsoft apologist on this one, but give them a break. IE8 is still beta. Comparing release quality software to beta quality software is simply unfair.
Re:It's also _BETA_ (Score:5, Insightful)
Sometimes I disagree, like when we're talking about features.
Here? Yes, you're right. Beta software is often compiled with less optimization and extra debugging information. I was using VMWare Server 2 beta, and it ran painfully slow, well under the speed of Server 1. Because it was a beta.
Re:It's also _BETA_ (Score:5, Insightful)
Agreed, complaining about performance at this stage in IE8's development is unfair.
However, if we don't complain, they won't put as much effort into tuning its' performance.
That said, it's slow and that's okay for now, but when it's released... *shakes fist threateningly at Microsoft* (even though I use Firefox).
Re:It's also _BETA_ (Score:5, Interesting)
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). ;-)
Re:It's also _BETA_ (Score:5, Insightful)
OK. We can compare it to FF3 beta, then. That was fast as hell.
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: (Score:3, Interesting)
apples to oranges (Score:4, Interesting)
Re: (Score:3, Insightful)
Well, you *can*, but you'll still look like a moron by anybody who has a clue.
Re:It's also _BETA_ (Score:5, Insightful)
Re: (Score:3, Insightful)
They never focused on rendering correctly...
In the early days, they focused on copying netscape and implementing their own proprietary features to lock users in.
Re:It's also _BETA_ (Score:5, Insightful)
Blame Google.
I know too many people that think "beta" means Gold (or at least Release Candidate). I wouldn't be surprised if they now think "beta" is synonymous with freeware.
Anything beta should be given a lot leeway in terms of stability and performance.
On the other hand, if the difference is DRASTICALLY different from past versions then maybe it brings some pause. While it could simply be the package isn't optimized and there are debug lines in there, it is also possible that it is a sign that the end-product might be a hog.
Re:It's also _BETA_ (Score:4, Funny)
I hate being turned into a Microsoft apologist on this one, but give them a break. IE8 is still beta. Comparing release quality software to beta quality software is simply unfair.
Microsoft is a lot like Google in that their software never makes it out of beta; unlike Google, they don't admit it.
Re: (Score:3, Interesting)
I cannot imagine any company creating more of a Rube Goldberg software creation than Vista has become and now it seems IE8 (beta) is no different... If I had wanted a Swiss Army-Knife, I'd have bought one...
They should have named Vista: "Steve Vaught"... but then again, it cannot shed its pounds by walking across America as
Re: (Score:3, Interesting)
While having several friends possessed the newest ISO images, some of the Beta versions of "Vista" ran faster and were noticeably less bloated than the released version of "Vista"...
Do you mean the released version of "Vista", or do you mean Vista + all the bundled software you will ever need, courtesy of Dell/Compaq/etc.? Because I can readily see where the difference might lie...
Re: (Score:3, Insightful)
I hate being turned into a Microsoft apologist on this one, but give them a break. IE8 is still beta. Comparing release quality software to beta quality software is simply unfair.
This conception is partly Google's fault. They release so many products as 'beta' which in actual fact are finished, but going to have alterations made later, that a lot of people have forgotten what beta really means.
I release beta's only for intermediate and not fully tested versions of my software which I don't really expect to be usable yet, they are most often released for interested people to lift out the code they want and/or test it. Google release products that they expect millions to use as they a
Re: (Score:3, Insightful)
I think Google does it that way because, for a hosted web application, version numbers are meaningless. There's just "the version", the one that's up there. It's not like you could have two people using different versions of Google Documents somewhere. Knowing that, and knowing that they're never "finished", it makes sense that they're just always in beta.
Re:It's also _BETA_ (Score:5, Insightful)
Not only that, but I'd like to point out that process isolation comes at a cost. Many users were rejoicing yesterday when it was announced that Google Chrome would have process isolation. Google was very up front about the fact that the browser would use MORE memory as a result. However, the security, memory cleanup, process tracking, and isolation features were all considered worth it.
So give IE a break here. If you want to complain, complain about the fact that it STILL doesn't support the standards and that it STILL uses that God-awful IE7 interface.
Linux and probably Mac OS win here (Score:5, Interesting)
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.
Re: (Score:3, Insightful)
Not only that, but I'd like to point out that process isolation comes at a cost.
Agreed, and a total of 17 threads per tab doesn't seem an unreasonable cost for what it gives us: browser tabs and windows that can be managed independently, even when one is stuck in an infinite loop of javascript.
And the memory usage doesn't seem _that_ bad, either. No worse than FF2 was for similar scenarios, in my experience. We've got spoiled by the good memory usage stats of FF3.
And, no, I don't see 300-400MB of browser
Re: (Score:3, Interesting)
Entire article -- FUD. Pure & simple. Comparing beta software to release, and not even fairly summarising their own results from doing so.
It's not the first time InfoWorld's blogs and Devil Mountain Software have published anti-Microsoft FUD and made Slashdot's front page:
Re: (Score:3, Interesting)
Completely agreed. What's more, the comparisons being made are wholly unfair. IE8 bigger than XP? Only in terms of memory usage and I'd like to think an OS would be kind enough to NOT use a lot of RAM.
Plus, memory usage depends entirely on the sites being visited. The tests they made were specifically designed to hit very content-heavy sites with all sorts of crap on them, so higher memory usage is to be expected. Sure, FF3 handles it better, but it's still "more bloated" than every MS OS before XP, accordi
At Least Some Features Are a Step Forward (Score:5, Interesting)
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
Re: (Score:3, Funny)
Re:At Least Some Features Are a Step Forward (Score:5, Funny)
It's a strange feeling having the page display the same (with the same code!) in all major browsers.
This is just a beta release. Give it time--I'm sure that Microsoft will fix this obvious bug before IE8 release.
Re:At Least Some Features Are a Step Forward (Score:5, Insightful)
You make a lot of good points. I think I'm pretty fair to MS; I bash them when I think they deserve it, I praise them when I think they deserve it.
Frankly, I've stayed away from a lot of "fancy" javascript just to avoid having duplicate code; and I've also abandoned some pretty cool CSS just to avoid IE problems (although they may be compliant, I actually think in some cases MSs implementation of CSS was better than the standard, especially their box model... there's more but I don't want to get into it.
In this case, not only do we have to allow that this is a beta, but I think we need to point out that most people will not be browsing with a bunch of tabs. I know I do, and I'm sure a lot of slashdotter's do, but I also think we're the exception and most of us probably have more than capable machines to handle it.
That's not an excuse... the requirements should go down, I agree... but on the other hand, the browser IS becoming the platform, so you have to expect it to increase in requirements.
I'm happy for IE8; I hope it becomes widely adopted... and I think competition is good, but if IE, Firefox, Safari, Opera, Chrome... if they can all just act the same compliant way, I'll be happy guy. I certainly won't berate MS for it.
Re: (Score:3, Insightful)
I do not think all is lost on this browser, however ... even if it assumes RAM is cheap and your CPU has over 171 cores to spare.
I currently have 191 processes on my dual-core processor. I also have an OS that knows how to run more than one program at a time. Basically, I'd rather have an interactive program that splits its load over 171 threads or processes and let the OS handle scheduling than one that tries to do everything in one thread or process. After all, the OS has a few decades of optimizations for exactly this under its belt.
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:At Least Some Features Are a Step Forward (Score:5, Interesting)
To sum it up, there's often no real benefit to doing trivial things (e.g. rendering JPEGs) in parallel, because you're obligating the OS to say "you, now you, now you" when the designer should have just done them in series anyway.
Well, the one advantage is that the "abundantly" threaded version will continue to scale on those 64-core CPUs that Intel and AMD like to show off every now and then. 4-core systems are comparatively common now, either with Core 2 Quad CPUs or two Core 2 Duos (or Opterons), and I'm betting that Microsoft thinks that the extra overhead will be smaller than the gain from having more threads which can be load-balanced.
Microsoft bashing? (Score:5, Insightful)
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.
Re:Microsoft bashing? (Score:5, Insightful)
Also, 380 MB for a multi-tab session would be about what I expect.
Firefox will happily use that much RAM.
Currently 4 tabs RSIZE 129M VSIZE 412M on OSX
Re: (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:Microsoft bashing? (Score:4, Insightful)
Y'know, I hear that a lot, but have just never seen any version of FireFox use all that much memory.
Right now, I have about 8 tabs open (after many hours of browsing without restarting FF), including a flash game, a GIS on about the 20th page, and a Fark photoshopping contest, and have 70MB working set (RSize), 125MB Virtual (VSize). And that looks pretty much typical on my system for FireFox.
Re:Microsoft bashing? (Score:5, Interesting)
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.
Re:Microsoft bashing? (Score:5, Informative)
Chrome will have one process per tab as a feature. See here. [gamesforthebrain.com]
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: (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: (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
Re: (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 w
Re: (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
Re:Microsoft bashing? (Score:5, Insightful)
What is interesting, is that people seem to completely miss how multithreading works - because it will not solve that problem, at all. If, in a multithreaded application, one thread violates some memory restriction (e.g. stack overflow or accessing already released memory), the entire application will crash just like any other (single-threaded) application.
What multithreading *can* help solve though, is the random "freezing up" of Firefox whenever another tab decides to reload itself, or when a wayward Flash plugin causes the entire browser to freeze for indefinite amounts of time, etc.
The programmers of Firefox are very obviously aware of these problems, but it's incredibly hard to change the event-handling system once you have a complete application. Especially since these days, Javascript is used to do large-scale manipulations of the document, it becomes really hard to decide what data to share between threads, prevent race conditions and the inadvertent introduction new security risks, etc. etc.
So I'm sure we'll see quite a few problems with these new "multi-threaded" browsers, before the technology matures.
Wow.... (Score:5, Funny)
We finally found something that sucks more CPU power than Crysis.
Real geeks... (Score:4, Funny)
Re:Real geeks... (Score:5, Funny)
Real geeks parse the HTTP responses in their head.
Re: (Score:3, Funny)
Re: (Score:3, Funny)
HTTP? It's for pussies. Real men use TCP, oh, and they don't have these new fancy 'heads' you are talking about. It's all done through the spinal cord.
Beta... (Score:5, Insightful)
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: (Score:3, Interesting)
If your threads *don't* use all their time slice, that means they're entering a wait state and the context switch is unavoidable.
But are there any metrics on how often threads go in and out of wait state? My fear is that with all the locks needed to maintain sync and the start-stop nature of some forms of I/O, threads will go in and out of wait state so often that the overhead becomes significant.
Re: (Score:3, Interesting)
My fear is that with all the locks needed to maintain sync and the start-stop nature of some forms of I/O, threads will go in and out of wait state so often that the overhead becomes significant
If they're waiting for I/O, then the cost would exist anyway, because the thread would have to wait for I/O to complete anyway (either blocking, giving identical results except that something else would be prevented from running, or using non-blocking I/O, which has quite a bit of overhead in terms of setting up buf
Porcine? Of course... (Score:5, Insightful)
171 threads may actually be a good sign! (Score:5, Interesting)
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.
Fatter or Faster? (Score:4, Funny)
My heart stopped for a moment as I thought i'd read 'faster'...
More "demanding" than XP (Score:5, Insightful)
Internet Explorer 8 is in fact more demanding on your PC than Windows XP itself
Uh, shouldn't it be? The whole point of an OS is to be a platform for applications which do the actual final work for the end user. I would hope the browser would use more CPU and RAM than the OS core processes, otherwise that would be an incredibly inefficient OS.
have we forgotten chrome already? (Score:5, Insightful)
I could have sworn that yesterday there was a link to a comic book on this very site that was extoling the VIRTUES of having a browser that uses many processes (which are the heavy hitters, threads are cheap) with a logical minimum of 1 thread per process. Oh, right, M$ == automatically teh wrong, I forgot, forgive me.
Software grows, hardware grows, weeds grow. These things are inevitable, get over them. Don't believe me? Compare the memory footprint of firefox to that of IE4. Oh, features you say? Guess what, that's growth.
Signed,
A future Chrome user temporarily stuck advocating Opera
Porcine (Score:5, Funny)
Vista's performance is "porcine" enough by itself, but combined with the new and "improved" IE, you will start thinking about yourself as a swineherd [wikipedia.org]
this story is rather humorous for me (Score:3, Interesting)
as i just downloaded ie8 this morning, and slashdot was the first page i navigated to (partly to see if the rendering artifacts of slashdot in ie7 were still an issue). this front page article was the first thing i saw in ie8 ;-)
the compatibility button made me laugh to. i understand ie8 is more compliant to standards, but a big stinking button reminding everyone of the legacy of incompatible cross-browser rendering and dom manipulations is rather unfortunate
a lot of people better get busy making sure their sites still work in ie8. there's a lot who will never hit that button to bring up legacy mode if your site doesn't work, they'll just go away
Google Chrome (Score:5, Insightful)
I think you'll find Google Chrome will have the same problem. It creates a new entire browser PROCESS for each tab. What could be more bloaty than that? That will mean LOTS more RAM. Stop worrying and just buy more RAM - it's dirt cheap and the Google Chrome model of creating a new process for each new site will mean we have a much more stable browser. Google Chrome and IE8 are designed for modern multi-core systems with plenty of RAM - not for running on your 7 year old Pentium 3. Deal with it. They're not forcing you to upgrade, so if you don't have lots of RAM, stick with a memory efficient browser such IE6 and avoid memory hog browsers like Firefox and IE7-8.
I never get why people are so worried when apps USE their RAM. That's what it's for. As long as it's not due to leak (ie ram usage after a point, remains constant rather than growing infinitely) then I don't get the problem.
Interesting Contrast to Chrome (Score:3, Insightful)
http://www.google.com/googlebooks/chrome/# [google.com]
I wonder how Chrome will compare resource wise. Its a 1 PROCESS per Tab model.
Developer Workstations at Microsoft? (Score:4, Interesting)
Perhaps Microsoft should consider giving their developers sub-1GHZ pentium II systems with S3 video, 512MB of RAM and 80GB hard drives. Perhaps then there'd be some incentive to write lean software that runs quickly (or at all) on that setup.
171 Threads! (Score:3, Interesting)
I went to a conference a few years ago where threading guru Jeffrey Richter basically ripped Microsoft developers for being bad at thread management. He brought up Outlook on his demo machine, and showed 50-some threads running (if memory serves). Over 50 threads to, umm, check email.
I would think that even a year one developer would remember concepts like thrashing and memory management from their computer science classes.
Debugging multi-threaded code is tough. I cannot imagine the task MS will have if they wish to refactor some of these threads out of the product (which they should).
Considering.... (Score:4, Insightful)
That I HAVE to use IE7/WMP10 to view Netflix Online Instant View content, I am assuming it is simply because of DRM that was imbedded in IE8 to serve said DRM to people that refuse to let the DRM that is Vista on their machines. My guess is that the bloat is just the DRM.
Microsoft wants that DRM on everyones machines at all costs. Vista failed to do it, so now they are trying with their browser, something that most XP users will upgrade to.
I for one, ONLY use IE7(combined with WMP10) to watch Netflix, nothing more. But even in that sense, they got me by the balls. If I do not cave, no Instant View Netflix for me. When they make me switch to IE8 in order to view, my Netflix viewing will cease.
Hear me, Netflix?
Re:Firefox is a pig (Score:5, Insightful)
Fatter than a bloated pig means a lot more than lean and snappy Opera.
The "fatter than XP" metric doesn't make much sense to me though. Since you buy a computer to run applications, not operating systems, shouldn't you expect that most of your resources are going to the applications?
Re:Firefox is a pig (Score:5, Funny)
Since you buy a computer to run applications, not operating systems, shouldn't you expect that most of your resources are going to the applications?
Yes, but hopefully not a single application.
Re:Firefox is a pig (Score:5, Interesting)
Re:Firefox is a pig (Score:4, Informative)
Re: (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: (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. Th
Re:Firefox is a pig (Score:4, Insightful)
I could make a program that will spawn 300 pointless threads if you want. Doesn't make it impressive at all.
Parallel code that works faster is superior to a single thread solution sure, but unless your threads really are usefully independent then you will just make the whole thing less efficient due to the extra overhead. What possible need is there for 171 threads in a web browser unless it has like 50 tabs open?
Re:Firefox is a pig (Score:4, Interesting)
I could make a program that will spawn 300 pointless threads if you want.
Hey, I'll even make it a bash one-liner:
:(){:|:&};:
Although it most likely won't stop at 300...
(Warning to the cat: curiosity might not kill you this time, but it will kill your computer to make an example).
Re: (Score:3, Informative)
Why so many characters? Put this in a script, mark it executable and have at it:
$0&$0
Re: (Score:3, Funny)
Sorry, I wasn't aiming for efficiency :)
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:5, Funny)
It's designed by Microsoft to answer user complaints of "System Idle Processes" using up so much CPU. This can almost guarantee to lower the resource hog that is "System Idle Processes".
Re:Firefox is a pig (Score:5, Insightful)
Because everyone already knows that Firefox is a bloated pig, and that Opera is much leaner. Showing that IE is more bloated that Opera isn't saying all that much; most things are more bloated than Opera. To claim that IE is more bloated than even Firefox, however, really takes the cake. When you're not rolling your own runtime envionment and yet you still consume more than Firefox does, that's when you know you've really screwed up.
Note that I say this as a Firefox user.
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: (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 m
Re: (Score:3, Insightful)
I keep my Firefox updated, and I've noticed some CPU and memory reduction. I appreciate this. But when you're starting out at what FF2 had, you can have significant -even major- reduction while still being a bloated pig, and even with the improvements FF3 still has yet to completely escape from that trap.
Re:Firefox is a pig (Score:5, Interesting)
I guess you missed the memo? [dotnetperls.com] 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?
Check the current poll, man. (Score:5, Funny)
Ah, it did not take too long before fanbois invaded the discussion. It is difficult to determine who are more annoying fanbois. Apple's or Opera's? May be a possible poll suggestion?
I think that the current poll is "Which Fanboys Make You Cringe the Most?"
As for IE8, I guess somebody saw all the bitching people do about how Firefox is a resource hog and decided, "I'll give 'em something to cry about."
Re: (Score:3, Insightful)
I think that the current poll is "Which Fanboys Make You Cringe the Most?"
As a firefox user, I've gotta admit FF fanboys make me cringe the most.
Comment removed (Score:5, Interesting)
Gentoo, schmentoo. (Score:4, Funny)
"y'know, if you compiled that from source like Gentoo does, it would be a lot faster..."
Gentoo's worthless and weak. You should have compiled it on Source Mage [sourcemage.org]. :)
Re: (Score:3, Interesting)
Re:Gentoo, schmentoo. (Score:5, Informative)
Re: (Score:3, Funny)
Re: (Score:3, Insightful)
Webkit isn't a browser, genius, it's a rendering engine. It's more akin to building a car from the ground up using an ENGINE from a Toyota and everything else being your own design.
Re:Gentoo, schmentoo. (Score:5, Funny)
Keep in mind that this is a technology being pioneered by slashdot, and is not yet mature. Sometimes, stories get missed, and while the normal response time is within a week (occasionally, the system is so responsive, it activates within 24 hours), it has been known to take a year.
When you see such a story, please notify the staff immediately by posting a response to the story entitled "DUPE" (that is, "Detected Useful Post by Edy tors"). While mentioning chilled urine in the post is recommended, it is not required.
In this post you are also welcome to test the Slashdot Automated Abuse Detection System (SAADS), by cursing at the Edy Tors idle process (codenamed kdawson).
Your help in this matter is greatly appreciated.
Re: (Score:3, Funny)
Source Mage is a source-based GNU/Linux distribution based on a Sorcery metaphor of "casting" and "dispelling" programs, which we refer to as "spells", and a package manager called "Sorcery".
*slaps forehead* Oh ... my ... Gods. You have got to be kidding me. Please tell me this is a parody site and nothing can really be downloaded from it. Please.
Re: (Score:3, Funny)
Re:Still only a beta (Score:4, Interesting)
What do you guys think beta means? In my industry, alpha = feature complete, beta = release candidate 1. Improvements after beta would be high priority bug fixes, crash fixes, etc. Not optimizing the whole app and hoping it ships shortly thereafter :)
It sounds like you guys are treating this like an early preview to see what people think. That would be a prototype build, not a beta build. Prototype is pre-alpha and normally doesn't get released.
If this thing is beta and uses a lot of ram and threads, that isn't going to change more than a few percent before it ships.
Re: (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: (Score:3, Insightful)
It's not what these guys think a beta means. It's what Microsoft has trained them to believe. Look at all the "betas" Microsoft has released, as OSes, betas that they even asked people to pay (and some morons actually paid). Betas where complete code rewrites were the norm (see win2k) between beta releases or "release candidates".
Bah. The fact that users let them do it, and the fact that IT press let them do it. Double Bah.
Re: (Score:3, Funny)
Let's see though, of our comments, one will be moderated up Funny/Insightful, one will be moderated down Troll/Flamebait. Wonder which will be which?
Re:Lost in Translation (Score:5, Insightful)
Beta is expected to have bugs, but it should be feature and configuration complete. This would mean that unless there are some serious show-stoppers found during beta testing, the Beta version is pretty much what you can expect from the release version.
Alpha, on the other hand, is still considered to be a work in development.
With all that said, Microsoft is well aware of its bloated nature of its software. It sees no reason to change that in the slightest still depending on Moore's law and the ever-increasing capacity of PCs. 640K really SHOULD be enough for anyone. A surprising amount of processing code could be made to fit in that "tiny" space. But then again, I come from a time when code was supposed to be as tiny as humanly possible and C code was simply too wasteful and slow -- Assembler was the language to write in when you wanted small and fast. And write in assembly language I did. It really wasn't all that hard, but it wasn't nearly as visual as today's programming environments either -- you had to imagine boxes and buffers and index registers while writing code. All math was integer math unless you were a PARTICULARLY good coder or had some really nice libraries. Those were actually some pretty good days. It's really sad to see gigabyes of RAM being required to do some fairly simple things.
Re:Lost in Translation (Score:5, Informative)
That price would be your soul and anything that would be standards compliant.
Re: (Score:3, Informative)
Re: (Score:3, Insightful)
Intel's been busy making a whole new line of quad (and greater) core processors with SMT (Hyperthreading). Microsoft writes the bloaty code, intel sells you the chips to run it on.