Firefox Notably Improved In Tom's Hardware's Latest Browser Showdown
Billly Gates writes "Tom's Hardware did another benchmark showdown, since several releases of both Firefox and Chrome came out since their last one. Did Mozilla clean up its act and listen to its users? The test results are listed here. Firefox 13.01 uses the least amount of RAM with 40 tabs opened, while Chrome uses the highest (surprisingly). Overall, Firefox scored medium for memory efficiency, which measures RAM released after tabs are closed. Also surprising: IE 9 is still king of the lowest RAM usage for just one tab. Bear in mind that these tests were benchmarked in Windows 7. Windows XP and Linux users will have different results, due to differences in memory management. It is too bad IE 10, which is almost finished, wasn't available to benchmark." Safari and Opera are also along for the fight.
Because the browser is part of the OS, the RAM is already in use as part of the windows explorer.
It does not surprise me that IE has the lowest working storage use when idle (only one tab open) as parts of IE (eg. the rendering engine) are most likely loaded on boot because they are used elsewhere in the operating system.
--frank[at]unternet.org
Perhaps those of us designing standard software sets for an enterprise... too bad none of the browsers tested are fit as they all use some retarded form of automatic update that will break said standards.
"IE 9 is still king of the lowest RAM usage for just one tab"
But, I thought IE was embedded into WinXP and Win7?
No wonder if it is.
I left ie cause of known problems. I got sick of it, I went with firefox and I was happy for a bit until the memory leak started to puke all over my system. Then I went with Chrome and I'm happy with it performance. This benchmark wont make me go with firefox or ie back again even if they got their act straight up. reason is simple, they got the change to fix these problems in the first place and they didn't listen to it's users and continued to release their products with those problems... too bad for them. Besides, I'm happy with Chrome.
there is a website called are we slim yet tracking the memory usage of firefox.
There is a spark in every single flame bait point.
I know it's now cool to backlash against chrome users when they talk about "memory usage" but they're simply just using the wrong phrase. YES chrome uses more actual bytes of memory and always has, but what it does with that memory makes it work so much faster than Firefox. Typical idiot vernacular causes you to say "firefox uses more memory" when in fact what they mean is "it is slower and less responsive."
Let's get a grip here people, it's 2012. If your computer doesn't have 4-8 gigs of ddr3 ram, you're doing it wrong. Chrome is allowed to use as much memory as it wants as long as it gets the job done better than anyone else.
Chrome runs each tab in a separate process, this means the entire memory space of the browser is copied to each tab.
A browser that runs each tab as it's own thread never copies the memory space. Even if I run the 64-bit version of Firefox in parallel with 32-bit Chrome, on the same tabs, Chrome is chewing up 2-3x more memory. The only way we'll see an end to this is if Google heel-face-turn's on the "one tab, one process" ass backwards tabbing model.
I should mention that anything that crashes the main thread, crashes all the tabs anyways, so all that Google's engineers managed to do was make it so that you have more processes that can crash. I've been having nothing but this kind of crashing problem... where the main process pauses due to activity in the taskbar and stops responding for a minute or two. Only Chrome is doing this on Windows.
Maybe's Chrome's reached a tipping point of stupid innovations and it's time to go back to Firefox with it's more conservative memory usage.
MSIE isn't too bad, but it's always two steps behind Firefox.
When every computer now comes with at least 3-4 gb of ram, who cares if a program uses 1.5 gigs?
Also, if you're using 40 tabs at once... well, then the obvious question arises: What are you doing that requires all those tabs to be open?
I don't think most normals have 40 tabs open at once.
Interestingly enough, the Tom's Hardware pages-per-article benchmark shows that Firefox can now handle an article spread over twice as many pages as before!
It's really not that surprising. If Firefox has cleaned up its act, then Chrome would tend to be at least a bit higher because of its "process per tab" design. Similarly, IE is likely to show lower usage, because parts of it are probably counted as part of the Windows OS.
Who in the name of satan has 40 tabs open?!?
*checks tabs*
Guilty as charged m'lord..........
Okay so Firefox is a tad faster, uses a little less memory and I use it everyday thanks guys.
That said it also sucks shit.
It never closes properly. Do not ask me how many times I've closed it to reopen it only to find it saying "only one instance can run at a time".
I'm a developer so I'll be nice, but I see it regularly use up to 2 gigs of ram with just two tabs open.
The only thing Firefox has going for it now are the plugins for developers and they are constantly breaking those, apparently a stable API isn't their forte.
Firefox is on the way out, I wouldn't suggest Firefox to anyone who wasn't a developer at this point and even then it would come with gripes.
complete crap.
It works as a browser quite well at the moment. The fact that I'm both surprised and happy that a browser allows you to browse must say something. I still have a number of gripes I won't bore you with but browsing, stability and speed are not complete crap.
The performance is slowest in ff/iceweasel after adding popular addons. Javascript engine is full of bugs. In linux, ff hangs by closing tab. It also forgets thumbnail of websites in new tab page. The fact is mozilla has sold ff to google as chrome and want to kill it.
until I updated my nvidia driver to the latest backported version, iceweasel 13 was using 50% of my 2.8GHz dual-dore when idle
on a text only page.
What I care about in a browser is (in order of importance) security, compatibility, reliability, speed.
I stopped examining RAM usage of any software since the time I bought 16GB of RAM for practically no money.
Even before, when I had "only" 4GB of RAM, I had swap file turned off for years and I haven't seen a single "Insufficient RAM" error.
Those of us who like a realiable and well working browser?
Because many /. geeks are poor people?
-- Cheers!
The summary elegantly avoided the most important metric - Page Load Time. Ok, so let's see how we're doing there:
IE9 - fastest
Safari - 2nd
Chrome - 3rd
Firefox - 4th
Opera - 5th
The page load time tests are the same eight pages in our startup time tests: Google, YouTube, Yahoo!, Amazon, Wikipedia, craigslist, eBay, and Wikipedia.
http://www.tomshardware.com/reviews/windows-7-chrome-20-firefox-13-opera-12,3228-6.html
Mozilla has screwed the pooch for Firefox OS-X users. The single feature that I most liked, aside from the fact that I didn't have to use IE, was the resume session feature. (When I switched to Mac 5ish years ago, I was mainly using FF on my PC and Safari didn't support add-ins at that time AFAIK) Well, that feature doesn't work under Lion for recent versions of Firefox, I've tried down to v10.x.. On my new Air, no recent version of Firefox will keep my sessions. So I abandoned it, found add-ins for Safari that give me AdBlock and session restore, and I'm planning on deleting it. On my older MacBook Pro, also running Lion, I have Firefox 3.6, which though riddled with problems, does session restore correctly.
From what I've been told, a fix is no where in sight, and since a new OS-X is due later this year, I don't expect it to be fixed this year. I neither know nor care what change in the OS upgrade broke session restore, but I consider it a critical feature and I don't know if I'll be using Firefox again on my Macs.
When you sympathize with stupidity, you start thinking like an idiot.
I remember when I first came accross tabbed browsing - it was Opera [which was ahead in many areas at the time - mouse gestures being another :)]
The reason why it was revolutionary was because it allowed you to open links in the background and they would load whilst you was still skimming the page/results. This was the days of dialup / early ADSL and allowed for more efficient browsing. In theory we should now be loading pages at lightning speed [literally] . We don't. RAM is not the problem.
The amount of RAM usage is pretty irrelevant unless you run out, it is more important how it is handled; which depeneds on too many factors to benchmark.
It would be nice if we could benchmark the overall 'browsing' experience, which in this day in age of resource hungry/wasting websites is pointless. [I am looking at you slashdot, I do not need to dynamically load comments, I have enough bandwdith to load all the comments I have filtered by score and my browser is more than capable of showing me them]
If the problem is the amount of RAM you are using when browsing the web, there is a far more fundamental problem.
I think it's swell that people look for memory leaks and that newer software sometimes fixes leaks in old versions.
But if you're measuring memory "efficiency" right after closing tabs rather than right before you close them, then you're doing it wrong.
"My hash table is as memory efficient as your sorted array, because after the program completes, it uses the same amount of memory!"
As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
Why "enterprises" can't customize open source software is a bit of a mystery to me. Interns really are cheap these days (esp. by $$$ enterprise $$$ standards). Seriously enterprise customers want a browser specifically tailored to their needs for absolutely nothing. It's funny.
Auto updates can be turned off both at compile time option and as an installed option. It's never been easier to bring in a custom patch set and build software and yet they're still bitch'n. They don't even have to pay a fucking license fee but act as if they're paying customers. They act like they dished out thousands of dollars for support like they do for their Oracle database software or Microsoft servers. They'll pay MS and Oracle per processor/core for less customization but when it comes to Mozilla they expect $0.00 to get them everything.
Enterprise babies need to grow up and L2.
I want this account deleted.
firefox tools/options/advanced/update
But you may not be qualified to install firefox if you couldn't figure that out.
"Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
Very few Slashdotters actually are poor people. Even those writing from third world countries. Not many of slashdotters have to use webcafes or really worry about money. You're just living way beyond your means, but you are still not poor.
Shouldn't the headline here be "Chrome Wins Tom's Hardware Grand Prix?"
... like a sieve.
If I leave my MacBook Pro - the early 2006 Core Duo 32-Bit model, not one of the later 64-Bit Core 2 Duos - it will eventually run my unit completely out of swap space, so that most of the processes hang. Just killing processes won't get the other ones to resume, which I think is an OS X kernel bug.
I was all set to post a detailed Bugzilla report when I saw this article. I had not realized I was so far behind the current release.
But how the Hell can they go through two major revision levels in just a few months? That sounds just like when I was working for Microport Systems, and I started unexpectedly getting support calls about how we skipped a whole bunch of major releases. Well it turned out they just wanted to be at the same version number as SCO was.
While Microport SystemV/AT was real AT&T Unix for the 286 and 386 PCs, whereas SCO Xenix was developed completely independenly of Unix, Xenix was a far more mature product. Thus its higher version number led our potential users to think Xenix was the better choice.
Anyway, try this on your own Firefox, on any platform. Let me know whether you get a memory leak.
On Mac OS X, you can use /Applications/Utilities/Activity Monitor.app to look at the "Real Mem" used by a process. That's the amount of Virtual Memory which the process has actually allocated, not just its total virtual space.
I think the Windows task list that you can bring up with Ctrl-Alt-Delete will show you memory for Windows processes. On *NIX you can use "ps -ef".
Launch Firefox. Think of some event that made headlines all over the worl back in the Nineties. Open a few of the results in tabs. Open the pages they link from in new tabs. Open a few windows as well.
When you have a half dozen or so windows with maybe two or three hundred tabs, minimize all the windows, or on OS X, hide Firefox entirely, then watch its memory consumption.
In my case - again this is with 11.0 so maybe they've fixed in in version 13 - it grows by about a hundred megabytes per hour. I have all manner of crap on my drive, and OS X creates backing store files as needed, so after a while Firefox's memory leak will also fill up my filesystem. Once the filesystem is completely full, no process can allocate new VM anymore, so a bunch of them get suspended. I'm then presented with a window that won't go away until I terminate all the suspended processes.
Just quitting the tasks that I don't really need running, or throwing away files will help.
Michael David Crawford, who can't be bothered to recover his password.
Just for shits and giggles I opened 40 tabs in Konqueror. Shows memory usage at 356MiB. Whereas my Opera window with 4 tabs open is at 334MiB. Anyone know what sites they test it with? Cause I'd like to see a fair comparison.
Sometimes when I'm working on projects things disappear, I suspect gremlins.
I love Firefox, but it's still about 50% faster on Windows 7 than on Linux. Chrome wins clearly on Linux. I agree that on Windows they're comparable.
There is nothing "cool" about - that they by design decision refuse to reflow text on pages (which is a HUGE problem on mobile devices) just means the idiots at google have entered the evil club.
If they ever come out that will be a happy day indeed.
Only kids care about "cool"
If Google really cared they would fix Android Chrome to reflow text, instead of discriminating
Doesn't matter. This setting is not selectable at installation and while it may be selectable by some manual edit of an ini file that type of manipulation is likely to break over time. How would you deploy a well tested version of firefox (post 3.6) to 1000 computers without worrying about them being updated to some untested version in the near future? I've done some reading on firefox esr and in it's current state it is still not enterprise ready... even unofficial builds like Waterfox are better suited to an enterprise model.
Enterprises want someone else to blame if it goes titsup.com. enterprise managers are wimps and clueless
"The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
You should, because our new super-duper upgraded browser requires 17GB of RAM.
I said it in the earlier Thunderbird story and I'll say it again. Firefox needs to get the right balance between speed and memory. Focus on getting all HTML5 implemented and then optimize it all. Then with all the features in place it won't be necessary to have rapid release and people will be able to relax with ESR.
If you look at market share statistics you find that Firefox versions are fragmented like Android is, with too many people using old versions because they find it difficult to update all the time.
I've noticed that Firefox 13 series is some 10% slower for me when compared to version 12.
I even re-downloaded version 12 after updating to 13 to re-check.
Its not related to hardware acceleration either (forced turning off layers in both version).
Anyone else suffering this?
The recent improvements in FF memory usage have some severe drawbacks. FF will throw away images in background tabs, and reload them when you switch to the tab. But the reason I load new pages in background tabs is that I don't want to wait for the page to load and be rendered.
It gets worse when you quit FF, and then reopen the app and have it reload your last session. It will create the tabs, but it won't load the page until you activate the tab. Now this is something I'd be willing to tolerate for tabs that have been open for a few weeks. But not for tabs that I've created recently and/or activate frequently.
I also notice that FF memory usage steadily increases over a couple of days, while the number of tabs remains roughly constant.
In other words, they have reduced the memory footprint not by tackling whatever process is hoarding memory like Scrat stacking acorns in his giant hollow tree, but by throwing away items that use memory but are otherwise static (images).
I totally agree on desktop. On phones it still makes sense to optimize memory usage though. I'm using chromium 18 on my openmoko that only has 128 MB of RAM and it's about 20 MB of it is constantly in swap. Do you know any tricks that I could use to reduce the memory usage at least slightly? I've considered using compressed swap (compcache) when I can upgrade the kernel.
and if they're de-facto on Chrome (i.e. fewest obvious bugs, highest overall stability) then they're free to choose Chrome until Firefox becomes the browser with the highest number of fixes that EXIST now.
STOP . AMERICA . NOW
firefox tools/options/advanced/update But you may not be qualified to install firefox if you couldn't figure that out.
So can you configure the .msi to set that option by default? What's that? Mozilla doesn't ship Firefox as an .msi? Oh.
Breakfast served all day!
Seems TitsUp.com is a premium domain that is for sale ... could be nice name for computer-repair shop (ahem..), but not for 10K USD.
How would you deploy a well tested version of firefox (post 3.6) to 1000 computers without worrying about them being updated to some untested version in the near future?
If you and your staff are not incompetent it's trivial. If it's NOT trivial you have MUCH worse problems to worry about than upgrading browsers, as it is then apparent that your entire network is as fragile as an eggshell. Making any kind of changes whatsoever probably has sweeping deleterious effects that never get fully troubleshooted.
Test is missing the point, Firefox sure has a small memory footprint initially, the problem is that it never deallocates memory, the memory remains associated with the process and isn't properly pooled, this leads to severe heap fragmentation over time (so while you'll initially have something like 60-100 MB, this can easily climb to 300-600 MB+ after a couple of hours), and it will never got down significantly, in fact the more deallocs firefox does, the more fragmented the heap becomes.
Like others here, I have many gigabytes of RAM, so I'm not too concerned with the memory usage issue. Firefox is also good on speed; that doesn't bug me.
But I stopped using Firefox back when I was last a Linux user (ca. 2009) and have continued to use alternatives (Chrome and Safari, most notably) on OS X because Firefox suffers from too many WTF? moments. Whatever you call them—bugs, the results of Firefox's architecture, I don't care—they make Firefox a non-starter for me. For example:
(1) When using Firefox on OS X all window updates sometimes suddenly stop. Nothing is clickable, nothing is scrollable. The way around this is to drag the window—even just one pixel. After that, refreshes will return. That's bad if you have data auto-refreshing on a Firefox window you're monitoring. And it's not an OS X bug because only Mozilla applications (Firefox, Thunderbird) display this issue, and have done for the last umpteen versions. (For the record, this happend both on my older Mac desktop and on my new unibody MBP.)
(2) The UI still sucks more than any other browser. Widgets and graphical elements misaligned from their active (i.e. clickable) zones, tearing and refresh issues for stateful widgets, etc. The point of the UI is to metaphorically embody what's going on in the code. Once the UI no longer reflects program state, you basically can't talk to your program.
(3) Crashes. Firefox remains the most crash-happy of the browsers. It does this at random. My last crash-followed-by-bug-reporting window was yesterday, when I fired up the latest version of FF for OS X to survey the meta titles of a bunch of pages rapidly. (My biggest complaint about Chrome is the absence of the meta title in the title bar.) About 10 minutes in, FF crashed. My uptime is measured in months right now, and I've had instances of Chrome up for that long. With FF I'm lucky if I get two days.
(4) Graphical appearance. It's damned hard to find a nice, professional FF theme that looks minimal. I just want something that has the same ethos as Chrome or Safari: simple widgets, no cruft, all of a cloth, that integrate well with the OS appearance. There are dozens of FF themes and "personalities" but all of them have that same "I'm OSS!" appearance that KDE also suffers from.
If Firefox were to stop sucking on these points, I'd give it another look regardless of memory use. But it's been a lot of releases since 2009 and though I keep the latest version of FF installed for cross-browser testing, I haven't seen any improvement on these points that would make me want to switch for my general browsing needs.
STOP . AMERICA . NOW
I hear it a lot: "auto-update in browsers is bad for enterprises because it'll just randomly break apps". I consider this argument bunk. Simply block the update sites in your corporate DNS and you're done. ESPECIALLY when you're talking about a silent background update, I'm pretty sure you won't even see a warning or anything in that case.
I suppose if you work somewhere that uses someone else' DNS servers this isn't an option, but even then you probably are going through a proxy, so block it there!
This isn't theory: my company was doing this for a while (until the development staff complained enough and they changed the policy around alternate browsers)... it works just fine, isn't expensive to implement and, of course, if you get to a point where a particular new version is certified you just un-block for a few weeks and let the updates take place.
If a pion (n-) collides with a proton in the woods & noone is there to hear it, does lamdba decay into the source pa
You'll wish you had a swap file when you accidentally write a program that allocates too much RAM.
Swap lets it slow down enough that you can kill things before the OS starts deciding which things to kill.
The recent improvements in FF memory usage have some severe drawbacks. FF will throw away images in background tabs, and reload them when you switch to the tab. But the reason I load new pages in background tabs is that I don't want to wait for the page to load and be rendered.
image.mem.min_discard_timeout_ms
image.mem.decodeondraw
image.mem.discardable
Etc etc
HTH HAND
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
Its easily worth 10K if its a topless computer-repair shop. Too bad none of us have the charisma to convince a halfway decent looking stripper that we arent creepers.
"His name was James Damore."
The main problem with this article is that it seems like the authors are simply reporting the compound number for Memory - Working Set for all browser processes. This is problematic in so many ways it ain't even funny. Foremost, multiple processes requiring the same page mapped into RAM will count that page multiple times. With architectures involving a lot of cross-process communication and multiple instances, like IE and Chrome, all code pages that are mapped into multiple processes will be counted multiple times (including any Windows OS DLLs mapped by IE), as long as they are part of the active working set. In addition some of the inter-process communication is probably handled by mapping common regions of memory, and thus also counted multiple times.
So, in one sense, IE and Chrome are losing out big in the multi-tab test. On the other hand, when tabs are closed, the related processes are also completely closed. This means that the associated heap is returned in full. In Firefox, even if some regions of the heap are freed back to the OS, Windows will not actively reclaim that working set. Slowly, the untouched pages will be removed and replaced by caching, but if there is no memory load, the best guess by the OS is that a process that just used a lot of memory and freed it might start doing it again. It is possible that Firefox, due to the monolithic process structure, ends up with a more fragmented heap (or a heap implementation that is not returning pages to the OS) so the OS could not successfully reclaim the pages (and only page them out to disk as a last resort), but we do not know that from these tests. It is easy to try this yourself, write up some small C program allocating a big buffer, freeing it and then pausing for a scanf/gets or something.
It is relatively easy to measure CPU usage or amount of I/O. Total time usage is also easy to measure and it says something about the conditions even under load. Memory is quite different. Memory is allocated all the time and the total bandwidth usage is closely related to the actual computations of the CPU. Even in a fully virtualized environment, the hypervisor cannot keep too detailed stats on memory usage - the overhead would balloon. At the same time, memory is a constrained resource with complicated temporal dependencies. You cannot free some memory from a process now and just give it back later. And when you bring multiple related processes into the mix, what you measure is all depending on how you define your tests. In many situations, the best metric is probably to look at full system metrics anyway, i.e. delta on total available/free memory in Windows. Many of the same issues will still apply, though. The question really becomes why you are interested in memory usage. If you want to know how the OS will behave when another process is allocating a lot of memory, test for that and verify memory usage as well as load times when you bring back the browser.
It gets worse when you quit FF, and then reopen the app and have it reload your last session. It will create the tabs, but it won't load the page until you activate the tab. Now this is something I'd be willing to tolerate for tabs that have been open for a few weeks. But not for tabs that I've created recently and/or activate frequently.
1. Go into Options,
2. On the Startup box, there's an option "Don't Load Tabs Until Selected"
3. Uncheck it.
Now it will load all the tabs at startup.
Very few Slashdotters actually are poor people.
How do you know? Have you done a survey? Or are you just a pompous asshole who pulls smug conclusions out of your butthole?
Run without swap for a while, and you'll begin to understand what difference it makes. Every single app that is on your taskbar responds immediately, always, whether you used it 5 seconds ago or 3 days ago, it makes no difference.
Swap, while theoritically allowing optimal RAM use, depends heavily on the accuracy of its predictions of when I want to do something. Unfortunately, this prediction algorithm basically comes down to "swap stuff out that hasn't been used recently", which is piss-poor at predicting what I want to do next.
Since I have plenty of RAM, and donot want the system to cache: ... I just restrict the system by not allowing swap at all since apparently it is too stupid to know that my mail program/browser/etc can be used at ANY time and that I have very little patience waiting for it to be swapped back.
- the 8 GB MKV file that I just watched
- the 100 GB of files that were processed in the overnight backup/virus scan
- the 20 GB of downloads/uploads that were done overnight
Again, if you don't know how to deploy application changes without going through their packaged installer, I'm not clear that you're qualified to do so.
"Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
How could it get updated when the users running it are (presumably) non admin users who won't have sufficient access to update it...
Firefox automatic updates don't seem to bother linux distros, where the built in update function is disabled and the system package manager is used for installing updates.
http://spamdecoy.net - free throwaway anonymous email - avoid spam!
I think they've isolated the problems I was running into just fine, so maybe they just haven't gotten to YOUR particular issues. For me, Firefox runs in the background for weeks at a time without chewing up my RAM, it still loads tabs in the background just fine, and the only noticeable drawback is that large images can take a second to pop in when I switch to their tab. Hardly worth crying about, and on my older PCs I'd rather have Firefox use less RAM than more CPU.
Hold on...
* well tested version
* likely to break over time
I see a disconnect here. How will your well tested version break again?
wait... assholes have buttholes now?
Does this take into account the time it takes to look for things in the old place, only to find the menus were shuffled? I'd rather have a slower browser that doesn't shuffle the menus.
True, Chrome (19.0 points) regains the lead from Firefox (18.5 points). Firefox was the last winner of Tom's Hardware Web Browser Grand Prix, and Firefox has been good with memory for several versions now. The improvement that Tom's Hardware talks about is Chrome now has HTML5 hardware acceleration for Windows (since Chrome 18). That is the news, not Firefox's low memory usage.
When Flash crashes, it takes a while for the plug-in container to dump core (dumprep.exe). I understood "when - for example - flash is in the middle of crashing" as unresponsiveness while Windows is tearing down the crashed plug-in container.
This exactly what I do as well. At the absolute worst it ends up looking like this:
http://i.imgur.com/3T3xh.jpg
and I have a decent amount of things running in the background there. No swap, and I know exactly what you're talking about when it comes to "the difference it makes." When I restart, I dread the 'spin-up' time for everything to get into the cache where it belongs :P
But yeah, 16GB of ram and that graphic shows exactly how it should be used.
I really can't notice the effects of these settings being present.
Mine default to:
image.mem.discardable = true
image.mem.max_bytes_for_sync_decode = 150000
image.mem.max_ms_before_yield = 5
image.mem.min_discard_timeout_ms = 10000
image.mem.decodeondraw = true
Are you suggesting that we change these values? If so, preferably to what?
About the images...
Firefox doesn't get rid of the images and reload the per se.
Images used on the web are compressed (gif, jpeg, etc). The picture is decompressed to a raw file for viewing (which adds to the used memory without adding to usability in most cases). On a page with lots of pictures, this can become a serious memory problem. The solution is to scrap the memory-hungry raw images when they can't be seen anyway and only decompress them when they can be seen.
Firefox only discards images if all of the following are true:
1. all the images together use more than 50MB of memory
2. the images can't be seen
3. the set amount of time has passed (20-40 sec).
The result is that people who only use a couple of tabs at a time will seldom have raw images scrapped, people with lots of images won't lose the images they're currently looking at (in any tab) and won't lose the images in the current tab unless they haven't scrolled by them in a while. This seems to be a resonable trade-off to me.
Most browsers (to my knowledge) have different rates at which they discard these images, but they still must or run the risk of running out of memory. If anything, Firefox is slightly more aggressive about this (something that one can change if one desires to using about:config)
Not that the comparisons count for much, but it's disappointing that Slashdot's headline says "Notably Improved" when Firefox won the three previous comparisons and finished second this time:
* Grand Prix 7
http://www.tomshardware.com/reviews/firefox-7-web-browser,3037-17.html
* Grand Prix 8
http://www.tomshardware.com/reviews/chrome-17-firefox-10-ubuntu,3129-18.html
* Grand Prix 9
http://www.tomshardware.com/reviews/chrome-17-firefox-10-ubuntu,3129-18.html
This isn't a big surprise to me. Firefox performs far better than Chrome with a dozen or more tabs open - in memory use, speed, and stability (64-bit Win7, might make a difference).
Now if I've only got a few tabs open, Chrome screams.
So I use Firefox as the long term browser, open for weeks with dozens of tabs for work, personal, etc. Chrome if I need some short term speed. Always mount a scratch browser!
The amount of RAM usage is pretty irrelevant unless you run out
If your PC's hard drive is bigger than its RAM, you have already run out.
At the minimum, image.mem.min_discard_timeout_ms should be set to 60000 times the number of minutes between when you load a document and when you expect to view it.
No, the browser is not built into the kernel. It lives entirely in DLLs in user-space, all of which are counted separately against the working set of each process that loads them.
Of course, I'm speaking from actually knowing what I was talking about, whereas you were were just guessing about what was "most likely" from a position of complete ignorance. Clearly, your perception of "most likely" was biased by your predetermined conclusion that Windows *had* to be somehow 'worse' (it certainly wasn't contaminated by any hint of actual knowledge of how Windows works internally), thus leading you to try and come up with a reason to justify ignoring the actual genuine empirical evidence presented in TFA. You were basically denying the evidence of your senses in favour of supposedly a priori knowledge about the universe pulled entirely out of your own orifice. That's a guaranteed recipe for self-deceit.
Hey, thanks for that. I'd kind of forgotten about about:config in Firefox. Now I just need to find a good page describing all the options, so I can experiment with other options.
FF will throw away images in background tabs, and reload them when you switch to the tab.
If you've got really large high-res images open in tabs, this is pretty much indispensable though. On the geekier parts of the Internet I visit, it's easy to open several big images in tabs without realising it (die shots of chips are huge, for instance).
Use Frontmotion Firefox
IMHO It should only contain cross-platform browsers.
It's not RAM usage alone i'm concerned about. I can appreciate lower RAM usage for resource-constrained systems, but speed efficiency seems a problem for FF.
I upgraded my desktop from 4GB of RAM to 16GB of RAM, in my effort to combat extremely poor Firefox performance after a few days of uptime and ~20 or so tabs open, and I do have a Quad core 3.2Ghz Intel i3 CPU.
So far I have been highly disappointed with Firefox, because there has been little/no performance improvement with Firefox, despite making available on the system just about all the unused RAM a web browser could ever want
Scalability is the important thing.
How many tabs, bookmarks, and history items can Firefox scale to, and have good performance on my desktop?
20 or 30 tabs don't seem like a lot.... why the heck does it take 30 seconds to close an open tab or 20 seconds to open a new one after my browser has been open for a week or so, with about that much browsing?
The performance of Chrome has been absolutely stellar by comparison, with this amount of system memory available.
The recent improvements in FF memory usage have some severe drawbacks. FF will throw away images in background tabs, and reload them when you switch to the tab. But the reason I load new pages in background tabs is that I don't want to wait for the page to load and be rendered.
1) It only throws away images, not the layout tree. You only have the wait for JPEGs/PNGs to be unpacked into RAM.
2) Unless you've got massive mega-pixel images, the decoding should only cause a short stutter when switching tabs.
3) If you have got massive mega-pixel images then keeping those things in RAM would be stupid anyway.
I also notice that FF memory usage steadily increases over a couple of days, while the number of tabs remains roughly constant.
1) Firefox has the same problem that all programs that have been left open for ages do: Heap Fragmentation. This causes a minor blowout in usage by something like 20% more than actual usage. Waste is proportional to actual use and should never exceed 50% real memory use.
2) If you have any "Web 2.0" pages you leave open for ages (AJAX), it's very possible for crap JS to "leak" memory and increase the total usage. [The memory isn't really leaked, it's just that the page is extremely inefficient and prevents the Garbage Collector from throwing things away which affects every browser]
3) As always, not using leaky extensions is a good idea.
In other words, they have reduced the memory footprint not by tackling whatever process is hoarding memory like Scrat stacking acorns in his giant hollow tree, but by throwing away items that use memory but are otherwise static (images).
The funny part is that devs actually checked, and a majority of the Firefox crashes due to running out of memory were caused by something like 60+% of RAM being filled with decoded images. On the other hand, you are close to a point but don't actually know enough about Firefox to see it. Firefox uses its own internal image processing library (ImageLib), this library is a giant outdated turd that is very inefficient. Unfortunately, Mozilla only has like 3 people who understand that pile of crap and can fix it, all of them decided it would be more fun to work on Azure instead.
Until ImageLib is fixed, Firefox's "throw all the images away" feature is the best that front-line devs can do to keep the image memory usage under control. Eventually ImageLib is going to load images on demand in the background which should eliminate all the problems related to images (both memory and performance).
It's advanced, I know.
"Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
For the past few months I've had to do a lot of Comparing Stuff Online, and that leads to as many as 25-30 tabs open 24 hours a day for 2-3 weeks at a time (any given tab is not closed til I don't need the info anymore, because when it's closed I may lose it entirely -- the pages expire, and it's a nuisance to save and reload the info).
[Speaking of Seamonkey v2.5 here] This itself did not use a huge amount of memory... what DID was the stupid cache management. Cache might have 2500 directories and 1500 files (no, that's not a typo)... WTF is with that? So I started tracking it, and the amount of cruft in the cache, mainly as empty directories, or directories with only a single file in them, was directly associated with increasing memory use. With only 4 or 5 tabs open but a "full" cache (all 100mb hacked up into a couple thousand directories) it leaks about 100mb per day. If I cleared cache after every session, then memory use was only about 120mb even with a lot of tabs open. If I didn't, memory use would just keep growing and growing (at one point it hit 1200mb, even with only 4 or 5 tabs open). This memory is not recovered until the browser is shut down and cache cleared.
Thanks to the stupid cache handling, I finally found a RAMdisk that works on WinXP and now SM's cache is on that. Its fragmentation on the HD was ridiculous, especially since it has the thousands of useless directories thing. At least it doesn't matter if the RAMdisk is fragmented all to hell (well, it does, but it only impacts itself).
~REZ~ #43301. Who'd fake being me anyway?
I ran swapless for many years too, and the only reason I started allowing it again is because of stupid Photoshop filters that complain "not enough memory" if they don't find a swapfile. You are so right, the whole system is SO much more responsive without a swapfile (and even so sometimes on low-RAM systems).
Tho it occurs to me that since I use a RAMdisk to mitigate SM/FF's dreadful cache management, I could put a little tiny swapfile on the RAMdisk for those Stupid Filters to find...
~REZ~ #43301. Who'd fake being me anyway?
It's not surprising that IE9 uses the least memory for one tab. Because of its privileged place in the OS (some of the code is also used for other purposes), a lot of its code is already in memory before you even launch it, so the incremental cost of opening that first tab is reduced.
+10 to the above author!!!
I've complained about this in FF for 10 years!.....
I've never been concerned about memory... and now with 48G, like I care about the fact that 32-bit FF is staying below 2G!... Screw that!
What I care about is that with 30-50 tabs open in 5-8 windows, how much CPU on my 6-core machine does it use? Max? 16.666666666%.
Never has been. When will they multi-thread each java instance? For that matter, when will they run each site in it's own process? If a site includes stuff from another site, it's still on the main site, but if it opens a sub window like an IFRAME, that could be another...certain my pages browsing on slashdot shouldn't be affected by my pages on some high cpu using site that uses complex, real-time, timer-driven, javascript that does screen updates with every keystroke...
But it's all in 1 java event loop because for 10 years it's been "too hard" to make things multi-process. They have multiple threads, but it's only 1 thread that is ever dominating the cpu. They even split out media players into separate processes -- which did ZIP -- unless you have a media player playing your video in background while you browse another site! How often do people play video in background while browsing other sites?
It may help the video site -- from all the other background processes that run in background, but all my windows can be closed and FF still uses "15-30%" of 1 CPU (I hate that windows likes to hide those numbers by dividing by #processors... it makes it harder to see how much cpu a process is taking. On a 12-cpu machine, (2 6-cores), 100% cpu usage
is reflected by 6.7%. For displays that round to the nearest integer, you don't see usage under 8.7% (rounds to 0). Yet all those procs using 0% cpu are active and wiping your memory caches clean and you wonder why performance sucks..?
I much prefer displays that show me 100%/cpu. so on a 12 cpu machine,
if 3 are used, I'll see 300% cpu usage. What else do you you call 9 seconds of cpu time used in 3 seconds of real time?
In other words, they have reduced the memory footprint not by tackling whatever process is hoarding memory like Scrat stacking acorns in his giant hollow tree, but by throwing away items that use memory but are otherwise static (images).
More to the point, they are throwing away data that might actually be useful, apparently in an attempt to cover for data that they can't figure out how to garbage collect.
As a long time Firefox user (since Phoenix 0.2), my frustration got to a boiling point last week and I switched to Chrome, despite 2 or 3 things that I really prefer about Firefox (type ahead find being one). I really don't care how much RAM is being used (I have 12GB)--what drives me crazy is the UI lag that inevitably occurs after using Firefox for a few days.
The electrolysis project being put on hold for the foreseeable future basically confirms we will never see a UI responsive Firefox. I appreciate the attempts to not waste memory (especially for lower mem devices), but if doubling the amount of RAM used would somehow speed things up, I'd gladly accept using 2GB of RAM. Unfortunately, with Firefox, the more RAM, the slower the UI goes.
With Chrome, the more RAM, the more...RAM. Nothing slows down. Chrome may not be a memory saver, but it is a time saver compared to Firefox.
It only throws away images, not the layout tree. You only have the wait for JPEGs/PNGs to be unpacked into RAM.
All too often, the image is what I'm after. Webcomics, other image sites where I'll ctrl-click a dozen links that I expect to be loaded in the background and be ready for viewing without further delay. Instead I get the layout tree, including all of the damn ads, and I still have to wait for the part of the page I want.
I'll go fiddle with the about:config settings to see if that'll improve things.
Which looks like it confirms the original poster's statement: Mozilla doesn't ship Firefox as an .msi, just an exe. You can script the exe, but still not an .msi.
The third or fourth result is to a Mozilla page that directs people looking for an MSI to the first result. Mozilla doesn't distribute an MSI, but that doesn't mean there's not an MSI available.
"Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black