On Fri, Feb 6, 2009 at 10:54 AM, Nicolas Sylvain <nsylv...@chromium.org>wrote:

>
>
> On Thu, Feb 5, 2009 at 10:56 AM, John Abd-El-Malek <j...@chromium.org>wrote:
>
>>
>> One idea I've been thinking about is timing how long a clean build
>> takes, and tracking that just as we do with other performance tests.
>> The goal would be to notice when someone introduces an unnecessary
>> dependency that slows the build.  Obviously if it's needed, that's ok.
>>
>> Chromium-XP does a full build each time, I wonder how easy it would be
>> to plot its build times?
>
>
> I attached a graph of the build time of Chromium XP over the last 3000
> changelists.
>
> I manually removed all the really high values (10% higher than the previous
> and the next build), otherwise it was too noisy.
>
> It's still really noisy, but we can see an increase of about 1 minute and
> 40 seconds to the compile time between revision 7755 and 7774.
>
> It was not obvious to me what was the cause by looking at all the changes
> in this range. Maybe a webkit merge. Maybe the new dependency on browser.
>
> It's important to note that this machine is using incredibuild.
>

Interesting graph.  I think using the time from incredibuild will be noisy
due to how many other builds are going on at the same time.  What would be
more work, but more accurate, would be if we kick off a full build on the
other machines without incredibuild (or this one with IB disabled) every
night.


>
> Nicolas
>
>
>
>>
>> On Thu, Feb 5, 2009 at 10:48 AM, Evan Martin <e...@chromium.org> wrote:
>> > I fear we have a have a couple long threads of headers that touch
>> > everything.  At one point we had something like: v8 bindings -> stats
>> > table -> process_util -> process, which meant if you touched any of
>> > our process-management code we'd rebuild all of WebKit's SVG bindings.
>> >  :~(
>> >
>> > For an especially painful build, try touching npapi.h.  Apparently
>> > most of our project depends on that file.
>> >
>> > On Thu, Feb 5, 2009 at 10:29 AM, John Abd-El-Malek <j...@chromium.org>
>> wrote:
>> >>
>> >> I've gone through the code and removed all such occurrences. This
>> >> speeds up the build from 15 to 13 minutes (using /MP on quadcore with
>> >> SSD). It also means that editing that file only rebuilds 36 files
>> >> instead of 200.
>> >>
>> >> There shouldn't be any reason to include that file from a header. The
>> >> reason this has happened is that people have ended up using structs
>> >> that define the parameters of an IPC message with many parameters as
>> >> member variables in classes. If this happens, then the struct should
>> >> just be moved to its own file outside of render_messages.h.
>> >>
>> >> >>
>> >>
>> >
>>
>> >>
>>
>

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

Reply via email to