Slashdot Mirror


Notes On Reducing Firefox's Memory Consumption

Skuto writes "At yesterdays linux.conf.au Browser miniconference in Ballarat, Australia, Mozilla engineer Nicholas Nethercote gave a detailed presentation about the history of Firefox's memory consumption. The 37 slides-with-notes explain in gritty detail what caused Firefox 4's memory usage to be higher than expected, how many leaks and accidental memory use bugs were tracked down with Valgrind plugins, as well as the pitfalls of common memory allocation strategies. Current work is now focused on reducing the memory usage of popular add-ons such as AdBlock, GreaseMonkey and Firebug. Required reading for people working on large software projects, or those who missed that Firefox is now one of the most memory-efficient browsers in heavy usage."

208 of 297 comments (clear)

  1. Firefox is required anyway. by Tsingi · · Score: 5, Interesting

    I use other browsers for development, but only Firefox to browse, it's the only browser that I feel is actively protecting my privacy.

    Any other opinions on that?

    1. Re:Firefox is required anyway. by stms · · Score: 5, Insightful

      I use firefox because my plugins make the web a much nicer place to be.

    2. Re:Firefox is required anyway. by bemymonkey · · Score: 3, Informative

      Agreed - and the power consumption is much lower than Chrome's (the only viable alternative, IMO) too.

      But how do I speed it up? Chrome is MUCH faster on my machine, and I'm using a Firefox profile that's barely a year old, without many add-ons installed (NoScript and ABP go without saying... ImageZoom, NoSquint... that's pretty much it). And Firefox keeps thrashing my disk (No, I'm not swapping it out for an SSD - I only have one hard drive slot in my laptop, and it's filled with a big-ass mechanical hard drive)...

    3. Re:Firefox is required anyway. by Tsingi · · Score: 1

      Any other opinions on that?

      Maybe this one.

      Cool.

      Only runs on Windows though, that leaves me out.

    4. Re:Firefox is required anyway. by TheRaven64 · · Score: 4, Insightful

      I don't see your on-topic post. I see an article about software engineering techniques used to reduce memory consumption, with FireFox used as a case study. You then post about how FireFox protects your privacy. This is about as on-topic as a post saying that you use Android because you prefer the user interface in an article about a new feature in the Linux kernel improving battery life on ARM.

      --
      I am TheRaven on Soylent News
    5. Re:Firefox is required anyway. by Surt · · Score: 1

      If your firefox is a year old, you've missed like 3 major revamps of the javascript engine. The performance difference between then and now is enormous.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    6. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Actually I meant that I've been using the same profile for all this time - that hasn't atopped me from upgrading to the latest FF ver

    7. Re:Firefox is required anyway. by Ihmhi · · Score: 4, Insightful

      Agreed. IE is shit, and I don't trust Chrome.

      I know it might be judged as paranoid and irrational (and to a degree, it is), but I really want the bare minimum of Google products on my computer. I just don't trust them. I've seen too many previously "good" companies abuse their power once their product is entrenched on everyone's computer, and I don't want to give Google much of a chance in that respect.

      Firefox isn't only the best for my needs, it's also the least of all evils that has the features I want.

    8. Re:Firefox is required anyway. by mrchaotica · · Score: 1

      Forgive my ignorance, but what would using the same profile have to do with anything? It doesn't accumulate cruft like the Windows Registry or something, does it?

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    9. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Accumulating cruft is EXACTLY what a Firefox profile does. To begin with, they're tiny... mine has grown to over 1GB in size, and Firefox thrashes the hard drive every time it's opened or closed. :(

    10. Re:Firefox is required anyway. by asdf7890 · · Score: 1
      It doesn't accumulate cruft like the Windows Registry or something, does it?

      I've seen suggestions that it does, particularly after upgrades, though I've not looked into the issue myself so I'm handing over unverified anecdotal evidence here.

      Even if cruft doesn't build up in the profile itself, the filesystem objects used to store it may become fragmented and spread all over your driver over time as the cache is constantly updated and the database files it keeps (for abusive locations lookups and so on) grow. This could cause performance to degrade over time even if the profile itself clean internally.

    11. Re:Firefox is required anyway. by sourcerror · · Score: 1

      You must have a lot of bookmarks :D
      Seriously, I never had such a problem. Do you have any idea what can take up so much space?

    12. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Looks like cache, mainly. Just deleted that and it's back down to about 200MB - that's still huge though, isn't it?

      Don't really have that many bookmarks, and my history shouldn't be all too big...

    13. Re:Firefox is required anyway. by Bucky24 · · Score: 1

      If the Chromium base is what you want, you might look into this:
      http://www.srware.net/en/software_srware_iron.php
      It's basically Chrome with all the tracking stuff stripped out. And they have a Linux version. Last I tried it it was a few versions behind Chrome, though that shouldn't be that big of a deal.

      --
      All the world's a CPU, and all the men and women merely AI agents
    14. Re:Firefox is required anyway. by quintus_horatius · · Score: 1

      I've seen too many previously "good" companies abuse their power once their product is entrenched on everyone's computer

      What's your sample size of "good" companies that are present on "everyone's" (read: sizable majority) computers? Only one comes to my mind, Microsoft, and while I agree that it did turn ugly(-ish) a single company does not constitute a reasonable sample.

    15. Re:Firefox is required anyway. by jesser · · Score: 1

      Which files in your profile folder are the largest?

      --
      The shareholder is always right.
    16. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Bulk deletion via filters sounds good... thanks for the tip!

    17. Re:Firefox is required anyway. by Tsingi · · Score: 1

      I see that they have an Ad Blocker. That's nice, and one reason to use firefox. But ads aren't the real problem, they are just annoying (OK, A real problem, but not THE real problem).

      XSS, cookies and local storage is where the most privacy concerns crop up. Mostly XSS. I saw no mention of that on the chrome vs iron page.

      http://www.srware.net/en/software_srware_iron_chrome_vs_iron.php

    18. Re:Firefox is required anyway. by tibit · · Score: 1

      There's probably an sqlite file or two that firefox uses that has thousands or tens of thousands of framgents spread out all over your drive and is killing performance. Shut down your firefox, run ccleaner to consolidate the firefox database(s), then run a defragmenter in a mode that only coalesces files (defraggler has such a mode), it shouldn't take too long. This seems to work wonders. I only do free space defragmentation (full defragmentation) once a year. You'll be amazed how bad NTFS is at fragmentation, and if you keep updating firefox, its application files and files in your profile will be literally all over the hard drive.

      --
      A successful API design takes a mixture of software design and pedagogy.
    19. Re:Firefox is required anyway. by arose · · Score: 1

      Maybe something is using localstorage? I know the Amazon Cloudreader asked me to use over 50MB, that alone must use like 100MB in my profile.

      --
      Analogies don't equal equalities, they are merely somewhat analogous.
    20. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Sounds great to me, thank you!

    21. Re:Firefox is required anyway. by Bucky24 · · Score: 1

      XSS, cookies and local storage is where the most privacy concerns crop up. Mostly XSS. I saw no mention of that on the chrome vs iron page.

      That's a good point, but shouldn't those be taken care of in the Chromium source?

      --
      All the world's a CPU, and all the men and women merely AI agents
    22. Re:Firefox is required anyway. by phoenix_rizzen · · Score: 1

      Turn off disk caching. Turn off Safe-whatever feature (it downloads an entire new database everytime you start Firefox). Change the default timeout for writing open tabs to disk. Change the default timeout for updating your bookmarks. Etc.

      There's lots of tweaks you can do to Firefox to make it stop thrashing the disk. It's just too bad these are the defaults. :(

      As for speeding up the browser itself, upgrade to FF 9.0.1 (the latest version). 7 reduced memory usage. 8 increased JS speed (which affects the entire browser UI). And 9 improved it even more.

      It's still not as fast as Chrome. But compared to 3.6, 4, 5, or 6, it's light-years ahead in terms of speed.

    23. Re:Firefox is required anyway. by Prune · · Score: 1

      Download CCleaner and in the Options, go to the Applications tab, and under settings for Firefox/Thunderbird make sure you check the option to "compress databases".

      --
      "Politicians and diapers must be changed often, and for the same reason."
    24. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      places.sqlite (40MB)
      urlclassifier3.sqlite (50MB)

      Looks like the cache folder instantly grew to 50MB again too... the rest is 12MB (ABP) and less (bookmarkbackups, indexedDB and so on).

      Anything sound out of place to you?

    25. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Alright then, I've run CCleaner and defragged (with the regular Windows utility - apparently it hasn't been running as scheduled, because my drives were all fragmented - it's set to run once a week, but last run is November 2011 - WTF?)... now I've installed Defraggler, but can't find the coalescing mode you referred to - or is it maybe just the quick defrag?

      CCleaner and the regular defrag already seem to have helped, though, so thanks for that :)

    26. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Nope, not localstorage - turns out to be the SQL files and cache, mostly... and apparently, a lot of fragmentation. Gotta get that sorted out... trying a few tips from others here on Slashdot (Defraggler, CCleaner database consolidation), and they seem to be working so far.

    27. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Unfortunately, I'm already on 9.0.1 :(

      Any tips on which about:config entries I should be tweaking? What's the easiest way to turn off disk caching entirely? I thought that wasn't even possible in Firefox... that would be pretty much perfect, since I'm running 8 gigs of RAM in each of my machines...

    28. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Just did, and it's already running a bit smoother. Thanks. :)

    29. Re:Firefox is required anyway. by Tsingi · · Score: 1

      XSS, cookies and local storage is where the most privacy concerns crop up. Mostly XSS. I saw no mention of that on the chrome vs iron page.

      That's a good point, but shouldn't those be taken care of in the Chromium source?

      NoScript looks after it on Firefox. I'll have to assume that it goes over each script when it's loaded and looks for external references, or it traps script load requests, which might be easier. I suppose you could write it into the ECMAScript interpreter. In any event, it needs to be there before Iron it can be considered a replacement for Firefox.

    30. Re:Firefox is required anyway. by _0xd0ad · · Score: 1

      Defraggler's quick defrag will coalesce highly-fragmented files, but often does not coalesce large fragments. The seek time over such a fragment is such a small percentage of the entire read time that it's not worth defragging the file any further.

    31. Re:Firefox is required anyway. by jesser · · Score: 1

      Your database sizes aren't much different from mine. My places.sqlite is 73.4MB my urlclassifier3.sqlite (in ~/Library/Caches/Firefox/) is 42MB.

      Firefox stores a lot of history information, including individual visits, in order to provide good predictions when typing into the address bar. I'm not sure which heuristics it uses to expire old history, or even whether it's primarily based on database size or age.

      We could probably stop storing individual visit information if we fixed bug 704025. But I'm guessing that wouldn't shrink the database much, because dates are tiny compared to URLs and titles.

      --
      The shareholder is always right.
    32. Re:Firefox is required anyway. by snemarch · · Score: 1

      Add to that running sqlite vacuum on the various sqlite databases firefox uses, than defragmenting the files - can help a fair amount.

      --
      Coffee-driven development.
    33. Re:Firefox is required anyway. by tibit · · Score: 1

      Quick defrag probably does it too. The way I do it is:
      1. Analyze
      2. In file list, select all files
      3. Defrag

      You'll probably see some files that have thousands or tens of thousands of pieces, and sqlite database(s) owned by firefox should be among them. That's my experience at least.

      --
      A successful API design takes a mixture of software design and pedagogy.
    34. Re:Firefox is required anyway. by bemymonkey · · Score: 1

      Nope, it's an ultraportable.

      For my next device, I"m hoping the Thinkpad X230 (or whatever they end up calling the X220's replacement) will have a full-sized (2.5", 9.5mm height) SATA slot again - that way, I can put my 1TB HDD in there and add an mSATA SSD - hopefully there'll be ~200GB ones out by then.

    35. Re:Firefox is required anyway. by chollus · · Score: 1

      Using the Places Maintenance add-on should be more effective and simpler than installing a separate program (one which installs and sets Chrome as your default browser if you are not careful during installation).

    36. Re:Firefox is required anyway. by afidel · · Score: 1

      Best bet, sync to their online service and create a new profile, it should bring back everything but your addons and their settings.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    37. Re:Firefox is required anyway. by xouumalperxe · · Score: 1

      Firebug does horrible things to your profile. If you're a firebug user, it's advisable to keep separate "with firebug" and "without firebug" profiles.

    38. Re:Firefox is required anyway. by Flammon · · Score: 1

      It's the opposite for me. I use Firefox for development and other browsers to browse. Firebug is the killer addon.

    39. Re:Firefox is required anyway. by Tsingi · · Score: 1

      It's the opposite for me. I use Firefox for development and other browsers to browse. Firebug is the killer addon.

      Yeah, Firebug used to be far and away the best tool for development, but that isn't true anymore, other browsers have similar tools. I find the chrome toolkit works better than Firebug now, or at least the last time I used it.

    40. Re:Firefox is required anyway. by Flammon · · Score: 1

      I also use the new developer tools in Firefox 10 which are very nice.

      http://hacks.mozilla.org/2011/11/developer-tools-in-firefox-aurora-10/

  2. Re:misslabeled linke by bunratty · · Score: 2
    How do you figure that?

    Under a heavy load of 40 tabs, Safari for Windows uses the least amount of memory (just 725 MB). Firefox comes in second at 910 MB, followed closely by Opera at 925 and Chrome at 995. Microsoft's own IE9 uses the most memory (1.75 GB).

    --
    What a fool believes, he sees, no wise man has the power to reason away.
  3. Give us more options by Anonymous Coward · · Score: 5, Insightful

    I have 8gb of memory on my main computer. I want firefox to use up as much of it as it can to improve my browsing experience. On my netbook, I have 1, I want it to sip as little as it can. There should be an easy way to tell the browser how much memory I want used for certain tasks such as caching and whatnot. Addons should have their own seperate allocation, and each individual addon should be configurable for how much memory it can use.

    Free / Open source software is about choices to run things how you want to. With that said, I don't have much room to complain because I've never contributed code to FF.

    My main point though, is that screaming "THE RAM USAGE IS TOO HIGH" is not effective. I have a lot of ram, and I want it to be used, just not wasted; and I want more control over it.

    1. Re:Give us more options by hedwards · · Score: 5, Interesting

      250ish MB or RAM is hardly unreasonable and is significantly better than the alternatives. If you don't like the RAM use with Firefox then you sure as hell aren't going to be happy with the competition. I haven't seen a benchmark or other comparison in a long time where Firefox didn't trounce the competition by a significant margin.

      TFA does raise an important point that the memory consumption problems are mostly with certain add ons. The vanilla install itself doesn't have those issues.

    2. Re:Give us more options by dkf · · Score: 1, Insightful

      I have 8gb of memory on my main computer. I want firefox to use up as much of it as it can to improve my browsing experience.

      No, it shouldn't use any more memory than it needs. Using extra RAM just for giggles is stupid and totally wasteful, especially as the rest of that space could be used for something else. What would that other thing be? I dunno. Maybe an email client, an office suite, an IDE, a photo or video editing suite, or something else. Or even many of them at once. But having to only browse the web because doing anything else is painful... that's just wrong, and it's been wrong for as long as there's been web browsers.

      --
      "Little does he know, but there is no 'I' in 'Idiot'!"
    3. Re:Give us more options by fatphil · · Score: 1

      Hmm, w3m pulls up, for example, cnn.com's front page and uses only 7MB in total, and that includes all images. The content of that page summed to 440KB. Firefox (version old.old) seems to gobble up 200MB for the same page. Personally, I do think that is unreasonable (and 250MB is even worse).

      People are spoiled by having RAM come out of their ears, and don't realise how much wastage and bloat there really is.

      --
      Also FatPhil on SoylentNews, id 863
    4. Re:Give us more options by ledow · · Score: 1

      I'm currently using Opera - Two windows and over 20 tabs open with different fully-loaded "big name" websites in all tabs. Some logged in, some not. Instant access to all my emails dating back to pre-2000 (with instant-narrow searching) covering some 5-6 Gb of email files on my profile (several POP and IMAP accounts all downloaded entirely to the Opera mail client) - which Opera stores as SQLite files, IIRC.

      The same Opera session has been running for about 2 weeks straight, just suspend/resume as I take the laptop from work to home (and it's actually being used for about 16 hours a day for work and personal use, not sitting idle!)

      Memory usage in Windows? 300Mb.

      There's no reason for anything to use Gb's of memory internally. Sure, there's caching etc. but that *can* adjust to the memory left in the PC (i.e. on small PC's, ditch memory cache, on large PC's leave it in memory). Program use, though, loading on common websites even with tons of Javascript - there's no reason to use more than a few hundred megs or so.

      And my Opera *FLIES* when switching tabs etc. and doesn't touch the disk at all. Granted that there are places you can have memory/speed trade-offs but a bog-standard application like a web browser isn't one of them. Read network, interpret, display, forget or remember when tab is closed depending on user preference. That's it. There's nothing complex there at all to suck up memory like Firefox can.

    5. Re:Give us more options by 0123456 · · Score: 2, Insightful

      No, it shouldn't use any more memory than it needs.

      How much memory does it need? I'd much rather that it cached recent pages in RAM than on disk or not at all.

      250MB is nothing on a modern PC with many gigabytes of RAM. My laptop has 6GB, and logged into Gnome with Firefox and another app running the OS is using a whole 900MB, only about half of which is being used by applications. Why not do something useful with the rest of the RAM?

    6. Re:Give us more options by Anonymous Coward · · Score: 1

      The problem is that other people are designing it to allocate that memory according to their own ideas, which are not necessarily better than yours or applicable to your particular use case... The computer isn't self-aware. Yet.

    7. Re:Give us more options by jank1887 · · Score: 2

      Need. What does anyone need? here's the issue. no one cares a hoot how much memory a program needs until you need it for something else. Yes, minimum memory usage is bad when it means your program isn't doing as much as you'd want or like it to do. But, when you set the browser to use a ton of memory, and then need it for something else, how does the computer respond? Few programs can suddenly release a chunk of memory for you because some other program has requested more than is available. If it can, there is lag. Or, heaver forbid, disk swapping. Until memory management is speedy and seamless, there needs to be sufficient available ram for what you might want to do, or you'll be upset when there's a slowdown or hangup. That happy level depends more on the underlying OS than the program, but the program gets to decide how much it wants to try to grab.

      I agree with a previous poster, user comparability makes sense here. Most users would probably miss it, but those who don't could at least make the choice and only blame themselves, and not the program, if things get clunky.

    8. Re:Give us more options by pmontra · · Score: 1

      I remember when a 360 kB floppy disk was considered a lot of space. A 10 MB IBM hard disk was physically big in those days, as large as the main case of the IBM PC it connected to.

      In other news, hard disks are again bigger then computers nowadays - the Raspberry :-)

    9. Re:Give us more options by Seumas · · Score: 5, Insightful

      I have a lot of RAM, too. And Firefox runs like shit. It has for years and I've constantly heard the response of "no, you don't understand! it's just how it handles its back button function! That's why it uses two or three gigabytes!". I have 16gb on my primary system, so it can certainly use a few gigs if it really wants to. The question is - does it need to? More importantly, how does it perform when it's using so much RAM? That is the real problem.

      For years, I have put up with the experience of Firefox slowly grinding to a crawl. Within hours (certainly within a day at the most), it reaches 2.5gb or more memory usage and becomes unusable. Almost every action - typing, scrolling, clicking a button, entering a URL, clicking a link - causes it to hang temporarily. Sometimes for almost a minute. Click a tab. Hang. Scroll to the bottom of the page. Hang. Type in the text box. Hang. Submit. Hang. Close tab. Hang. Terrible experience.

      And, I stuck with it. Restarting the browser every few hours just became part of the experience (starting around early 3x, I believe). I primarily stuck with it, because I love Firefox and have used it forever. And Mozilla before that. And Netscape before that. Part of that is that I cut my teeth as an engineer at Netscape when I was young. It was my first real job. So I had a particular affinity for it, always. Besides, eventually they'd fix the issues. Even though they went forever claiming there weren't any memory issues . . . until sometime recently (last year, I think?) when there finally seemed to be acknowledgement of it.

      Most of all, I like having the access to extensions. Primarily, adblocking extensions. And then the tree tabs extension. And then panorama/tab candy was built into 4x. I tried Chrome several times, but their shitty handling of many tabs was terrible. I couldn't tolerate it. Firefox did it beautifully.

      And then, I finally got fed up. After all those years and all the delaying and all the excuses I made for Firefox, I decided a couple months ago that I would go full time Chrome and just see what it was really like. The result? I'm sold on Chrome, now. I can't believe I'm saying this, but I am. I never have to restart due to it behaving slow. I never have to restart due to it using too many resources. I never have it beach-balling for a minute at a time for every action I do. I never have Windows telling me the application has stopped responding. It just works.

      And here's the thing. It uses just as many resources, sometimes. Just like Firefox, I sometimes find it using as much as 3gb of memory. But where Firefox would start grinding to a halt around 1.5-2.5gb of usage, Chrome just keeps smoothly chugging along under as much as 3gb (and possibly more, but it never has used more than that, so I don't know).

      So, we can make all the excuses we want for Firefox. When it comes down to it, what matters is that my browsing habits cause Firefox to perform fucking terribly, while Chrome doesn't flinch. And when it comes down to my time and sanity, I need performance; not excuses.

    10. Re:Give us more options by TheRaven64 · · Score: 5, Informative

      I want firefox to use up as much of it as it can to improve my browsing experience

      RTFA. When FireFox has an off-by-one error in its JavaScript string concatenation code that causes it to allocate twice as much memory as it needs for JavaScript strings, it's not using memory to improve your browsing experience, it's just using memory. When FireFox is storing decompressed images in memory that never actually make it to the screen, it's not using memory to improve your browsing experience, it's just using memory.

      Most of the techniques in TFA were of general interest to anyone working on a large project, not just to FireFox.

      --
      I am TheRaven on Soylent News
    11. Re:Give us more options by 93+Escort+Wagon · · Score: 3, Informative

      Listen up, young'un - I remember when we bought a 10MB hard disk for our lab's HP1000 mini-computer back in the early 1980s. That thing was the size of a dishwasher.

      --
      #DeleteChrome
    12. Re:Give us more options by iMadeGhostzilla · · Score: 2

      I wish each tab had a flag "this tab is important -- don't release memory allocated with this tab if not visited for a while." Most of my browser memory is wasted on tabs that I didn't bother to close even though I'm not coming back to them.

    13. Re:Give us more options by thereitis · · Score: 1

      I want more control over it That's the key point. Use more RAM, it's faster but there's less available for other applications. Use less RAM and it's slower but there's more available for other applications. It's a tradeoff, like most things, and the user should be in control of that tradeoff.

    14. Re:Give us more options by hedwards · · Score: 1

      Yes and I remember starting out on computers where I would have killed to have even the 1.44MB capacity of a High Density 3.5" floppy. Of course that was over 25 years ago and I'm not sure what relevance this has when you have to look hard to buy a computer with less than a gig of RAM. Handhelds and phones not withstanding.

    15. Re:Give us more options by hedwards · · Score: 1

      Yes, and I bet if I went back to using Lynx I could probably get RAM consumption under 1MB. The point is that of the browsers that people are likely to use, Fx tends to do a lot better than the competition.

      It's trivial to create a low RAM browser if you don't implement anything beyond that absolute bare minimum.

    16. Re:Give us more options by tlhIngan · · Score: 1

      I have 8gb of memory on my main computer. I want firefox to use up as much of it as it can to improve my browsing experience. On my netbook, I have 1, I want it to sip as little as it can. There should be an easy way to tell the browser how much memory I want used for certain tasks such as caching and whatnot. Addons should have their own seperate allocation, and each individual addon should be configurable for how much memory it can use.

      You can adjust the disk and memory caches on firefox still.

      The problem firefox had with gobbling up RAM was poor RAM utilization. When firefox gets swapped out, swapping it back in (intentionally or accidentally bringing up the window) causes the disk to start churning for minutes before something gets drawn, then churn for more minutes as it then draws tabs, then maybe 5 minutes later the current tab pops up.

      Efficient use would mean the current tab shows after a brief page in and it's practically usable (if a touch slower as it brings pages from swap). As it is, it appears that firefox needs to page itself in its entirety (its working set is much too large) before becoming responsive.

      This is especially evident on Windows, where you can see it page in practically 4kiB at a time.

      Or, you could just get an SSD.

      People want efficient use of memory - which makes hitting swap bearable. And unfortunately, it's the old systems and low end ones that suffer most.

    17. Re:Give us more options by pmontra · · Score: 1

      Damn, I only saw some HP mini computers at the *end* of the 80s but their hard disks were really the size of dishwater. I don't remember their capacity tough.

    18. Re:Give us more options by Belial6 · · Score: 1

      Ahh the good old days. When saving your program meant you wrote down your hex on a sheet of paper so that you could type it in again the next time you wanted to run the program. I do have to admit that I did avoid punch cards. I predate magnetic media, but was too young to have access to punch-card readers prior to the magnetic media hitting the streets.

    19. Re:Give us more options by Anonymous Coward · · Score: 1

      Yeah, or the good old days when this kind of thread always degenerated into the four yorkshiremen. Those were the days.

    20. Re:Give us more options by Belial6 · · Score: 1

      I regularly hear these stories about how Firefox grinds to a halt if it is left open. I am not the type to load lots of windows, and I shut down the browser when not using it, but my son on the other hand leaves his browser open for weeks at a time, with various flash games running the entire time. He never has these slowdowns or crashes the other people regularly report. Not with Firefox. Not with Flash.

    21. Re:Give us more options by hedwards · · Score: 1

      Interestingly enough, I still know of at least one datacenter around here that still uses those oldschool tape machines with the huge reels that you sometimes see in old movies.

      But, really none of this is particularly relevant to the notion that a browser uses over 200MB of RAM.

    22. Re:Give us more options by webheaded · · Score: 2

      I wish I could give you like a million mod points for this. I don't know if it's the memory usage or what, but Firefox just runs like shit all the time now. I had a Quad core (Q6600) and 4gb of RAM. There is no sane reason that Firefox should hang and run like shit all the time. I honestly don't care how much memory it uses but it's the fact that it runs like SHIT. You have the exact same experience I do: it hangs all the time. On everything. For no reason...like I'll open a new tab, start to type an address and it HANGS. I load up a website, tab freeze, entire browser becomes unresponsive and I just have to sit and twiddle my thumbs while it works it out.

      You even started using Chrome around the same time I did. The interface is like...lightyears ahead of Firefox. I too had previously tried Chrome and not really liked it much, but the slower and slower Firefox got, the more I really took a liking to Chrome. My favorite thing? A website is loaded up with every script on the Planet Earth (eg: Slashdot) and the tab starts to freeze. Solution? Click another tab and do something else while that issue sorts itself out. On Firefox? Sit and wait...hope the browser comes back and doesn't crash. This was one of the most jarring differences for me. The browser interface itself is ALWAYS usable. I can ALWAYS switch to another tab and I can ALWAYS get to the address bar and menus no matter what is happening. I don't know what is so different in Chrome that it is so much faster and usable in general...but Firefox needs to get with the program. I'm hoping that Firefox does what they say they were going to do and separate the browser process from the tabs. That one thing I think would improve Firefox performance across the board because it doesn't matter how fast your page loads are if the browser interface is constantly freezing and hanging.

      My one sore loss are the extensions. There are many alternatives but a lot aren't QUITE as good. The best example is ad block. It doesn't block video ads properly anymore like the Firefox version does. They've been improving a bit but at the moment it ONLY seems to block Youtube or if it does block somewhere else, it just breaks the video player. I am however happy to report that a vast majority of the extensions I used in Firefox are either ported to or have an equivalent in Chrome. The only thing I could not find a replacement for is DownThemAll...which sucks because I REALLY love that extension. :(

      --
      "Those who would sacrifice essential liberties for a little temporary safety deserve neither liberty nor safety." - BenF
    23. Re:Give us more options by gbjbaanb · · Score: 2

      I think the big deal here is that memory was wasted, and the guy has done his profiling and tooling and has reduce the wastage dramatically.

      Good job that man.

      However, in general, apps that use lots of ram are bad for you - you may have 8Gb, but if it uses all that, your whole system is going to be slower simply because all the data is being sloshed around inside your PC. The days where more ram = fast PC is gone, today your CPU cache is the new bottleneck that turns your screaming-fast 3ghz processor into a tapping-its-fingers 3ghz processor as it waits for the memory to be shuffled over the bus. Using more ram is often just sloppy programming anyway, which is why a lot of people take issue with it (and, of course, if you try to run 2 huge memory hogs at the same time....)

      Anyway, Firefox uses less memory, there's a great article explaining why and I'm happy.

    24. Re:Give us more options by kyrio · · Score: 1

      You forgot to point out that Opera not only uses the least amount of resources while being the fastest, it also has EVERYTHING running and installed by default. Ad blocking, tabs, flash blocking, script blocking, developer tools, mail, IRC, feed reader, completely configurable UI, themes, full control of the browser with opera:config, and the list goes on and on. On top of having all of this running, it's also brought most of those things to the market, long before these other browsers even existed.

      It's just funny that everyone tries so hard to ignore Opera. If it wasn't for the Opera developers, we'd still be using IE and Netscape. It also helps that Opera controls a massive chunk of the mobile browser market.

    25. Re:Give us more options by forkazoo · · Score: 2

      I have 8gb of memory on my main computer. I want firefox to use up as much of it as it can to improve my browsing experience.

      I have 16 GB on my main system, and I don't want Firefox sucking up all my RAM. Firefox devs seem to miss a few key points about what I think is a very common usage model: A - Browsing is not my primary Application. (For me, it's graphics software. Other people may have MS Office or an IDE.) B - Browsing is the one app where I never want to lose state. (I'm willing to close my compositing app from time to time to free up resources for other things because it is my "Primary" action. I'm either doing it or I'm not. I can close it down between sessions and open the one document I was working on when I get back to it. The Browser should be "always there," because it has stuff like my gmail, and I want to see new mail come in. It also has dozens of tabs of unfinished reading because, again, browsing isn't my primary activity so whenever something comes up, I leave it quickly and come back to it in downtime.) C - I will have multiple browsers open at any given time. (On Windows, I may need IE for an intranet thing. For me, I usually have FF + Chrome so I can be signed into work and personal google accounts at the same time. So,w ahetever RAM is a reasonable allocation for browsing, Firefox should take less than a third of that.)

      So, even if browsing would be slightly improved by filling up tens of GB's of RAM with cached nonesense, I never actually want that to go to Firefox. I want Firefox to stay as conservative as possible so that I can comfortably leave my dozens of tabs open while I usu an app that's actually important, and then come back to them without losing the "mental state" of what I was reading on IMDB and wikipedia and my google searches about potions to make somebody fall in love with me, or whatever the hell I was doing.

    26. Re:Give us more options by KingMotley · · Score: 1

      Well I just came back to work this morning and my machine was running super slow. I left firefox running over the weekend. Had about 5 tabs open, and 4 more I have set as "App Tabs". It was hitting the disk pretty hard, so I checked to see what was eating up all my memory, and firefox was eating up 2.7GB of ram out of my available 3.5. Kill firefox, and system immediately speed up. Restart firefox and let it reload the tabs it had open, and it's only using 637MB of ram. Nice memory leak somewhere.

    27. Re:Give us more options by tibit · · Score: 1

      As for image decompression, I'd personally want it not to decompress anything that's not displayed. After all, you don't need to decompress just to know how big an image is. When you start scrolling around, it can figure out what images will be visible, for potentially how long, and how soon, and it can make decisions based on that. If I'm scrolling over some text with images, it'd be OK if the images don't appear for very short time as I scroll over them. Methinks that decompressed image cache should trade off memory for CPU usage, most machines are fast but short on memory methinks.

      --
      A successful API design takes a mixture of software design and pedagogy.
    28. Re:Give us more options by Teckla · · Score: 1

      I have 8gb of memory on my main computer. I want firefox to use up as much of it as it can to improve my browsing experience.

      I don't, because I do other things on my computer, too. If any given application is using all the memory it possibly can, the rest of the system will behave more poorly as a result. Once you start swapping, your performance drops like a rock.

    29. Re:Give us more options by metrix007 · · Score: 1

      I find Opera all but unusable, because it is too often different for the sake of being different.

      --
      If you ignore ACs because they are anonymous - you're an idiot.
    30. Re:Give us more options by BitZtream · · Score: 1

      Communicating with Mozilla developers is pretty much not effective no matter HOW you try to do it. Where have you been the last few years? They just wonder around starting new halfassed projects for no reason, then not fixing those bugs, instead choosing to rewrite it or something else ... again.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    31. Re:Give us more options by schlachter · · Score: 2

      Damn it. I want my memory used! I didn't buy 16GB to have it just sit around inside my machine. What do I care about the details?! Bring it on Firefox!

      --
      My God can beat up your God. Just kidding...don't take offense. I know there's no God.
    32. Re:Give us more options by Malvineous · · Score: 1

      Agree completely. I too have a Q6600 but with 8GB RAM and still Firefox slows down within a couple of days (version 11 here, the Aurora test version.) I couldn't use Chrome (the interface was too spartan) but the way the Firefox UI is going it probably won't be long until they're indistinguishable, then I will switch.

      To be fair, I think some addons can cause this problem, and I know the session-saver struggles with the number of tabs I tend to have open. Annoyingly the back button is always pretty responsive, but I would much rather have a slow back button and a fast rest of the browser. And definitely you hit the nail on the head re separate processes for each tab. Having one slow tab take down the whole browser is *really* annoying under Firefox.

      Shame Mozilla insist on copying all the useless UI features from Chrome, instead of the actual features like this that would make a big difference to the overall quality of the browser.

    33. Re:Give us more options by Beetle+B. · · Score: 1

      Bullshit.

      I bought my 20 MB HD for my 8088 IBM in the early 80's. It fit quite well into the computer.

      --
      Beetle B.
    34. Re:Give us more options by smash · · Score: 1

      I have 8gb of memory on my main computer. I want firefox to use up as much of it as it can to improve my browsing experience.

      Why? I have 8gb in my machines as well, which i use for ... y'know... getting shit done. Like virtual machines, games, other stuff. If your RAM wasn't being hogged by FIREFOX it could be used by the host OS as buffer cache, to much the same effect, except it would benefit ALL applications, and not just your web browser. Besides, this isn't about firefox using memory to perform better, it had (probably still has) a large number of bugs where memory was simply WASTED for no gain at all.

      I don't care if i'm using a box with 2gb RAM or 192gb of RAM, wasted memory is still wasted.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    35. Re:Give us more options by Randle_Revar · · Score: 1

      There is definitely something weird going on in cases like that. OS issues, bad extension usage, something. I have to get upward of 400 tabs across multiple windows before encountering any problems even close to that, in both SeaMonkey and FF.

      Standard usage for me is 50-150 tabs, usually up for 2-4 days, maybe a week (several weeks at a time when I tracked the nightlies manually instead of with the autoupdater), no problems at all... Although this is on Linux. Seems like more (but not all) of these problems come from Windows users.

    36. Re:Give us more options by smash · · Score: 1

      I'd much rather that it cached recent pages in RAM than on disk or not at all.

      Why? Any half modern OS will do the disk caching FOR YOU with the free ram not used by firefox. Which will benefit ALL applications accessing that resource. Such as your AV scanner, your video streaming application, etc.

      Storing un-necessary shit in RAM (basically, doing your own ondisk storage caching rather than letting the OS do a better job of it) is the type of boneheaded web "developer" thinking that has caused the steaming pile of shitware we currently endure on the web.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    37. Re:Give us more options by Belial6 · · Score: 1

      My son runs on Windows, so I don't think it is a Windows thing. I can't say that the problem reports are made up, but we have all seen it happen. I'm not convince that we are not seeing that here.

      I have to ask though, how useful can 150 tabs open be? It seems like the amount of effort required to find the tabs would take as much time as just opening the page. Are those pages running active content, and that is why you keep them open?

    38. Re:Give us more options by 93+Escort+Wagon · · Score: 1

      Do some Googling for the HP 7906A hard drive, cabinet version - although it was 20MB rather than 10, I was misremembering that.

      Here's a relevant link from the HP Computer Museum. On that page there's a link to an ad for the HP1000 computer plus the disk drive - the disk is on the left.

      --
      #DeleteChrome
    39. Re:Give us more options by Ramin_HAL9001 · · Score: 1

      My main point though, is that screaming "THE RAM USAGE IS TOO HIGH" is not effective. I have a lot of ram, and I want it to be used, just not wasted; and I want more control over it.

      I agree with you, but that is really, really hard to implement. The best way I could think to control memory usage is to allow the garbage collector for the JavaScript engine and page rendering engine to be tuneable, collecting less frequently and caching just-in-time compiled code more often and for longer periods of time when you have lots of memory to spare.

      But fooling around with those parameters requires a lot of experimentation and analysis of empirical data, and it is tough to make it work the same across all platforms. In the end, it is just one more choice that the majority of users don't care about, so its easier just to make it as memory-efficient as possible, and let the CPU work harder.

    40. Re:Give us more options by AmiMoJo · · Score: 1

      Reducing the amount of memory Firefox uses has resulted in some pretty severe performance regressions. The worst one by far is the way image decoding in the background is now deferred until you actually view the tab. Where as before if you opened a background tab it would be rendered and waiting for you when you switched to it under the new system you have to watch it slowly decode and render every time. Even on my quad core it is annoyingly slow.

      The obsession with memory usage has really harmed Firefox's performance.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    41. Re:Give us more options by AmiMoJo · · Score: 1

      When FireFox is storing decompressed images in memory that never actually make it to the screen, it's not using memory to improve your browsing experience, it's just using memory.

      The problem is that if the images do make it to the screen you have to sit there and watch them render as the browser stutters away. I'd rather just use the ample memory that my system has so it doesn't waste my time.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    42. Re:Give us more options by Randle_Revar · · Score: 1

      I just like them better than bookmarks for a lot of semi-temporary stuff
      And they are split across 4-5 windows, and about 30 tabs are onscreen at once, so as long as a site has a good favicon, it is fine

    43. Re:Give us more options by AmiMoJo · · Score: 1

      Few programs can suddenly release a chunk of memory for you because some other program has requested more than is available. If it can, there is lag.

      Browsers are in a very good position to release chunks of memory on demand. Data is cached on disk anyway and background tabs can be flushed and reloaded easily. They should be able to use lots of memory but yield on demand, however and obsession with memory use numbers prevents Firefox from doing that.

      As for lag, there isn't any. The OS has to wipe the memory before handing it over anyway, so the only overhead is asking the browser for some RAM which is minuscule.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    44. Re:Give us more options by kangsterizer · · Score: 1

      Now then again I've never had a terrible experience like that with Firefox (neither with Chrome in fact, even thus both crash sometimes - Chrome noticeably more often - but its easier to recover most crashes by a tab reload, Firefox crash like twice a year). Then Chrome is actually slightly slower for some things, and still vastly faster for some other things (either that or things are Chrome optimized)

      Anyhow, first of all the "there's no memory leak" has:
      1/ often been true as it is very often the extensions causing it - until Firefox 4 - and guess what, they acknowledge it there, and worked on it.
      2/ what "Mozilla" says is usually what 1 single developer says, because Mozilla does not really have much "official" declarations. This one and many other were. Like the "dont care for entreprise" thing. If one lone dev from another company says something wrong, everyone understands. Odd.

      Secondly, Chrome uses different processes not just for tabs, but also for the UI (and the rendering and java, etc). While this eats up memory like there's no tomorrow, its very good for reactivity.
      Firefox simply does not do that. Then again, they're working on it too, but I fear this one will be too little too late.

      On Android however, where it seems they put a lot of resources, this went fast.
      Firefox went to multiprocessing model (one per tab + one for UI) and it is pretty good, response is always instant (like Chrome) - yeah but - it uses a lot of memory - and needs to load it's own libraries which it has a lot of - and which is slow on Android, because, the storage ain't that fast.

      Firefox then went to the Android's "Native" UI which is basically Android Java UI that asynchronously talk to Gecko, Firefox's engine. No more "one process per tab". No more memory wasted. It's also faster than the multiprocess model on really slow hardware (yep - you'll notice the Android webkit browser also do not have multiprocess).
      But also, as it's full async, since the UI has been written from scratch, it's just as responsive as the multiprocess model. Doesn't block. Ever. Like Chrome.

      On the bad side, most extensions are incompatible, but then again, extensions weren't compatible on the first Firefox for Android either. They don't all need a full rewrite, just an API to call the new native UI stuff.

      Hope that clears up the misconceptions.

    45. Re:Give us more options by Seumas · · Score: 1

      No, I continued using Firefox up to 9.0.1 as well as using the 10 beta a bit. I've seen no improvement in this long term behavior. If Firefox could resolve this and achieve the stability and performance I'm seeing in Chrome, I would gladly return to it, again. I'm not a fan of the extensions - in general - in Chrome. They are usually more limited, less feature-rich, and a lot of them are just too damn gimmicky. My biggest complaint on Chrome remains the terrible tab extensions. They are all so clumsy and useless. I don't know why there isn't a near duplicate of Panorama (now a Firefox built-in feature) or a Tree Tabs extension. The lack of that is what kept me living with Firefox for so long. It really took a lot for me to finally decide that the improved tab handling of Firefox was no longer enough compensation for the performance.

      There are plenty of attempts to justify Firefox. Or, plenty of explanations, at least. But when it comes down to it - why Firefox grinds to a halt is irrelevant. I can have plenty of tabs open on Chrome. I can leave it open for a very long time. I can use plenty of extensions. And it still works smoothly. That makes it a little unreasonable to just scapegoat those things for Firefox's sake.

    46. Re:Give us more options by Seumas · · Score: 1

      Usually about one to three dozen tabs open. Sometimes a few more. Across two or three tab groups. About four tabs as "pinned apps". Firefox runs beautifully right after launching, but becomes progressively worse. Same usage on Chrome has never been a problem, so far. I have never had to restart Chrome due to performance and it has never (so far) crashed on me.

      Firefox, on the other hand, has produced very similar behavior as I have described for years across countless machines and multiple operating systems. On the several versions of Macbook Pros I've had over the last five years, my dual quad core Mac Pro, my windows machines under XP, Vista, and 7. On freshly built machines. On old machines. Even in VMs. The only place I haven't encountered it is on linux or Solaris and that's because I don't use Firefox on those, anyway.

      And, in the end, what is relevant is that I browse the same way in Firefox and Chrome. I have identical extensions in Firefox and Chrome. I use them on the same operating systems and the same machines. And one becomes slower, until it hangs repeatedly or crashes or has to be restarted just to be usable again and the other has never had to be restarted due to performance issues.

    47. Re:Give us more options by gullevek · · Score: 1

      I have exact the same experience. And like you I switched to Chrome and asked myself why I didn't do this earlier. The only reason I have FF still running at work is fore developing and testing. But at home I am 100% Chrome.

      --
      "Freiheit ist immer auch die Freiheit des Andersdenkenden" - Rosa Luxemburg, 1871 - 1919
    48. Re:Give us more options by jesup · · Score: 1

      Bingo.

      Memory use climbing like that is almost certainly a problematic (leaky) extension. Check out the tail end of Nicholas's slides for the list of the top leaky extensions, which includes/included AdBlock+, LastPass, etc. Once you get near 2.2 or so GB on WInXP the OS starts freezing you for longer and longer as it twiddles page tables and the like, eventually freezing you for more than 30 seconds. (watch user vs system CPU when it freezes).

      One other surprising source of a slow browser: Huffington Post. Their pages have a Twitter feed display which progressively slows down your browser, since it keeps adding more data to the scrolling list of tweets. Never leave a HuffPost page up (with a common hashtag for the search, at least).

      I can (now) run for weeks with a browser with 850 tabs (though only 50-150 of them loaded, normally).

    49. Re:Give us more options by kyrio · · Score: 1

      That's nice.

    50. Re:Give us more options by TheRaven64 · · Score: 1

      And, if you RTFA, it talks about tuning the heuristics involved and improving the memory usage without adversely impacting user experience.

      --
      I am TheRaven on Soylent News
    51. Re:Give us more options by AmiMoJo · · Score: 1

      My point was that it doesn't work.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    52. Re:Give us more options by Xest · · Score: 1

      It was using 1gb for me yesterday with 17 tabs open.

      I don't really know how they can claim it's the most memory efficient like this, IE, Opera, Chrome, all use much less, and perform much better, and this is Firefox 9.0.1.

      Granted it's been better in general recently, but the last few days it's got bad again, 9.0.1 seems to be a broken release or something as I've had other bugs too - i.e. open tabs being completely lost when reopening the browser without even the usual recover tabs page, and despite the browser being set to open the tabs I had open last time. It is of course hard to tell when the change happened, because versions are being thrown at us so thick and fast, and in a way you often don't even notice that you struggle to draw a line as to at what change things started screwing up.

      Perhaps as you say it is an addons issue, but if the most prominent addons like AdBlock and Firebug (as that's all I have installed) can completely and utterly mess up the browser then there's still something very wrong with it.

    53. Re:Give us more options by _0xd0ad · · Score: 1

      One other surprising source of a slow browser: Huffington Post. Their pages have a Twitter feed display

      You use AdBlock+ for that.

    54. Re:Give us more options by Flammon · · Score: 1

      I don't know what is so different in Chrome that it is so much faster and usable in general...but Firefox needs to get with the program.

      Chrome has a multi-process architecture.

      http://blog.chromium.org/2008/09/multi-process-architecture.html

      Firefox does not but they're working on it.

      http://blog.mozilla.com/products/2011/07/15/goals-for-multi-process-firefox/

      They originally planed to implement a multi-process architecture with the Electrolysis project but they've since put it on the back burner.

      http://lawrencemandel.com/2011/11/15/update-on-multi-process-firefox-electrolysis-development/

    55. Re:Give us more options by seantide · · Score: 1

      When I hear people say that, I just have a hard time believing them. Everyone I've met who said that and could show me, failed to demonstrate it in person. That doesn't mean you aren't doing it, maybe you are, but I'd be surprised and I want to know how.

      Every single tab I open eats a ton, like 20, 50, 100MB or more at times. I don't see how you could have 100+ tabs open.

      Its not just Windows either, I have the issue on Linux, Windows 7, and MacOS Snow Leopard and have for years. WIth and without any extensions loaded.

      If you can do this, then there has to be some discoverable thing different in your setup verses others. Maybe we need to start a project where people save their tabs and share the file and we start doing some serious methodical testing to find out what is different among systems and setups that can or cannot handle it.

    56. Re:Give us more options by seantide · · Score: 1

      I don't think this logically follows.

      Letting Firefox memory usage grow excessively killed the performance on my system, and the stuff you complain about here are one of the only reasons I can even run it.

      I don't see an obsession with memory usage, I see an obsession with just not fixing it. It has to be a solvable problem, even though a good bit of it is not precisely Firefox's fault.

    57. Re:Give us more options by williamfrench4 · · Score: 1

      I'm on Linux and I suffer from it rather badly. If the browser runs more than 2 days or so it becomes unusable with 5-second pauses. However, it usually doesn't get that far because it crashes first.

      --
      There is no force, however great/Can stretch a cord, however fine/Into a horizontal line/Which is absolutely straight.
    58. Re:Give us more options by justthinkit · · Score: 1

      Such a long comment, so much memory available/wasted (16GB!), 5 mentions of Chrome and yet still so much suffering. I guess you are stuck without a solution.
      --
      This post written in Opera

      --
      I come here for the love
    59. Re:Give us more options by Randle_Revar · · Score: 1
      Pics or it didn't happen, eh?

      144 tabs:
      window 1 (74 tabs):
      http://www.clowersnet.net/~krc/img/screenshots/2012-01-19-091409_1920x1200_scrot.png
      http://www.clowersnet.net/~krc/img/screenshots/2012-01-19-091435_1920x1200_scrot.png

      windows 2-4 (31, 20, 19 tabs):
      http://www.clowersnet.net/~krc/img/screenshots/2012-01-19-091448_1920x1200_scrot.png
      http://www.clowersnet.net/~krc/img/screenshots/2012-01-19-091503_1920x1200_scrot.png
      http://www.clowersnet.net/~krc/img/screenshots/2012-01-19-091515_1920x1200_scrot.png

      Just restarted (session restore on, obviously):

      PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
      23086 krc 20 0 2595m 1.9g 46m S 18.0 23.8 18:29.77 seamonkey-bin

      It previously had been up for about four days (well, suspended (S3) at night and while at work), and was something like 3.3 GB and 2.5 GB virt and res I think. Doesn't get a lot higher than that unless testing like 300-400 tabs, at which point things start to fall apart...

  4. Firefox's problem by TheLink · · Score: 5, Insightful

    In my experience Firefox (minus plugins etc) has leaked/used less memory than Google Chrome.

    BUT, when a plugin/page starts leaking lots of memory the difference is with Google Chrome you can close the offending tab/window and the memory is freed up. You don't lose your sessions, don't lose your place on other tabs/windows. You can even reopen the page (esp if the page just slowly uses more and more memory).

    In contrast with Firefox you often have to close the entire browser to free up the memory. And IMO that's Firefox's biggest problem when it comes to memory.

    It doesn't matter how much better Firefox is on its own at memory management, in practice many people using Firefox are using it because of the plugins (otherwise they'd be using some other browser), and the plugin developers may not be so good at memory management.

    --
    1. Re:Firefox's problem by hedwards · · Score: 3, Informative

      It depends which ones you're talking about. Some of them are already in their own separate process and you can kill those processes without having too much trouble. The bigger problem right now is all the freezing that goes on. I'm not sure what the problem is, but it gets a lot worse when I also have thunderbird open.

    2. Re:Firefox's problem by Anonymous Coward · · Score: 1

      You may be interested in following/helping the Snappy Project.
      A couple of things in particular to track the progress of are off-main-thread compositing and re-architecting session storage.

    3. Re:Firefox's problem by DrXym · · Score: 1

      Plugins run as a separate process to Firefox now, so if it leaks you can kill the plugin container. You could also close the tab if it's responsive and clean up.

    4. Re:Firefox's problem by olau · · Score: 4, Informative

      It doesn't matter how much better Firefox is on its own at memory management, in practice many people using Firefox are using it because of the plugins (otherwise they'd be using some other browser), and the plugin developers may not be so good at memory management.

      Actually, the presentation addressed that. They're going to add a notice to known bad add-ons at the Mozilla add-on page (social engineering), and also add a basic leak test to things done by the reviewers.

    5. Re:Firefox's problem by mapkinase · · Score: 1

      >In my experience Firefox (minus plugins etc) has leaked/used less memory than Google Chrome.

      I corroborate with that. Recently I got tied of Firefox and decided to try Chrome. I have got less memory usage per instance but instances open, so in sum, Chrome ends up with more memory usage. First thought that comes to mind is that with new tab - new thread/processor iedology one might bring unnecessary overhead into play. I suspect that Firefox does it only for pages which require plugins (runs its plugin-container thing).

      I also prefer FF's stage approach to page display, while Chrome seems to be hanging, then brings the final page.

      --
      I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
    6. Re:Firefox's problem by mapkinase · · Score: 1

      I do not know a way to identify which plugin corresponds to which tab. Usually, if you have a video running, it's instance of a plugincontainer take the most CPU, but as for the rest - no idea who is what. Also sometimes there are 20 or so of them (don't die gracefully) and need to be killed one by one tediously.

      --
      I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
    7. Re:Firefox's problem by hedwards · · Score: 1

      I probably should have been more clear about that being plug ins rather than extensions.

    8. Re:Firefox's problem by Migala77 · · Score: 1
      Firefox developers have been claiming that plugins were to blame for a long time (and for some FF versions they may have even been right, judging from TFA). However, there was no way to do something about it, or even just find out which plugin was the problem. TFA finally gets this:

      Although these leaks are not Mozilla’s fault, they are Mozilla’s problem. Many Firefox users have add-ons installed -- some people have 20 or 30 or more -- and Firefox gets blamed for the sins of its add-ons.

      Now they are going to improve reviews and make it possible to mark add-ons as memory-hogs / -leakers.

    9. Re:Firefox's problem by TheLink · · Score: 1

      Sorry I was using the wrong term, should be add-ons. The other add-ons like extensions don't run as a separate process and they're often the ones that cause Firefox to leak more.

      Remove/disable the extensions and Firefox leaks less, but then you might as well use Chrome :).

      --
    10. Re:Firefox's problem by makomk · · Score: 1

      Well, on Chrome as far as I've seen your only option is to kill the plugin for all tabs anyway - they don't have per-tab instances of plugins - so does it really matter which it is?

  5. i'll do my own tests by EponymousCustard · · Score: 1

    i won't be taking TomsHardware's word for it since I run Linux and they didn't even bother testing with it. but it does motivate me to perform my own checks. memory usage and sluggishness were the reasons i ditched firefox for chromium last year.

    1. Re:i'll do my own tests by Anonymous Coward · · Score: 5, Insightful

      Yeah, most of the improvements were in the last 4-6 months.

      Anyone else get tired of this... "blah blah, my favourite open source browser wasn't competitive with the commercial product by an ad agency that records every keystroke I type in the URL bar a long time ago, possibly due to some addons I was running, so I just completely gave up on it and whenever a story comes up on how it has improved, I just state how it sucked at some time in the past and I'll never try it again"?

    2. Re:i'll do my own tests by fatphil · · Score: 1

      However, I also don't trust the Firefox developers because after several years of being accused of being memory hogs, and every single time staunchly denying it, brushing off such issues by saying they were "features" like "caching", they finally admitted they were in the wrong. When you've lied so many times, why should anyone trust you any more?

      Again, as from your perspective, that motivates me to perform my own checks. However, if they don't provide a ready-built linux/ppc64 .deb with correct dependencies, I'm certainly not going to be bothered. "I've got a girlfriend and things to get done..."

      --
      Also FatPhil on SoylentNews, id 863
    3. Re:i'll do my own tests by PybusJ · · Score: 1

      I've been running recent firefoxen on 64 bit Ubuntu with over 340 open tabs. It used over 1.5Gb RAM, but that seemed reasonable in the circumstances. Chromium failed entirely with a fraction of the tabs.

      On the other hand, I did find a firefox extension a couple of months ago which managed to leak over 1Gb/day (I'm afraid I can't which it was).

    4. Re:i'll do my own tests by brunogirin · · Score: 1

      I haven't tried that many tabs but I have also been using FF on 64 bit Ubuntu: it starts virtually instantly and is a lot faster and leaner than previous versions.

    5. Re:i'll do my own tests by Thud457 · · Score: 4, Funny

      with over 340 open tabs

      I think it's time for PybusJ to admit he has a pr0n problem...

      --

      the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff

    6. Re:i'll do my own tests by gparent · · Score: 1

      Maybe you should learn to report bugs. Because hundreds of thousands of people are running the browser with no issues.

    7. Re:i'll do my own tests by pmontra · · Score: 1

      Amazing. How do you manage all those tabs? I bet there are desktop environments that crash with a fraction of that number.

    8. Re:i'll do my own tests by Muerte2 · · Score: 1

      I wish I could mod this up +1000

    9. Re:i'll do my own tests by Belial6 · · Score: 1

      Was this just to see what would happen, or are you actually using 340 tabs. I hear about people running huge numbers of tabs, but I would think that over a certain number of tabs, the time you would save by having the page preloaded would be dwarfed by the time spend trying to find the tab in the mess tabs.

    10. Re:i'll do my own tests by Beelzebud · · Score: 1

      When you're up to 340 tabs, it's time for some bookmarks. There is no chance in hell you regularly use 340 tabs. If you do, you are the .0001%, and it's time to start coding your own browser because you have needs that no one else does.

    11. Re:i'll do my own tests by _0xd0ad · · Score: 1

      Sometime after Firefox 3, it got a tab grouping feature

      Built-in boss key: Ctrl-`.

    12. Re:i'll do my own tests by schlachter · · Score: 1

      The internet's for porn. (Avenue Q reference)

      --
      My God can beat up your God. Just kidding...don't take offense. I know there's no God.
    13. Re:i'll do my own tests by thereitis · · Score: 1

      You just mentioned that you use addons at work - it could very well be those addons are making Firefox crash or randomly lock up. If not, you could try creating a new Firefox browser profile. Curious why you chose Chrome over Opera, though.

    14. Re:i'll do my own tests by sakti · · Score: 1

      I dumped FF because they kept breaking all my plugins. I used it primarily for the plugins, yet they broke half of them ever release (versions 4-6). I keep waiting to hear that they created a stable API for plugins to use but have yet to hear about this. Do you know if they've addressed this.

      And using Chrome doesn't necessarily mean using the 'official' binary version from Google with all its spy-settings turned on full. You can use Chromium w/ all that off and not worry about it.

      --
      "It is better to die on one's feet than to live on one's knees." - Albert Camus
    15. Re:i'll do my own tests by sunspot42 · · Score: 1

      I'm seeing the same behavior from the latest version of Firefox. It's increasingly unstable, on both my home system as well as my laptop and desktop systems at the office. Each runs a different set of plugins (or no plugins, in the case of the laptop), so I know it's Firefox itself and not (just) the plugins. I get a crash every couple of hours on each system, often when the browser is just running in the background.

      I'm considering switching to Chrome, or maybe even Safari since I trust Google even less than I trust Apple...

    16. Re:i'll do my own tests by PybusJ · · Score: 1

      I don't do much to manage them; it's more due to neglect than anything else.

      They were in about eight browser windows spread across 2 displays and several virtual workspaces, on a work machine. It has ample RAM for development and running VMs so space wasn't an issue. The tabs were the usual mixture of issue tracker tickets, related wiki pages, google searches, relevant mail-list posts or blog pages, and things to read "when I have a spare minute". I just opened tabs far more often than I sorted through or closed them, and after a few months they'd collected.

      Finding tabs wasn't particularly hard, thanks mostly to the fact that the so called "awsome bar" autocompletes on open tabs (in fact with the % shortcut it completes against just open tabs). Performance didn't seem particularly poor either. Maybe slightly less snappy, but not noticeably so.

      I only realised how many tabs I had when an add-on started leaking memory in large amounts. While tracing down what was causing the leak, I was copying the info from about:memory and using the "copy tab URLs" extension to export lists of what was open. I was rather surprised, but very impressed with firefox, when I ran it through wc. Though I did then spent a whole afternoon reading/closing/bookmarking until I brought the count down to double figures.

      I have seen some discussion by firefox devs on blurring the line between tabs and history. Once the (already planned functionality) to evict non-recently-used tabs from memory is in place, the distinction between tabs and history item becomes mostly a matter of UI anyway. I think that rather fits my disorganised browser usage.

    17. Re:i'll do my own tests by jesup · · Score: 1

      340 tabs... Piker. :-) I typically run nowadays with ~850 -- there's a handy extension (Tab Stats 0.0.2) that will show you how many tabs you have, how many are duplicates, etc. 64-bit Fedora 15, running FF12 nightlies. Currently using ~ 2GB memory for 855 tabs (60 loaded).

      Ironically the biggest memory user in about:memory is facebook (>100MB). Ironic, because I've never opened a tab to facebook, and I don't have a facebook account. This is the result of all those "Like" buttons, each of which takes an insane amount of memory. 100MB for facebook Like buttons. Really.

    18. Re:i'll do my own tests by Wolfrider · · Score: 1

      If you have ~100+ tabs opening every time you restart your web browser, I highly recommend using a Squid proxy.

      Good place to start is here - self-contained virtual machine, power on and go:
      http://communities.vmware.com/message/1887680

      --
      .
      == WolfriderV6 == I'm willing to admit that *I just might* be wrong... Are you??
    19. Re:i'll do my own tests by squiggleslash · · Score: 1

      Anyone tired of this "Blah blah anyone who says Chrome is faster than Firefox is lying, my stack of independent benchmarks show that Firefox doesn't use any RAM any more at all and Chrome is the memory hog and BTW Firefox are starting Memory Optimization Initiative #94 which undermines my claim that Firefox is suddenly memory efficient but I'm going to pounce on it anyway and pretend it validates everything I've flamed people over."

      This article exists because:

      • Firefox has severe memory problems
      • Everyone knows it
      • The "benchmarks" everyone keeps going on about do not accurately model real world behavior. Most of us have seen, with our own eyes, Firefox going into swap hell after a day or two - and often after an hour or two - of real usage

      Your comment exists because:

      • People are switching to Chrome in droves
      • Chrome is a horrible browser, for the reasons you give and more
      • That's HOW BAD the situation is with Firefox. We love Firefox. We want to use it. We just need to have things that Chrome gives us, you know, like a scroll bar that works in real time, and the ability to click on a tab and see a response rather than waiting for half a minute while the disk grinds.

      To be honest, I can only repeat what I've said a million times before. Mozilla needs to ditch Firefox 4+, and go back to the 3.6 code base. And if they don't, someone with enough momentum (Canonical?) needs to fork 3.6 for them.

      --
      You are not alone. This is not normal. None of this is normal.
    20. Re:i'll do my own tests by squiggleslash · · Score: 1

      Let me put it this way. I just had to kill and restart Firefox (FF9) because it went into swap hell again. I'm using it on a 1.5G Ubuntu VM (which may not be huge, but it's 50% more memory than a Netbook, and last I heard we're still supporting those, right? Also: when did a glorified rich text viewer start needing gigabytes to run?)

      How many tabs open? About 15. How much memory in use at the time? It claimed less than a gig.

      What mistake did I make? Actually, I've noticed that if I have more than ten tabs open, I can pretty much cause swap hell by starting (and closing) a PDF in Evince - which needless to say, happens frequently when browsing anyway. Somehow Evince loading is enough to injure Firefox, permanently.

      I've just upgraded to the preview of FF10 via http://ppa.launchpad.net/mozillateam/firefox-next/ubuntu/. We'll see what happens. I'm not holding my breath, I've heard the "Oh, you're not running the very latest release" thing for a while now - I do upgrade, I still get the same problem.

      Oh, and no problems with Chrome which has many more tabs open, but is still responsive.

      The history and profile thing is a new one, but guess what: I don't want to lose my history, bookmarks, cookies, and everything else. If storing a user's profile is sub-optimal, perhaps that's something that needs fixing too?

      --
      You are not alone. This is not normal. None of this is normal.
  6. Re:misslabeled linke by Tsingi · · Score: 4, Informative

    The final link actually shows Firefox is one of the most memory inefficient browsers in heavy usage.

    That depends on how you look at it. With one tab open it is comparatively poor, but with 40 tabs open it's very good.

    I don't particularly think FFX has even close to the best performance, but those metrics are good. What's more important, good management with a low footprint or a high one? I have to disagree with you there.

  7. Re:Firefox 4? by jperl · · Score: 1

    I'm already up to Firefox 9, so this must be from the ancient past, right?

    If 22nd March 2011 is ancient past for you, then yes. Thanks to the new release cycle, version numbers increase every 6 weeks.

  8. Re:Firefox 4? by cyfer2000 · · Score: 1

    The slides talked about firefox 12.

    --
    There is a spark in every single flame bait point.
  9. More configurable, better plugins. by guidryp · · Score: 4, Insightful

    I use FF because it is much more configurable (about:config has entries for more than any other browser), it also has more plug ins, and those plug ins it does have tend to be more effective for just about everything.

    I also don't like Google Chrome calling home all the time (uninstalled). I also have IE9 and Opera installed.

    Speed issues are moot outside of benchmarks these days (unless you are running IE7 on a netbook). IMO it is pure placebo effect to say one browser is faster than another in regular browsing on a modern computer.

    1. Re:More configurable, better plugins. by Spiridios · · Score: 1

      Speed issues are moot outside of benchmarks these days (unless you are running IE7 on a netbook). IMO it is pure placebo effect to say one browser is faster than another in regular browsing on a modern computer.

      For regular browsing I believe you're right. However, there are a couple of Google spreadsheets I use (I didn't create them) that are painfully slow under Firefox but just awfully slow under Chrome. So speed does matter for more than just benchmarks, but not necessarily for regular browsing. Note that this is on a self-built desktop gaming system that's less than a year old, so it's not like I'm comparing this on my dual-core netbook.

    2. Re:More configurable, better plugins. by guidryp · · Score: 1

      For regular browsing I believe you're right. However, there are a couple of Google spreadsheets I use (I didn't create them) that are painfully slow under Firefox but just awfully slow under Chrome. So speed does matter for more than just benchmarks, but not necessarily for regular browsing. Note that this is on a self-built desktop gaming system that's less than a year old, so it's not like I'm comparing this on my dual-core netbook.

      Link?

      Also is it open? I wonder if the result would be the same if it were loaded in Zoho sheet:
      https://sheet.zoho.com/login.do?serviceurl=%2Fhome.do

      It seems that Google probably made more optimization efforts for Chrome than Firefox.

  10. Pale Moon browser by kriston · · Score: 4, Interesting

    Windows users should investigate the Pale Moon browser over at www.palemoon.org. Firefox optimized and without all the gunk.

    --

    Kriston

    1. Re:Pale Moon browser by soupforare · · Score: 1

      I was ready to head back to Opera when I found Pale Moon, it really is great.

      --
      --- Do you believe in the day?
    2. Re:Pale Moon browser by Randle_Revar · · Score: 1

      Yes, strip it down and dumb it down even more, after all, that is what makes Apple crap and Chrome so popular.

      Fuck that, MoFo should never have ditched Mozilla for FF. It was and is (as SeaMonkey) the better product. I don't care how popular "simplicity" (really just lack of capability) is with the morons, I want something powerful and flexible that easily lets me do what I want.

    3. Re:Pale Moon browser by kriston · · Score: 1

      There's nothing "dumbed down" about Pale Moon.
      The only thing stripped out is ActiveX compatibility, which nobody used, anyway.
      As for capabilities, Pale Moon actually re-added the Status Bar which makes your point completely fallacious when it comes to Pale Moon.

      --

      Kriston

    4. Re:Pale Moon browser by Randle_Revar · · Score: 1

      Only one of your posts can be correct.

      "optimized and without all the gunk." vs "The only thing stripped out is ActiveX compatibility, which nobody used, anyway" and "Pale Moon actually re-added the Status Bar"

  11. Re:Firefox 4? by Baloroth · · Score: 1

    The slides talked about firefox 12.

    I honestly thought this was a joke for a few minutes, till I checked the slides myself.

    --
    "None can love freedom heartily, but good men; the rest love not freedom, but license." --John Milton
  12. In my experience... by Windwraith · · Score: 2, Funny

    Firefox is the app that uses the most RAM in my system, has always been, even more that Skyrim under WINE. I tried Chrome for a while, and while I didn't dislike it, I simply didn't want to forfeit my customized environment.
    However, I never saw Chrome as using any less RAM. I usually got Firefox with 20+ tabs open (and around 100 in "not loaded in RAM" mode with the new features, think old BarTab) grouped in Panorama groups. In Chrome, because tab space is small, I usually had around 20, and both browsers were consuming 400mb of RAM each. I'd say Firefox uses LESS memory overall.
    Thing is, firefox FEELS slow. Try to open Youtube's subscriptions page and you'll lose control of the browser for at least one second.

    I can easily see people unable to close their porn when their significant other enters the room. Porn moves the world, thus people would prefer to use Chrome for porn. Thus Chrome's usage rises while Firefox's decreases. If Mozilla makes it more convenient to use Firefox for porn, the browser usage will crush Chrome.

    1. Re:In my experience... by pmontra · · Score: 1

      Same for me but that's expected. What have I open on my Ubuntu desktop now? FF, Skype, Thunderbird, terminal, emacs. FF looks like the most complex application among them and the one with more data inside (many open tabs). I run top, sort by virtual image size and I see dropbox coming first (WTF?) in front of FF. Then nautilus and thunderbird as distant 3rd and 4th. Then clock-applet (wow). Dropbox and clock-applet are two really surprising memory hogs. I still remember when the process that filled my memory was emacs. It's a blip on the radar now.

      I feel the same as you about Chrome: it looks a little faster but FF closed almost all the gap. I'm still on FF because of AdBlock, NoScript and Firebug. They have counterparts on Chrome (actually Chromium in my case) but not as good IMHO.

  13. Re:FYI, Adblock Plus no longer blocks ads :-( by RotateLeftByte · · Score: 1

    Citation Needed.

    I am sure that many people here would like to know how you equate Ad-blocking with supporting SOPA?

    Come on please tell us.

    --
    I'd rather be riding my '63 Triumph T120.
  14. Re:misslabeled linke by Yvan256 · · Score: 1

    The funniest part is that Safari for Windows probably has to load extra Apple-related libraries to run. Otherwise I wonder how they can offer Apple anti-aliasing on a Windows system.

    I'd be interested to see that same test performed on a Mac OS X system. What do you mean "there's no Internet Explorer on Mac!"? Who cares!

  15. Re:FYI, Adblock Plus no longer blocks ads :-( by gparent · · Score: 1

    Of course it's not stupid. It's the whole reason for the feature in the first place. So that 'acceptable' ads can be shown and used to support the websites you visit. They need the money, you know. The reason it's on by default is that the ads are specially screened for their acceptability, and only ads that are deemed not annoying to users are presented.

  16. Firefox: Designed By Morons. Here's a simple test: by Anonymous Coward · · Score: 1

    Dump the firefox address space to a file and check the proportion that's simply text urls. For a daily user with history set to a typical value like 30 days it's shockingly large - tens to hundreds of megabytes. That's mostly the sqlite url/places db. Simple lz77 on *.sqlite gives a 50% reduction. Dictionary-based schemes would give a 95% reduction; academic work shows all urls can be coded in 4-5 bits. The few extra cycles per lookup are nearly free, and much cheaper than RAM.

    There are hundreds of equally dumb design decisions holding back necessary features. Have fun waiting for a competent sandbox.

  17. Re:Dislike the term "memory leak" by Geeky · · Score: 1

    I sort of agree, except it's the standard term so everyone knows what it means.

    I'd see hoarding as something slightly different anyway. Application grabs memory because it needs it. Then doesn't release it when it not longer needs it. If it then reuses that memory internally next time it needs some, that's hoarding. It's not admitting that the OS might do a better job of memory management and being greedy. Same with applications that grab more than they need on startup instead of waiting for when they really need it.

    Leaking would be grabbing memory, not releasing it, "forgetting" about it (i.e. losing the pointer) and then asking for more when needed.

    --
    Sigs are so 1990s. No way would I be seen dead with one.
  18. Slop analysis doesn't add up by fatphil · · Score: 1

    See page 27 of the PDF. He explains that the allocator, jemalloc, rounds up some allocation requests to easier to handle size. He calls this wastage "slop". Then look at the final point on that page - in order to reduce slop, always allocate a power of two sized block, as those never have slop.

    So in order to stop the allocator wasting memory by using up more memory than requested, we're supposed to ask for more memory than we need? That seems to be a facepalm moment. Let's move wastage to where we can't measure it, so that we can't see any wastage any more. The bind moggles.

    --
    Also FatPhil on SoylentNews, id 863
    1. Re:Slop analysis doesn't add up by dkf · · Score: 1

      So in order to stop the allocator wasting memory by using up more memory than requested, we're supposed to ask for more memory than we need? That seems to be a facepalm moment. Let's move wastage to where we can't measure it, so that we can't see any wastage any more. The bind moggles.

      No, but there's a lot of times when you over-allocate deliberately so you can expand into that space. This is the key to making things like string concatenation fast (an exponential growth strategy — multiplying the space requested by a constant factor each time — gives amortized constant time for memory allocation per byte when building up by appending, which is a hugely common operation). This is fine, but since in this situation you have precise control over how much to request as you don't need it all instantly, you can ask for amounts that are likely to be efficiently handled, minimizing the amount of space that has been allocated at the low level but not actually made available to the consumers of that space (i.e., that's the slop). It's a really easy tweak to make once you are aware of the problem, and it will nearly halve the amount of memory that some data structures use. Big Win.

      --
      "Little does he know, but there is no 'I' in 'Idiot'!"
    2. Re:Slop analysis doesn't add up by jlebar · · Score: 3, Informative

      See page 27 of the PDF. He explains that the allocator, jemalloc, rounds up some allocation requests to easier to handle size. He calls this wastage "slop". Then look at the final point on that page - in order to reduce slop, always allocate a power of two sized block, as those never have slop.

      So in order to stop the allocator wasting memory by using up more memory than requested, we're supposed to ask for more memory than we need?

      What's to stop us from changing a 1025-byte allocation to 1024 bytes, rather than 2048 bytes, as you assume? There's no reason we need round up, and indeed we usually don't.

      But note that even when we do round up, it's still an improvement: The slop is rarely usable memory -- you can't use it without first calling malloc_usable_size to realize that you have any slop. But if we round 1025 up to 2048 bytes, now we have almost double the amount of memory to play with. We pay 2048 bytes either way, but when we round up, we get to use all the memory we allocated.

    3. Re:Slop analysis doesn't add up by fatphil · · Score: 1

      The frequency of reallocations issue is orthogonal to the slop (measurable or unmeasurable) one. Anything that your allocation strategy does will cause on average as much excess slop (by pushing allocations into a bigger band) as it reduces slop (by being closer to the limit of the band).

      There is nothing intrinsic about powers of 2 that makes allocators significantly more efficient. See recent comp.lang.c discussions (last 2 weeks) about the superstitions which surrounds powers of 2, and their debunking. (Or just look in the commit history for the linux kernel for the kcache pool implementation)

      --
      Also FatPhil on SoylentNews, id 863
    4. Re:Slop analysis doesn't add up by b4dc0d3r · · Score: 1

      IIRC the most important part of that was allocating a standard sized bit of memory was calculated at the nearest power of 2, or 1024 bytes. Then the allocator adds a header and rounds to the nearest power of 2. So a request for 1024 bytes including slop space actually gets 2048. That was one of the biggest fixes they made - don't pre-calculate overage in multiple places, just ask for what you need until you get to the actual allocator.

      This was memory designed to expand into, basically their own C-style alloc() function, which requests a chunk from the OS and divides it up for the application to use, in order to speed up repeated allocations. Not sure why C/C++ wasn't good enough tho.

    5. Re:Slop analysis doesn't add up by TheRaven64 · · Score: 2

      No, you're supposed to allocate and use a power of two. If you have a 34 bytes structure and a 20 bytes structure that are usually used together, then allocating them separately will waste 42 bytes of memory. Allocating them together will waste 10 bytes. Allocate a lot of them and this 30-byte-per-structure saving is a lot.

      This is even more true for buffers. The example he gave was for a JavaScript string. This allocates a buffer that the string can grow into. If a string is any length between 512 and 1023 characters then it should be allocating a 1024 byte buffer for it, but instead was allocating a 2048 byte buffer, and when it got to 1024 bytes it was freeing this and allocating a 4096 byte buffer for it.

      --
      I am TheRaven on Soylent News
    6. Re:Slop analysis doesn't add up by _0xd0ad · · Score: 1

      Code usually assume it get what it asks for

      Bad code assumes. Good code checks to make sure malloc didn't give it a null pointer.

    7. Re:Slop analysis doesn't add up by BZ · · Score: 1

      Or uses a malloc implementation that never gives back null pointers (calling abort() instead). That's basically what large parts of WebKit and Gecko do at this point.

    8. Re:Slop analysis doesn't add up by jlebar · · Score: 1

      You are clearly not a programmer.

      I've written and reviewed many of the patches mentioned in the presentation. :)

      Code usually assume it get what it asks for, so after your rounded-down allocation, it attempts to use 1025 bytes out of 1024.

      You're right that we can't change malloc so that, instead of returning 1025 bytes, it returns 1024 bytes. What we do is change the code which calls malloc so that, instead of asking for 1025 bytes, it asks for 1024 bytes.

      Of course you can't always do this. But if you read TFA, you'll see a number of examples where we can.

  19. It isn't a memory leak... by nitehawk214 · · Score: 2

    ... its just accidental memory usage.

    Oh good, I was starting to get worried there.

    --
    I'm a good cook. I'm a fantastic eater. - Steven Brust
    1. Re:It isn't a memory leak... by slimjim8094 · · Score: 1

      Can't tell if you're being snarky. A memory leak is a very specific thing (pointer lost before free'd). If this happens in a loop or some other repeated code, memory usage grows out of hand with no recourse. Accidental memory usage is a much less concerning problem, because it's relatively straightforward to deal with during execution. It's also less likely to grow unbounded.

      --
      I have developed a truly marvelous proof of this comment, which this signature is too narrow to contain.
    2. Re:It isn't a memory leak... by slimjim8094 · · Score: 1

      Good catch. Guess I shouldn't comment before I've had my coffee.

      --
      I have developed a truly marvelous proof of this comment, which this signature is too narrow to contain.
  20. Hmm by ILongForDarkness · · Score: 1

    I get warnings from AVG about every other day warning about FF memory usage looking suspicious. I'm pretty sure I'm not infected with anything. But having say 3-4 tabs open on Win 7 (might be the problem ;-)) uses ~560MB of RAM. Not overly complex sites either, /., coding site, youtube say (not playing a video). That said I rarely hit 80% of RAM used overall so I don't really care how FF uses my RAM other than if more RAM implies slower because more stuff has to go back and forth to the CPU. It could just mean that FF preloads a bunch of stuff so it runs faster though (don't hear a lot of people say it is faster :-)) so tricky.

    1. Re:Hmm by ILongForDarkness · · Score: 1

      Oh and large probably due to memory leaks this happens after using FF for two days without closing it.

  21. Re:misslabeled linke by 93+Escort+Wagon · · Score: 1

    That depends on how you look at it. With one tab open it is comparatively poor, but with 40 tabs open it's very good.

    And in which of these states is it most likely a typical (non-Slashdotter) Firefox user will be?

    --
    #DeleteChrome
  22. Re:Firefox: Designed By Morons. Here's a simple te by jlebar · · Score: 1

    Dump the firefox address space to a file and check the proportion that's simply text urls.

    You are aware that not all of Firefox's address space is in memory, right? I'm pretty sure that Firefox does not use hundreds of MB of RAM just for storing URLs.

  23. firefox by aahpandasrun · · Score: 1

    I love Firefox. It still has a few annoyances though. Having to sometimes manually kill the Firefox task to start a new browser window because it's "already open" is my biggest one. But, I still love its customizability over the sheer rigidness of Chrome.

  24. Re:misslabeled linke by Tsingi · · Score: 1

    That depends on how you look at it. With one tab open it is comparatively poor, but with 40 tabs open it's very good.

    And in which of these states is it most likely a typical (non-Slashdotter) Firefox user will be?

    What difference does it make?

  25. Re:Firefox: Designed By Morons. Here's a simple te by TheRaven64 · · Score: 1

    academic work shows all urls can be coded in 4-5 bits

    5 bits gives a total of 32 possible URLs, so this is only true for very small Internets...

    Or do you mean 4-5 bits per character?

    --
    I am TheRaven on Soylent News
  26. Memory leaks are easy by kbg · · Score: 3, Interesting

    I have never understood why memory leaks are so problematic to find. When I was programming in C long ago and had memory leaks, I simply created my own wrappers for malloc and free that stored where in the source code it was being called from, then at the end of the program I could simply check this list and it would display all the memory that had not been released and the corresponding line in the source where malloc was called.

    1. Re:Memory leaks are easy by BZ · · Score: 4, Interesting

      You should read the article, which actually touches on this. One issue is that a "memory leak" can include memory that does in fact get released at shutdown, especially in garbage-collected systems (not a problem in C, of course).

      So you can have situations where you close a tab but its memory is kept alive for a while because an extension is referencing it. Not a leak in the C sense, but a leak in the sense the user cares about.

    2. Re:Memory leaks are easy by _0xd0ad · · Score: 2

      The problem is not finding where in the source malloc was called. That is easy. The problem is finding where free wasn't. That is harder.

    3. Re:Memory leaks are easy by kbg · · Score: 1

      I beg to differ, every malloc should have a corresponding free, so if you find what malloc and what data structure you didn't free, then it should be obvious there is a bug in the code where you are freeing that structure.

    4. Re:Memory leaks are easy by _0xd0ad · · Score: 1

      I beg to differ, every malloc should have a corresponding free

      Read my post again a little more carefully, and you'll see that I wasn't disagreeing with you.

      The question is not "should" but rather "WHERE".

      "When the OS cleans up after unloading the app" is usually an unacceptable answer. The correct answer is usually harder than that.

    5. Re:Memory leaks are easy by _0xd0ad · · Score: 1

      then it should be obvious there is a bug in the code where you are freeing that structure

      As in, you didn't, and/or it wasn't called. I nominate you for understatement of the year.

      Deciding when a particular memory is okay to forget is sometimes a little harder than you make it out to be, however.

  27. A couple of problems by alexo · · Score: 2

    At work I have a quad core Q6700 with 4GB of RAM. At home I use an older single core Athlon 64 3500+ with 2GB of RAM. Both machines run Windows XP.

    Both machines run FF 3.6 because I keep reading that later versions have worse memory use and UI performance characteristics.

    On both machines, I experience two problems with FF memory usage (all figures were reported as "private bytes" by Sysinternals process explorer):

    1) Memory usage keeps growing until it reaches a threshold (1.5GB on my home machine) after which FF locks hard with close to 100% CPU use and never recovers. Closing tabs did not bring the memory usage down in a perceptible way.
    This used to require daily restarts of FF but lately the problem does not seem to happen that often. A restart can still cut the memory use by half (same tabs courtesy of session restore), which helps with problem #2 below, but it takes much longer to go over 1GB.

    2) Periodic "stuttering" where FF will pause for a short period every once in a while with CPU usage spikes approaching 100%. The duration of the pauses seem directly related to the amount of memory that FF uses. That, and the periodic nature of the "hiccups", lead me to believe it is related to garbage collection.
    Unfortunately, it makes viewing videos when FF is running (even using an external viewer) impractical, so I have to close FF and start IE8 each time I go to youtube,
    There's a bug report that was opened almost 3 years ago (and still unassigned).

    The responses that I get are:

    * You're using an old version.
    True, but according to the comments, bug 490122 is still present in the newer versions (up to v10) and people say that 3.6 is more responsive (especially on older HW) than the newer versions.

    * It's the plugins/addons/extensions.
    Perhaps, but the reason I use FF at all is because of the extensions and I would expect such an "extension-centric" product to help me figure out which one is misbehaving (for example, by reporting the memory usage of each tab).

    Now, reading the article and the slides, I am getting hopeful that these issues are being addressed.

    1. Re:A couple of problems by Korin43 · · Score: 3, Insightful

      Both machines run FF 3.6 because I keep reading that later versions have worse memory use and UI performance characteristics.

      ... people say that 3.6 is more responsive (especially on older HW) than the newer versions.

      Those people are wrong. Newer versions of Firefox are *much* faster and use less memory. In fact, lowering memory usage became a priority right about the time you stopped upgrading. Ironic, eh?

    2. Re:A couple of problems by kyrio · · Score: 1

      The mistake you made was using Firefox. I've used Opera on Pentium 2 systems running Windows XP and it ran quickly and efficiently, unlike any other browser.

    3. Re:A couple of problems by alexo · · Score: 1

      Both machines run FF 3.6 because I keep reading that later versions have worse memory use and UI performance characteristics.

      ... people say that 3.6 is more responsive (especially on older HW) than the newer versions.

      Those people are wrong. Newer versions of Firefox are *much* faster and use less memory. In fact, lowering memory usage became a priority right about the time you stopped upgrading. Ironic, eh?

      "Faster" is a relative term. I was specifically referring to the UI. In particular on machines with old/slow CPUs and GPUs.
      For example, https://bugzilla.mozilla.org/show_bug.cgi?id=716445 (there are others).

    4. Re:A couple of problems by squiggleslash · · Score: 1

      I really wish installing Firefox 3.6 on my otherwise up-to-date Ubuntu system was trivial and not going to break anything. Despite all the Mozilla people claiming otherwise, FF3.6 was genuinely better than every version I've tried since. It was more memory efficient.

      I fairly recently benchmarked running versions of Chrome and Firefox - not the artificial tests where someone boots the browsers up and loads a set number of tabs and measures then, but tested them both after at least 48 hours of real use. Chrome was using less memory, despite having many times as many tabs open. Firefox was stuttering, with every attempt to change tab or scroll the page causing disk page thrashing.

      I don't like Chrome, and it's a measure of the degree to which Firefox has fallen that I'm using it 90% of the time. I hope this article isn't yet another "Sure, Mozilla is finally taking memory usage seriously!" article that means nothing in practice.

      --
      You are not alone. This is not normal. None of this is normal.
  28. Re:Firefox 4? by Fujisawa+Sensei · · Score: 1

    I'm on FF 12a1; seems much better than the actual releases.

    There are a few plug-in issues, but I'm not a big plugin user, so its not a big deal.

    --
    If someone is passing you on the right, you are an asshole for driving in the wrong lane.
  29. SRWare Iron by coder111 · · Score: 1

    If you don't like Google Chrome calling home all the time- there is a binary distribution of open-source Google Chromium for windows with all that callback crap removed. It's called "SRWare Iron". Well, supposedly removed- since it's binary I cannot verify that. But you can compile chromium from source yourself if you really want to.

    http://en.wikipedia.org/wiki/SRWare_Iron

    --Coder

    1. Re:SRWare Iron by guidryp · · Score: 1

      Actually I do have this on my system. I just didn't think it was worth mentioning because it is kind of niche.

      But just not calling home isn't enough to get me using any Chrome variant. It still isn't as configuration friendly, and still doesn't have the level of extensions available for FF.

      Also every version Chrome sourced browser has that annoying white flash when looking at some dark web pages like this one:

      http://forums.dpreview.com/forums/

      Black background and when you click on messages in the forum, Chrome produces an annoying white screen flash (known bug there for years now) that I don't get in FF.

    2. Re:SRWare Iron by Cinder6 · · Score: 1

      There is no difference. The only useful thing SRWare Iron makes is increasing the number of website thumbnails.

      http://chromium.hybridsource.org/the-iron-scam

      --
      If you can't convince them, convict them.
  30. option to browse without images by bzipitidoo · · Score: 1

    Since so many in this thread talked about ancient history, I'll mention one. Does anyone remember the option to browse without images, from back in the day? Sometime around Netscape Navigator 2? Used to be a rather prominent option, but somewhere along the line it was quietly dropped off the menus.

    --
    Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
    1. Re:option to browse without images by Windwraith · · Score: 1

      There's the IMGlikeOpera addon that does that feature while still allowing to load per-site or individual images. It's my main reason to stick to Firefox, since Chrome addons can't prevent content from loading.

      Unfortunately that addon is one of the first addons to break if something changes, and it's not developed actively at all. On its favor, it didn't break in about 4 releases, but can happen anytime.

    2. Re:option to browse without images by Randle_Revar · · Score: 1

      SeaMonkey (aka Mozilla):
      Edit -> preferences -> privacy & security -> images
      Image acceptance policy:
        do not load any images
        only load images that come from the originating server
        load all images

  31. Re:FYI, Adblock Plus no longer blocks ads :-( by Guy+Harris · · Score: 1

    Citation Needed.

    I am sure that many people here would like to know how you equate Ad-blocking with supporting SOPA?

    Come on please tell us.

    Perhaps he's Jamie Kellner, in which case the only reason I wouldn't tell him, and everybody who defends him, to go fuck themselves is that they might manage to have an orgasm in the process, and they don't deserve to enjoy themselves.

  32. Re:misslabeled linke by praxis · · Score: 1

    The link was not labelled typical use but heavy use. Which of those states is most like 'heavy use'?

  33. Re:misslabeled linke by chrb · · Score: 1

    The big surprise for me was seeing that browsers consume significantly more memory on OS/X than Windows. Look at the "-39, 2min" test for Firefox: 225MB for Windows, 717MB on OS/X. How can the same code, doing the same memory deallocations, do this? Or do the browsers implement different memory management algorithms for different operating systems? Or is the test broken? Even Safari seems to have significantly lower memory usage on Windows than OS/X. What's going on there?

  34. Memory usage by coldmist · · Score: 1

    I don't remember right now the setting, but what finally 'fixed' FF's big memory usage for me was reducing the number of pages from the history that it keeps in memory, in case you hit the 'back' button.

    There's a setting that controls this. I think it's browser.sessionhistory.max_entries Search for that.

    If you browse image-intensive sites, I saw memory usage get up to 4-6GB before. Now, it never goes over 1GB, with 50 misc tabs open still.

    --
    Don't steal. The government hates competition.
  35. Re:misslabeled linke by BZ · · Score: 2

    For Firefox and Safari, part of the difference is that they're 64-bit applications on Mac and 32-bit applications on Windows.

    For Chrome and Opera, that's not an issue, since they're 32-bit both places.

    Past that, Windows and Mac use different font and graphics subsystems. That's a pretty large chunk of memory usage right there that'll be very different. There might also be differences in allocations in various other system libraries.

    Further, "the same memory allocations" can lead to very different results when different allocators are used. See http://pavlovdotnet.wordpress.com/2007/12/06/more-allocator-data-tcmalloc-edition/ and http://pavlovdotnet.wordpress.com/2007/12/04/vlad-and-analysis-of-dtrace-was-used/ for some data from a few years ago using different allocators for Firefox on Windows. At least for the Firefox version tested there the allocators are different on Windows and Mac: the Mac version uses the system allocator while the Windows version uses jemalloc. Newer versions use jemalloc on Mac as well.

    I agree the result is interesting though, and having an idea of how much of it is attributable to which factor would be good. An apples-to-apples (so to say) comparison using a recent Firefox nightly with jemalloc on both Windows and Mac, running in 32-bit mode on Mac, might be interesting.

  36. Re:FYI, Adblock Plus no longer blocks ads :-( by ThatsMyNick · · Score: 1

    Actually adblock is theft. By using adblock, you support grand theft, burglars and, er, arsonist.

  37. Re:misslabeled linke by Your.Master · · Score: 1

    I suspect you're not actually familiar with programming, because you're making the mistake of thinking that code is fungible, like you can easily swipe a chunk of Chrome into Opera (to choose two browsers you didn't call out specifically, for the sake of impartiality :)) and suddenly a bunch of CSS properties work.

    Even in extremely modular code this won't be true of internal details like this, especially in highly optimised software like web browsers where internal data structures will generally be tuned to favour performance over potential to interact with completely different software packages.

  38. Re:misslabeled linke by KingMotley · · Score: 1

    Actually, it is better if they don't look. If they look, and somehow similar code gets put into IE, then they could be taken to court. As a programmer in the field, as tempting as it may be, never ever look at another persons code unless it's BSD licensed, public domain, or similar.

  39. Not my experience. by guidryp · · Score: 1

    I disabled every data gathering option I could find in Chrome and it still was trying to get at the internet on it's own.

    I never saw Iron do any such thing. Also your "analysis" is ancient and out of date, based on Chrome 5 source, Iron now uses Chrome 16 mainline source.

     

  40. Purgeable by tepples · · Score: 1

    Then perhaps the proper solution is exposing a memory manager API to let applications mark some blocks of RAM as "purgeable" so that they can be discarded (and rebuilt later) if the operating system experiences memory pressure. Mac OS has been doing this since 1984. For example, most cached data (DOM of recently closed tabs and windows, as well as decompressed forms of off-screen images) could probably be marked purgeable.

    1. Re:Purgeable by smash · · Score: 1

      Then perhaps the proper solution is exposing a memory manager API to let applications mark some blocks of RAM as "purgeable" so that they can be discarded (and rebuilt later) if the operating system experiences memory pressure

      Its called letting the OS cache disk access, rather than trying to do it yourself in your app, when you have no idea of the status of the rest of the applications on the user's machine (which the host OS does know about).

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  41. Re:Doctor it hurts when I do this: Don't do it, du by ILongForDarkness · · Score: 1

    I wasn't saying AVG was the problem. I'm aware of FF RAM usage because AVG tells me about it periodically. I'm not that much of a nerd that I check my RAM usage all the time even when my computer isn't behaving poorly. AVG IS suggesting that something might be wrong with the app because it is using so much RAM though. Not sure if it is a generic thing like anything using > X MB of RAM gets flagged, or if it is RAM usage growth over time that triggers the warning or what. Don't really care because I ignore it since I'm no where near my RAM limit.

  42. Just "Firefox" by YA_Python_dev · · Score: 1

    FYI, the second "f" is lowercase: the name is Firefox, not "FireFox". While we are on the topic the official abbreviation is FX, despite most people using FF.

    --
    There's a hidden treasure in Python 3.x: __prepare__()
  43. Unbelievable bad user experience on Mac by utkonos · · Score: 1

    The user experience on Mac is incredibly bad. Firefox is borderline useless. Cut and paste operations, scrolling after you open a new window, and many other actions are frustratingly laggy. None of the other browsers, Safari, Chromium, or Opera have this problem. It is painful to use Firefox on a Mac.

  44. Let's define "cache". by tepples · · Score: 1

    Its called letting the OS cache disk access

    We appear to disagree on the meaning of "cache". It's not just the browser's "cache" of downloaded objects that would be marked purgeable. Are you claiming that cached DOMs, used for back and forward buttons, recently closed tabs, and recently closed windows, should all be written to the HDD? Or that cached decompressed images should be written to the HDD as BMP files?

    1. Re:Let's define "cache". by smash · · Score: 1

      If they are not "current" working data they should be paged out. I don't care on the format, do a memory page dump for all I care, but carrying stuff around in memory to second guess your operatng system's VM subsystem is an ugly hack that has shown to have nasty consequences for every other task the user wants to do with his/her hardware.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  45. Re:misslabeled link by _0xd0ad · · Score: 1

    You cherry picked whether to rank Firefox relative to the best or the worst in those datum. Without knowing how many browsers were tested, that data is almost completely useless.

  46. Re:Doctor it hurts when I do this: Don't do it, du by ILongForDarkness · · Score: 1

    Yep I agree. It should be ram usage + low ram not just RAM usage. All I saw for settings was to completely disable that type of warning not exclude certain apps. So I'll live with it it is just a popup balloon every few days so not a big deal.