[llvm-dev] Switching to Ninja

Petr Hosek via llvm-dev llvm-dev at lists.llvm.org
Sat Aug 8 15:26:52 PDT 2020


You can set the LLVM_PARALLEL_LINK_JOBS CMake variable to restrict the
number of link jobs.

On Sat, Aug 8, 2020 at 3:00 PM Neil Nelson via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> https://ninja-build.org/manual.html
>
> ninja -h prints help output. Many of Ninja’s flags intentionally match
> those of Make; e.g ninja -C build -j 20 changes into the build directory
> and runs 20 build commands in parallel.
>
> Neil Nelson
> On 8/8/20 3:41 PM, David Blaikie via llvm-dev wrote:
>
> On Sat, Aug 8, 2020 at 2:22 PM Dmitry Mikushin via llvm-dev<llvm-dev at lists.llvm.org> <llvm-dev at lists.llvm.org> wrote:
>
> Ninja is really good, indeed. The only problem I've seen is that LLVM linking step (made massively parallel by Ninja) renders the 8GB RAM system unresponsive due to excessive swapping.
>
> FWIW, there is a way to limit the number of parallel link jobs in
> particular (so compile jobs can still have more parallelism). I don't
> recall exactly what it is - I guess some CMake variable.
>
>
> You can reconfigure CMake to use Ninja in an existing build folder, but it will not use the binaries previously built with another tool. Moreover, generated files may clash in an incompatible way, so it's rather better to cleanup the old build.
>
> Kind regards,
> - Dmitry.
>
> сб, 8 авг. 2020 г. в 23:12, Paul C. Anagnostopoulos via llvm-dev <llvm-dev at lists.llvm.org> <llvm-dev at lists.llvm.org>:
>
> I built my first submission with Visual Studio, but everything I read and watch suggests Ninja, about which I know nothing. Is it okay if I rerun CMake with -G "Ninja" in the same build directory, then just run ninja?
>
> _______________________________________________
> LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
> _______________________________________________
> LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
> _______________________________________________
> LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200808/9507c91c/attachment.html>


More information about the llvm-dev mailing list