[llvm-dev] ThinLTO status in trunk?

Teresa Johnson via llvm-dev llvm-dev at lists.llvm.org
Fri Jul 22 15:45:18 PDT 2016


Thanks, Andrey.

The reason is that we enable a more aggressive pass pipeline in the ThinLTO
backends, Mehdi added this (see https://reviews.llvm.org/D17115). For full
LTO it is too expensive to have the more aggressive pass pipeline.

Teresa

On Fri, Jul 22, 2016 at 3:34 PM, <andreybokhanko at gmail.com> wrote:

> Hi Teresa,
>
> Impressive results, indeed! (But no less is expected from an Itanium
> alumni... ;-))
>
> One question, if you don't mind. In the blog post you wrote: "In a few
> cases ThinLTO even outperforms full LTO, most likely because the higher
> scalability of ThinLTO allows using a more aggressive backend optimization
> pipeline (similar to that of a non-LTO build)." Is it due to optimizations
> not working (in full LTO case) after hitting some internal limits? If so,
> my understanding is that these limits are expressed in units not affected
> by IPA representation (like function size, number of basic blocks, etc,
> *not* total memory consumption) -- how ThinLTO helps to stay within them?
>
> Yours,
> Andrey
>
> 22 июля 2016 г., в 22:36, Teresa Johnson via llvm-dev <
> llvm-dev at lists.llvm.org> написал(а):
>
> Hi Vikram,
>
> Thanks!
>
> I'm not sure what part got committed in the 3.8 timeframe - it looks like
> that was released back in March? A number of fixes have gone in since then
> so I would stick with a more recent version. The ThinLTO in trunk and
> (presumably 3.9 which seems to have not yet gone out?) is complete and
> working with multiple threads using gold.
>
> The distributed build support is also in (which needs support in the build
> system however), although I am fixing a few bugs right now that popped up
> in testing our internal apps. Which distributed build system do you use? We
> have support coming out in Bazel, which is our open sourced distributed
> build system.
>
> Let me know if you run into any issues or have any other questions!
>
> Teresa
>
>
> On Fri, Jul 22, 2016 at 12:15 PM, Adve, Vikram Sadanand via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> First, kudos on the ThinLTO results reported in your blog post — they’re
>> impressive and the system sounds really well engineered.
>>
>> I’m starting to try it out on a large piece of software and I’d like to
>> make sure I know what to expect.  The blog said it will be available in
>> clang-3.9 but both clang-3.8 and trunk seem to have some degree of support
>> for it.  What is the status of ThinLTO in 3.8 (preferably) or trunk
>> (otherwise)?  Are either of these usable with multiple threads?  What about
>> for a distributed build?
>>
>> Thanks!
>>
>> -—Vikram
>>
>> // Vikram S. Adve
>> // Professor, Department of Computer Science
>> // University of Illinois at Urbana-Champaign
>> // vadve at illinois.edu
>> // http://llvm.org
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
>
>
>
> --
> Teresa Johnson |  Software Engineer |  tejohnson at google.com |
> 408-460-2413
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
>


-- 
Teresa Johnson |  Software Engineer |  tejohnson at google.com |  408-460-2413
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160722/195b7960/attachment.html>


More information about the llvm-dev mailing list