Build rustc with 1CGU on x86_64-pc-windows-msvc by lqd · Pull Request #112267 · rust-lang/rust (original) (raw)

With local builds

benchmark baseline baseline noise baseline noise % 1CGU 1CGU %
clap:check 1.5633s 1.5692s +0.37% 1.5262s -2.37%
hyper:check 2.0482s 2.0505s +0.11% 1.9684s -3.89%
regex:check 0.8531s 0.8463s -0.79% 0.8090s -5.16%
syn:check 1.4539s 1.4536s -0.02% 1.4212s -2.25%
syntex_syntax:check 5.4296s 5.4065s -0.42% 5.2175s -3.91%
Total 11.3481s 11.3261s -0.19% 10.9424s -3.58%
Summary 1.6667s 1.6642s -0.15% 1.6080s -3.52%

also looks good via hyperfine, on clean check builds w/ dependencies.

I'm having more noise than usual here for the local runs, on a few of the short crates. So that ends up as:

image

So I'm not able to reproduce the +144% on helloworld here, it looks the same e.g.

Benchmark 1: baseline cargo check
  Time (mean ± σ):     145.7 ms ±   1.9 ms    [User: 0.0 ms, System: 7.5 ms]
  Range (min … max):   144.1 ms … 148.9 ms    5 runs
 
Benchmark 2: 1CGU cargo check
  Time (mean ± σ):     145.1 ms ±   2.2 ms    [User: 0.0 ms, System: 5.6 ms]
  Range (min … max):   142.7 ms … 147.5 ms    5 runs

That sort of things happened on another run with the noisy subset and this helloworld noise showed up only as +44% there yay

image

With the two try builds

With the two try builds it's more confusing, I'm seeing less of a win manually, in the noise on the few rcb benchmarks above.

And on rustc-perf's

image

similar noisy outliers that I can't reproduce otherwise with a higher iteration count, eg syn supposedly had a +16% but it's a wash in reality

Benchmark 1: cargo +try-parent-win-1cgu check
  Time (mean ± σ):      1.693 s ±  0.045 s    [User: 0.003 s, System: 0.007 s]
  Range (min … max):    1.647 s …  1.748 s    5 runs

Benchmark 2: cargo +try-win-1cgu check
  Time (mean ± σ):      1.678 s ±  0.029 s    [User: 0.000 s, System: 0.007 s]
  Range (min … max):    1.631 s …  1.705 s    5 runs