|
Message-ID: <CAK8P3a1k_cq3NOUeuQC4-uKDBaGq49GSjAMSiS_M9AVMBxv51g@mail.gmail.com> Date: Tue, 8 Dec 2020 23:20:32 +0100 From: Arnd Bergmann <arnd@...nel.org> To: Nick Desaulniers <ndesaulniers@...gle.com> Cc: Sami Tolvanen <samitolvanen@...gle.com>, Masahiro Yamada <masahiroy@...nel.org>, Steven Rostedt <rostedt@...dmis.org>, Will Deacon <will@...nel.org>, Josh Poimboeuf <jpoimboe@...hat.com>, Peter Zijlstra <peterz@...radead.org>, Greg Kroah-Hartman <gregkh@...uxfoundation.org>, "Paul E. McKenney" <paulmck@...nel.org>, Kees Cook <keescook@...omium.org>, clang-built-linux <clang-built-linux@...glegroups.com>, Kernel Hardening <kernel-hardening@...ts.openwall.com>, linux-arch <linux-arch@...r.kernel.org>, Linux ARM <linux-arm-kernel@...ts.infradead.org>, Linux Kbuild mailing list <linux-kbuild@...r.kernel.org>, "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>, linux-pci <linux-pci@...r.kernel.org> Subject: Re: [PATCH v8 00/16] Add support for Clang LTO On Tue, Dec 8, 2020 at 10:10 PM 'Nick Desaulniers' via Clang Built Linux <clang-built-linux@...glegroups.com> wrote: > > On Tue, Dec 8, 2020 at 1:00 PM Arnd Bergmann <arnd@...nel.org> wrote: > > > > On Tue, Dec 8, 2020 at 5:43 PM 'Sami Tolvanen' via Clang Built Linux > > <clang-built-linux@...glegroups.com> wrote: > > > > > > On Tue, Dec 8, 2020 at 4:15 AM Arnd Bergmann <arnd@...nel.org> wrote: > > > > > > > > - one build seems to take even longer to link. It's currently at 35GB RAM > > > > usage and 40 minutes into the final link, but I'm worried it might > > > > not complete > > > > before it runs out of memory. I only have 128GB installed, and google-chrome > > > > uses another 30GB of that, and I'm also doing some other builds in parallel. > > > > Is there a minimum recommended amount of memory for doing LTO builds? > > > > > > When building arm64 defconfig, the maximum memory usage I measured > > > with ThinLTO was 3.5 GB, and with full LTO 20.3 GB. I haven't measured > > > larger configurations, but I believe LLD can easily consume 3-4x that > > > much with full LTO allyesconfig. > > > > Ok, that's not too bad then. Is there actually a reason to still > > support full-lto > > in your series? As I understand it, full LTO was the initial approach and > > used to work better, but thin LTO is actually what we want to use in the > > long run. Perhaps dropping the full LTO option from your series now > > that thin LTO works well enough and uses less resources would help > > avoid some of the problems. > > While all developers agree that ThinLTO is a much more palatable > experience than full LTO; our product teams prefer the excessive build > time and memory high water mark (at build time) costs in exchange for > slightly better performance than ThinLTO in <benchmarks that I've been > told are important>. Keeping support for full LTO in tree would help > our product teams reduce the amount of out of tree code they have. As > long as <benchmarks that I've been told are important> help > sell/differentiate phones, I suspect our product teams will continue > to ship full LTO in production. Ok, fair enough. How about marking FULL_LTO as 'depends on !COMPILE_TEST' then? I'll do that locally for my randconfig tests, but it would help the other build bots that also force-enable COMPILE_TEST. Arnd
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.