On Tue, Jan 16, 2018 at 1:42 PM, Ted Mielczarek <t...@mielczarek.org> wrote:
> On Tue, Jan 16, 2018, at 10:51 AM, Jean-Yves Avenard wrote: > > Sorry for resuming an old thread. > > > > But I would be interested in knowing how long that same Lenovo P710 > > takes to compile *today*….> In the past 6 months, compilation times have > certainly increased > > massively.> > > Anyhow, I’ve received yesterday the iMac Pro I ordered early December. > > It’s a 10 cores Xeon-W (W-2150B) with 64GB RAM> > > Here are the timings I measured, in comparison with the Mac Pro 2013 I > > have (which until today was the fastest machines I had ever used)> > > macOS 10.13.2: > > Mac Pro late 2013 : 13m25s > > iMac Pro : 7m20s > > > > Windows 10 fall creator > > Mac Pro late 2013 : 24m32s (was 16 minutes less than a year ago!) > > iMac Pro : 14m07s (16m10s with windows defender going) > > > > Interestingly, I can almost no longer get any benefits when using > > icecream, with 36 cores it saves 11s, with 52 cores it saves 50s only…> > > It’s a very sweet machine indeed > > I just did a couple of clobber builds against the tip of central > (9be7249e74fd) on my P710 running Windows 10 Fall Creators Update > and they took about 22 minutes each. Definitely slower than it > used to be :-/ > > On an EC2 c5.17xlarge (36+36 CPUs) running Ubuntu 17.10 and using Clang 5.0, 9be7249e74fd does a clobber but configured `mach build` in 7:34. Rust is very obviously the long pole in this build, with C++ compilation (not linking) completing in ~2 minutes. If I enable sccache for just Rust by setting "mk_add_options "export RUSTC_WRAPPER=sccache" in my mozconfig, a clobber build with populated cache for Rust completes in 3:18. And Rust is still the long pole - although only by a few seconds. It's worth noting that CPU time for this build remains in the same ballpark. But overall CPU utilization increases from ~28% to ~64%. There's still work to do improving the efficiency of the overall build system. But these are mostly in parts only touched by clobber builds. If you do `mach build binaries` after touching compiled code, our CPU utilization is terrific. From a build system perspective, C/C++ scales up to dozens of cores just fine (it's been this way for a few years). Rust is becoming a longer and longer long tail (assuming you have enough CPU cores that the vast amount of C/C++ completes before Rust does). _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform