Mozilla puts Firefox on a memory diet
Largest consumer of Firefox from RAM, Spider Monkey JavaScript engine, is the mother of all diets. At one point, the Spider Monkey memory footprint over 50% of the total consumption of Firefox - the JavaScript code on extreme tech website for example, uses up to 115 MB of memory - and slipstreaming Spider Monkey is by far the best change that Mozilla can do to keep Firefox on the desktop, slim and competitive with Chrome and IE and Firefox on Android less sluggish.
If you're not a programmer, you should probably skip this section. Basically, almost all fundamental part of the Spider Monkey is torn, came into the hands of the best engineers Mozilla, and rejigged to use less memory. JSObject is cut in half and then JSFunction will also be reduced. Slot arrays can 32-bit, rather than by force is built of 64-bit "fatvals." Forms, one of the most important data structures Spider Monkey has almost halved in size. Mozilla is currently investigating whether scripts can be "lazy loaded" too - as much as 70-80% of all downloaded JavaScript is never done, so it makes no sense to load it into memory, lazy loading, where the scripts are loaded when needed, will reduce memory consumption.
Last but not least, TraceMonkey - Jaeger ape ancestor and in the words of Nicholas Nethercote Mozillan "a big hairball" - will be retired. No one will miss, RAM consumption will be reduced, and Firefox itself will be a smaller download. Jaeger monkey as Firefox 10 or 11, the only just-in-time (JIT) compiler.
Now it is important to remember that much of this work is in progress - the current nightly build (version 10) seems to actually have a slightly larger memory footprint than the release build of Firefox (version 7) - but if these changes In the end of the country (probably in time for Firefox 11 - about four months away), and if you factor in other changes currently being made to Firefox's memory consumption, would Firefox RAM footprint of one third of what it is today.
0 comments: