I've checked in a change to enable tcmalloc on Linux via a gyp flag
(r24538).  If you set the gyp variable linux_use_tcmalloc to 1, it
will build the tcmalloc library (which includes the cpu profiler and
the heap profiler).  You can then generate cpu profiles and heap
profiles for Chromium on Linux and analyze them with the
google-perftools pprof script.  I've written up the basics of this at
http://code.google.com/p/chromium/wiki/LinuxProfiling.  For an example
of what a Chromium cpu profile looks like, take a look at
http://chromium.googlecode.com/issues/attachment?aid=8129389678904867605&name=cpuprofile.pdf
which shows the heavy cpu usage of our tabstrip code.

-Will

PS: I haven't enabled tcmalloc by default because the perf cycler
results didn't change substantially in the experiments I ran on the
buildbots.  The memory bot isn't working yet for Linux, so I'm also
concerned about an increase in memory usage, so I'm waiting for that
to be enabled before experimenting with this again.
PPS: google-perftools profiling only works on the browser process for
now, due to various issues that can be addressed (needing filesystem
access to write out the profiles [doesn't work with sandbox], profile
filename is specified in an environment variable, which is the same
value across browser/renderer processes, etc.).

--~--~---------~--~----~------------~-------~--~----~
Chromium Developers mailing list: [email protected] 
View archives, change email options, or unsubscribe: 
    http://groups.google.com/group/chromium-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to