Hi everyone,
About a couple of years ago, if memory serves, we turned off frame
pointers in order to gain some performance. The performance
improvement was about 5% according to some sources (bug 492688). One
of the implications of this change was that it made profiling
nightlies harder since you needed to do your own optimized builds with
--enable-profiling in order to get any useful results out of the
profiler.
A couple of years has passed by, and now we have tools like the Gecko
Profiler <
https://developer.mozilla.org/en/Performance/Profiling_with_the_Built-in_Profiler>
and the Chrome Hang Reporter
<
http://blog.mozilla.org/vdjeric/2012/06/08/cache-plugin-font-operations-most-common-in-chrome-hang-reports/>
which need to be able to walk the stacks using frame pointers to be
useful. Back in January, I started to maintain a profiling branch
<
https://groups.google.com/d/msg/mozilla.dev.platform/M4l5jl75dEs/-hJbnWegMgMJ>
which was simply Nightly + --enable-profiling in the mozconfig where
we could use these tools without having to do our own builds.
Now we're at a point where we need more people to be able to use these
builds, and therefore I'm proposing to add --enable-profiling to the
default mozconfigs for Nightly desktop builds. This change will help
developers focusing on performance tremendously, but it does have the
side effect that the Nightly builds will be a bit slower than Aurora,
Beta and Release, so those who need to compare performance numbers
across Nightly and other channel builds will need to create their own
builds. If the mobile team wants this in the future, they can enable
this separately in the future.
I'm planning to file a bug with a patch to do this this week, unless
someone has a very compelling reason why we should not do this.
Cheers,
--
Ehsan
<
http://ehsanakhgari.org/>