<div><div dir="auto">Cool, thanks! So LLVM community really</div></div><div dir="auto">prefers Ninja over Make. Thanks for the link</div><div dir="auto">to the pools feature!</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Apr 5, 2020 at 5:27 Mehdi AMINI <<a href="mailto:joker.eph@gmail.com">joker.eph@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Apr 4, 2020 at 1:20 PM Itaru Kitayama <<a href="mailto:itaru.kitayama@gmail.com" target="_blank">itaru.kitayama@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div dir="auto">Then I’d suggest this should be renamed.</div></div><div dir="auto">IMO it’s pretty much confusing.</div><div dir="auto"><br></div><div dir="auto">it’s so easy to set ninja parallelism with the direct -j option as all we know.</div></blockquote><div><br></div><div>The `-j` option is limiting the parallelism overall, this CMake option will limit specifically the number of *linker* invocation without limiting the number of compiler invocation, this is much more fine grain.</div><div><br></div><div>The feature is based on the "<a href="https://ninja-build.org/manual.html#ref_pool" target="_blank">pools</a>" feature of ninja.</div><div><br></div><div>Feel free to suggest a better name...</div></div></div><div dir="ltr"><div class="gmail_quote"><div><br></div><div>-- </div><div>Mehdi</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Apr 5, 2020 at 2:30 Mehdi AMINI <<a href="mailto:joker.eph@gmail.com" target="_blank">joker.eph@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Apr 2, 2020 at 11:35 AM Itaru Kitayama via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div dir="auto">Setting LLVM_PARALLEL_LINK_JOBS<br></div></div><div dir="auto">did not help a week or two weeks ago’s lld.</div><div dir="auto"><br></div><div dir="auto">But recent commits to lld might reflect the variable correctly.</div></blockquote><div><br></div><div>FYI: the variable has nothing to do with lld itself (not commits to lld would change the behavior of this flag), as far as I know this is purely instructing ninja to limit the number of parallel invocation to the linker.</div><div>(It does not help limiting the parallelism when running the lld test-suite though)</div><div><br></div><div>-- </div><div>Mehdi</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"></blockquote></div></div><div dir="ltr"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Apr 2, 2020 at 22:52 Robinson, Paul <<a href="mailto:paul.robinson@sony.com" target="_blank">paul.robinson@sony.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><br>
<br>
> -----Original Message-----<br>
> From: llvm-dev <<a href="mailto:llvm-dev-bounces@lists.llvm.org" target="_blank">llvm-dev-bounces@lists.llvm.org</a>> On Behalf Of Tom Stellard<br>
> via llvm-dev<br>
> Sent: Wednesday, April 1, 2020 7:49 PM<br>
> To: Itaru Kitayama <<a href="mailto:itaru.kitayama@gmail.com" target="_blank">itaru.kitayama@gmail.com</a>><br>
> Cc: Nemanja Ivanovic via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>><br>
> Subject: Re: [llvm-dev] LLD issue on a massively parallel build machine<br>
> <br>
> On 04/01/2020 04:12 PM, Itaru Kitayama wrote:<br>
> > On another login node which is 256 (GB)/48 (nodes) JURECA at JSC, I<br>
> never had an LLD issue without setting -j when executing ninja<br>
> > in the past few weeks.<br>
> ><br>
> > On Thu, Apr 2, 2020 at 7:17 AM Itaru Kitayama <<a href="mailto:itaru.kitayama@gmail.com" target="_blank">itaru.kitayama@gmail.com</a><br>
> <mailto:<a href="mailto:itaru.kitayama@gmail.com" target="_blank">itaru.kitayama@gmail.com</a>>> wrote:<br>
> ><br>
> >     Tom,<br>
> >     Then what ratio do you think it’s minimal?<br>
> ><br>
> <br>
> It really depends on your configuration, but I usually try to have at<br>
> least 2 GB<br>
> of memory per core.  However, I usually do Release builds, so Debug builds<br>
> might<br>
> need more.  If you aren't using LLVM_PARALLEL_LINK_JOBS it's pretty easy<br>
> to<br>
> run out of memory once ninja starts linking the tools and unittests.<br>
> <br>
> -Tom<br>
<br>
For Debug (or RelWithDebInfo) I usually figure on around 5GB per thread<br>
to avoid swapping.  Compiling is never an issue, it's the linking phase<br>
that uses memory.  LLVM_PARALLEL_LINK_JOBS works well for ninja builds,<br>
it has been a real help.<br>
--paulr<br>
</blockquote></div></div></blockquote></div></div><div dir="ltr"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div></div>
</blockquote></div></div>
</blockquote></div></div>
</blockquote></div></div>