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

Reply via email to