Hi,

I have just rebased my branch on top of the master and the test suite still
pass.

I have a real world example here with performance. My project's build
system has 7113 commands to run. This is roughly 7 commands for each input
files. There are 1000 inputs files.

Just for the configuration step:
cmake latest release takes 59:50.10 minutes
cmake with my branch takes 1:06.98 minutes

So it is about an hour with the latest release and 1 minutes with the patch.

I have updated the code, so I hope it will be clearer now. I really want to
have this patch in the next release, since I cannot use cmake for my
project otherwise. I can work full time on this patch until the end of this
week if there is something to change.

Cheers,
-Nico

On Mon, Jul 29, 2013 at 2:40 PM, Nicolas Desprès
<nicolas.desp...@gmail.com>wrote:

>
>
>
> On Mon, Jul 29, 2013 at 2:25 PM, Stephen Kelly <steve...@gmail.com> wrote:
>
>> Nicolas Desprès wrote:
>>
>> >> Also, I don't see why the custom comparison functor is needed at all. I
>> >> removed it and sped up the test significantly. Can you explain?
>> >>
>> >
>> > I had some failing tests because the previous algorithm was not a plain
>> > strcpy().
>>
>> I don't see any strcpy(). Anyway, I think that's as much useful review I
>> can
>> do for you. I think Brad will have to do the rest.
>>
>>
> Arg. Sorry for being unclear (English is not my mother tongue).
>
> The std::less<string> comparator do the same thing (as strcpy() < 0).
> Unfortunately, we cannot use it here because the previous (O(N))
> implementation of cmMakefile::GetSourceFileWithOutput(const char*) was more
> complex than that (have a look to the code my path replaces). Of course, I
> first tried with the default comparator to save me some work but some tests
> were failing. Namely: ExportImport and CustomCommand.
>
> Hope this help.
> Thanks for your time.
> -Nico
>
>


-- 
Nicolas Desprès
--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers

Reply via email to