Re: [crx] Why the time of starting extension is depended by a number of actually installed extensions?

121 views
Skip to first unread message

Aaron Boodman

unread,
Oct 1, 2012, 6:26:57 PM10/1/12
to Denis Gabaydulin, chromium-...@chromium.org
Are you saying you have 3000 different extensions installed?

- a

On Sat, Sep 29, 2012 at 2:26 PM, Denis Gabaydulin <gab...@gmail.com> wrote:
> What Chromium does on startup with all installed extensions?
>
> If I have a 3k installed extensions, Chromium starts a several minutes on
> Celeron with 1.5 GB RAM (I know this hardware is sucks).
> Also, when I click to run one of the installed extensions, a response is
> also very slow (about 10 seconds before extension actually has run). The
> same extension starts for 1 second if I have 20-30 installed extensions.
>
> Note, that there is enough free memory and CPU, as I can see in the task
> manager :-/
>
> --
> You received this message because you are subscribed to the Google Groups
> "Chromium-extensions" group.
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msg/chromium-extensions/-/Mp3tZzva7_kJ.
> To post to this group, send email to chromium-...@chromium.org.
> To unsubscribe from this group, send email to
> chromium-extens...@chromium.org.
> For more options, visit this group at
> http://groups.google.com/a/chromium.org/group/chromium-extensions/?hl=en.

Denis Gabaydulin

unread,
Feb 4, 2013, 7:34:31 AM2/4/13
to Aaron Boodman, chromium-...@chromium.org
After digging into the problem we have done some patches which is resolved the above issues.

First of all, we are demonstrating patches only for interested in our cases people and we are realizing, that are not suitable for master.

The first patch removes sending of all extensions to the dispatcher (tab process) in the chrome/browser/extensions/extension_service.cc and replaces (where it is possible) sending of single extension_id with full extension info. In our tests we don't see a necessity in such expensive operation.

The second patch removes a functionality of the extension blacklist. We found, that if you have a lot of extensions (thousands), the chrome makes a huge amount of tasks in the message loop of the tab process, while extensions are loading in the first time. As we can see, a message loop handles tasks one by one. That is a bottleneck.

These two patches turns on ability to run chrome on the low level hardware with 192-256 MB.
The second patch makes first start up significantly faster on a modern hardware as well.
0005-Fix-problem-with-an-app-starting-when-you-have-10k-i.patch
0006-Fix-problem-with-slow-browser-starting-when-you-have.patch

Denis Gabaydulin

unread,
Feb 4, 2013, 7:41:29 AM2/4/13
to Aaron Boodman, chromium-...@chromium.org
I mean 192-256 MB RAM, not video memory :-)
Reply all
Reply to author
Forward
0 new messages