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 -~----------~----~----~----~------~----~------~--~---
