chrome binary size treemap

598 views
Skip to first unread message

Evan Martin

unread,
Sep 20, 2010, 3:58:06 PM9/20/10
to chromium-dev
Here's a map of the Chrome binary size, as told by nm:
http://neugierig.org/software/chromium/bloat/

In case it's not clear, the box sizes are proportional to their
fraction of the containing box.

Caveats:
- The total of the displayed symbols is less than the actual Chrome
binary size. This is due to nm not knowing about all the components
of our binary, or the sizes of every symbol; for example, we put the
ICU data table in our binaries but that is not included here.
- nm also sometimes doesn't know which source file a given symbol
comes from; those all are placed in the "symbols without paths"
bucket.
- Note that a given component of Chrome might have its code across
multiple directories; for example, WebCore code exists in the big
WebCore box but also in the generated bindings found in
out/Release/obj/gen/webcore/bindings as well as in the misc "vtable
for WebCore::" box (which contains all vtables namespaced to
WebCore::). Or how sync includes chrome/browser/sync but is also
responsible for the multiple jingle boxes.

Adam Barth

unread,
Sep 20, 2010, 5:08:21 PM9/20/10
to ev...@chromium.org, chromium-dev
That's super cool. How can I use this to find fat to trim in WebCore?

Adam

> --
> Chromium Developers mailing list: chromi...@chromium.org
> View archives, change email options, or unsubscribe:
>    http://groups.google.com/a/chromium.org/group/chromium-dev
>

Evan Martin

unread,
Sep 20, 2010, 6:49:15 PM9/20/10
to Adam Barth, chromium-dev
[resend, networking issues]

I dumped the code (with a README) here:
http://github.com/martine/bloat

Not my prettiest hack, but there it is.

Marc-Antoine Ruel

unread,
Sep 21, 2010, 9:33:28 AM9/21/10
to ev...@chromium.org, Sigurður Ásgeirsson, Adam Barth, chromium-dev
Siggi, could you do it for Windows?
Reply all
Reply to author
Forward
0 new messages