<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">r303341 is the re-commit of the r303259 which tripled the number of rules that can be imported into GlobalISel from SelectionDAG. A compile time regression is to be expected but when I looked into it I found it was ~25s on my machine for the whole incremental build rather than the ~12mins you are seeing. I'll take another look.<div class=""><br class=""></div><div class="">I'm aware of a couple easy improvements we could make to the way the importer works. I was leaving them until we change it over to a state machine but the most obvious is to group rules by their top-level gMIR instruction. This would reduce the cost of the std::sort that handles the rule priorities in generating the source file and will also make it simpler for the compiler to compile it.<br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On 21 May 2017, at 11:16, Vitaly Buka <<a href="mailto:vitalybuka@google.com" class="">vitalybuka@google.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">It must be r303341, I commented on corresponding llvm-commits thread.<br class=""></div><div class="gmail_extra"><br class=""><div class="gmail_quote">On Fri, May 19, 2017 at 7:34 AM, Diana Picus via llvm-dev <span dir="ltr" class=""><<a href="mailto:llvm-dev@lists.llvm.org" target="_blank" class="">llvm-dev@lists.llvm.org</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Ok, thanks. I'll try to do a bisect next week to see if I can find it.<br class="">
<br class="">
Cheers,<br class="">
Diana<br class="">
<div class="HOEnZb"><div class="h5"><br class="">
On 19 May 2017 at 16:29, Daniel Sanders <<a href="mailto:daniel_l_sanders@apple.com" class="">daniel_l_sanders@apple.com</a>> wrote:<br class="">
><br class="">
>> On 19 May 2017, at 14:54, Daniel Sanders via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a>> wrote:<br class="">
>><br class="">
>> r303259 will have increased compile-time since it tripled the number of importable<br class="">
>> SelectionDAG rules but a quick measurement building the affected file:<br class="">
>>    ninja lib/Target/<Target>/<wbr class="">CMakeFiles/LLVM<Target><wbr class="">CodeGen.dir/<Target><wbr class="">InstructionSelector.cpp.o<br class="">
>> for both ARM and AArch64 didn't show a significant increase. I'll check whether<br class="">
>> it made a different to linking.<br class="">
><br class="">
> I don't think it's r303259. Starting with a fully built r303259, then updating to r303258 and running 'ninja' gives me:<br class="">
>         real    2m28.273s<br class="">
>         user    13m23.171s<br class="">
>         sys     0m47.725s<br class="">
> then updating to r303259 and running 'ninja' again gives me:<br class="">
>         real    2m19.052s<br class="">
>         user    13m38.802s<br class="">
>         sys     0m44.551s<br class="">
><br class="">
>> sanitizer-x86_64-linux-fast also timed out after one of my commits this morning.<br class="">
>><br class="">
>>> On 19 May 2017, at 14:14, Diana Picus <<a href="mailto:diana.picus@linaro.org" class="">diana.picus@linaro.org</a>> wrote:<br class="">
>>><br class="">
>>> Hi,<br class="">
>>><br class="">
>>> We've noticed that recently some of our bots (mostly<br class="">
>>> clang-cmake-armv7-a15 and clang-cmake-thumbv7-a15) started timing out<br class="">
>>> whenever someone commits a change to TableGen:<br class="">
>>><br class="">
>>> r303418: <a href="http://lab.llvm.org:8011/builders/clang-cmake-armv7-a15/builds/7268" rel="noreferrer" target="_blank" class="">http://lab.llvm.org:8011/<wbr class="">builders/clang-cmake-armv7-<wbr class="">a15/builds/7268</a><br class="">
>>> r303346: <a href="http://lab.llvm.org:8011/builders/clang-cmake-armv7-a15/builds/7242" rel="noreferrer" target="_blank" class="">http://lab.llvm.org:8011/<wbr class="">builders/clang-cmake-armv7-<wbr class="">a15/builds/7242</a><br class="">
>>> r303341: <a href="http://lab.llvm.org:8011/builders/clang-cmake-armv7-a15/builds/7239" rel="noreferrer" target="_blank" class="">http://lab.llvm.org:8011/<wbr class="">builders/clang-cmake-armv7-<wbr class="">a15/builds/7239</a><br class="">
>>> r303259: <a href="http://lab.llvm.org:8011/builders/clang-cmake-armv7-a15/builds/7198" rel="noreferrer" target="_blank" class="">http://lab.llvm.org:8011/<wbr class="">builders/clang-cmake-armv7-<wbr class="">a15/builds/7198</a><br class="">
>>><br class="">
>>> TableGen changes before that (I checked about 3-4 of them) don't have<br class="">
>>> this problem:<br class="">
>>> r303253: <a href="http://lab.llvm.org:8011/builders/clang-cmake-armv7-a15/builds/7197" rel="noreferrer" target="_blank" class="">http://lab.llvm.org:8011/<wbr class="">builders/clang-cmake-armv7-<wbr class="">a15/builds/7197</a><br class="">
>>><br class="">
>>> That one in particular actually finishes the whole build in 635s,<br class="">
>>> which is only a bit over 50% of the timeout limit (1200s). So, between<br class="">
>>> r303253 and now, something happened that made full builds<br class="">
>>> significantly slower. Does anyone have any idea what that might have<br class="">
>>> been? Also, has anyone noticed this on other bots?<br class="">
>>><br class="">
>>> Thanks,<br class="">
>>> Diana<br class="">
>><br class="">
>> ______________________________<wbr class="">_________________<br class="">
>> LLVM Developers mailing list<br class="">
>> <a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a><br class="">
>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank" class="">http://lists.llvm.org/cgi-bin/<wbr class="">mailman/listinfo/llvm-dev</a><br class="">
><br class="">
______________________________<wbr class="">_________________<br class="">
LLVM Developers mailing list<br class="">
<a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a><br class="">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank" class="">http://lists.llvm.org/cgi-bin/<wbr class="">mailman/listinfo/llvm-dev</a><br class="">
</div></div></blockquote></div><br class=""></div>
</div></blockquote></div><br class=""></div></body></html>