On Fri, Jul 17, 2009 at 8:12 AM, Nicolas Sylvain <[email protected]>wrote:

>
>
> On Fri, Jul 17, 2009 at 7:40 AM, Dan Kegel <[email protected]> wrote:
>
>> On Fri, Jul 17, 2009 at 2:34 PM, Thomas Van Lenten<[email protected]>
>> wrote:
>> >> We're already running at -O1 on Linux, so there isn't much improvement
>> >> left to be had, I suspect.   It might be worth it, dunno.
>> >
>> > There is a lot of code cut out by being NDEBUG instead of DEBUG, that's
>> > where I think the mac is getting its speed up.  Yesterdays mac valgrind
>> runs
>> > on the main waterfall were actually -O0 while we waited for the v8 issue
>> to
>> > be fixed and they saw that speed up.
>>
>> FWIW, I saw a noticable speedup from goint to -O1.  Glad to
>> hear there's more to be had.  I guess I'll try it.
>
>
> On Windows we also use a release build without optimization. Purify can
> barely run with a debug build.
>

One other tradeoff to consider with these build options for valgrind is
quality and consistency of stack traces.  I don't know how much of an issue
this has been for valgrind, but I'll share the Purify side of it with you.

As Nicolas points out, Purify runs a Release build with no optimizations,
and some linker options disabled.  Running release is a huge performance
improvement since it gets rid of a lot of extra code that's being run.
 Minimizing the optimizations allows for more consistent stack traces since
levels of the stack aren't getting optimized away and line number info is
more accurate.  Further, we disable COMDAT folding in the linker, which with
visual studio combines identical code into the same entry point.  This is a
great optimization for code like ours that uses templates heavily, but it
winds up making the stacks less understandable and less deterministic.

Erik

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

Reply via email to