Post

Why is it that Windows is consistently slower than Linux at building software *for* Windows? I've got real numbers from CI builds of RDM Windows (.NET) on Windows and Linux runners as proof: Windows has a 1.33x median penalty. It's not a one-off, I re-ran the benchmarks 5 times

Microsoft doesn't seem to be doing much cross-compilation internally, so they'd be myopic to the problem. It's something I've observed over the past decade that I came to accept as a fact: in a CI matrix build job, Windows builds always finish last behind macOS and Linux.

I've heard various theories, but nothing "scientific": disk I/O, the cost of case insensitive filesystems, overhead of launching processes, you name it. At the end of the day, if you build exactly the same software targeting Windows from both Windows and Linux runners, Linux wins

I'm a Microsoft MVP and I use Windows daily, but my biggest wish is that Microsoft makes it easier to cross-compile *to* Windows. Why would the OS used to build Windows software matter, especially in CI, if it leads to the elimination of this 1.33x Windows penalty that's real?

0 reposts1 like

No replies yet.