I started filing some low-hanging-fruit dependencies, though, looks like one of the main culprit is modules that are Cu.import-ed instead of defineLazyModuleGetter-ed. I wonder if we could somehow instrument Cu.import so that if a module is not used before N seconds (or M ticks?) from when it was imported it logs a warning to the console. Or directly make Cu.import act like defineLazyModuleGetter... Would that be possible?
On 21/03/2014 07:46, Nicholas Nethercote wrote: > Hi, > > At start-up, with a new profile, Firefox creates more than 230 system > compartments. This is about 90 more than a year ago, and it's part of > the reason why Firefox uses almost twice as much physical memory at > start-up than it did two years ago. (Have a look at > https://areweslimyet.com/ for the measurements.) > > At the bottom of this email I have listed the system compartments. > (You can generate this list yourself from the > 'js-main-runtime-compartments' tree in about:memory.) Please look for > any there that you know could be created lazily. For example, there > are 16 that have "devtools" in the name, which sound unnecessary. > > If you find some, please file a bug that blocks > https://bugzilla.mozilla.org/show_bug.cgi?id=986323. > > Also, while modularization is admirable, compartments aren't free. So > if you see any compartments that could be merged easily, please > consider doing that as well. > > Thanks. > > Nick > _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform