The open source web browser Mozilla Firefox is well known for its memory leaks. It requires comparatively higher system memory when running with several opened tabs, browsing for hours or running add-ons. Of course, there are few unofficial solutions and add-ons to control the issue, but none of them is able to make the things in control.
But, now Firefox developers have decided to take the issue seriously, which I think, is necessary for today’s tight competition of browser market. Mozilla has started a project called MemShrink to tackle the Firefox’s memory consumption issue.
According to a Mozilla Wiki article, “MemShrink is a project that aims to reduce Firefox’s memory consumption”. There are three potential benefits (courtesy to Mozilla Wiki):
Speed: less cache pressure, and less paging. The latter is crucial, as it can destroy performance.
Stability: fewer OOMs, whether due to address space exhaustion or otherwise. This results in fewer crashes (due to mishandling of OOM) or aborts.
Perception: fewer people will complain about Firefox being a memory hog.
These factors are doubly important for Firefox Mobile.
There are two main facets to this:
“Slimmer” memory usage, e.g. more space-efficient data structures.
Avoiding “leaks”. This loose use of the term (which is used throughout this document) includes:
True leaks, where memory is lost forever.
Lifetime issues, where memory is not reclaimed until you close the page/tab/window/process.
Collection heuristic issues (e.g. GC is too infrequent in certain cases).
Bad cache algorithms and poorly tuned caches.
Leaks are generally more important, as they are more likely to lead to horrible performance. (via)