1. 16
  1. 8

    TL;DR: The LLVM build system generates Ninja files where almost every step can be executed in parallel. The serial steps are links and, if you’re using LLD then linking uses multiple threads. If you have an embarrassingly parallel workload then a machine with a load of cores (160 here) can run it very fast.

    1. 4

      Not as impressive as the linked time (2 minutes! incredible), but I switching from an Intel to an ARM-based Macbook was like night and day in terms of building LLVM. What used to take 37 minutes and plenty of fan noise on my i7 now took 13 minutes of no noise at all.

      1. 1

        I‘d love to see someone aggregating these benchmarks and update them over time. Another interesting metric would be cost per compilation (simply the time it takes multiplied by the cost of the instance). Times could be measure just for the compilation and end to end (as in a CI pipeline).

        1. 1

          I, ahem, need this hardware. For… stuff. :)

          written from someone who works on a software project that takes 8~ minutes to build on a 28core machine.

          1. 2

            Rust was in reality just the idea of mozillians to slow down compile times to have more playtime