[cmake-developers] CMake is slow for project with hundred target and one command with large number of dependencies

Nicolas Desprès nicolas.despres at gmail.com
Mon Jul 15 06:55:36 EDT 2013


On Mon, Jul 15, 2013 at 12:45 PM, Nicolas Desprès <nicolas.despres at gmail.com
> wrote:

>
>
>
> On Mon, Jul 15, 2013 at 11:53 AM, Stephen Kelly <steveire at gmail.com>wrote:
>
>> Nicolas Desprès wrote:
>> >>> > I have pushed my work so far on my github clone of CMake.
>> >>> > https://github.com/nicolasdespres/CMake/tree/topic/large-deps-perf
>> >>>
>>
>> Thanks. The bottleneck seems to be in
>>
>>  cmTargetTraceDependencies::FollowName
>>
>> as it follows each entry in the LARGE_LIST for each of the 100 targets.
>>
>
> Yes that one or cmMakefile::GetSourceFileWithOutput(char const*). I can
> send you a gzipped of my callgrind data off-list if you want (it
> weights 534K).
>
If we had a map associating each input to output, we could maybe have
better performance. WDYT?

>
>

>
>> >>
>> >> I also cleaned that up a bit.
>>
>> At least ninja_convenience_targets seems to be obsolete too? I didn't
>> check
>> the others. Just looking through my 'git branch -a' output :).
>>
>>
> That's right. I have deleted it.
> Thanks,
> Nico
>
>


-- 
Nicolas Desprès
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake-developers/attachments/20130715/dae3051e/attachment.html>


More information about the cmake-developers mailing list