Compilation benchmark

Compilation
Speed Benchmark.

Select a programming language and a CPU to estimate compilation time for small, medium, and large projects. Compare your processor against reference tiers.

1

1. Select Language

Systems

Scripting

2

2. Project Size

3

3. Select CPU

code

Configure your estimate

Follow the three steps on the left to calculate estimated compilation time for your CPU.

data_objectChoose a programming language
folderSelect project size
memoryPick your CPU

Frequently asked questions

add

What makes a machine compile quickly?

Core count first, because compilation splits cleanly across cores. Then single-core speed, which governs linking and the parts that refuse to parallelise. Then memory capacity, since each parallel job needs its own, and finally the drive, which matters most on a cold build of a large tree.

add

More cores or a higher clock speed?

For full builds, more cores, almost without exception — the work is close to embarrassingly parallel. For the incremental builds you actually run all day, where one or two files change and the linker dominates, single-core speed matters more than the core count.

add

Will an NVMe drive speed up my builds?

On a clean build of a large project, noticeably. On incremental builds, much less than people expect, because the files in play are already in the operating system's cache. Moving from a mechanical drive is transformative; moving from a good SATA SSD to NVMe is not.

add

How much memory do I need?

Budget roughly 2 GB per parallel job for a large C++ project, so a 16-core machine running 16 jobs wants 32 GB and is happier with 64. Running out is worse than having too few cores: the machine starts swapping and the build slows to a crawl.

add

Does the operating system make a difference?

It can, and the gap is largest for projects with very many small files, where filesystem and process-creation overhead dominate. The effect is real but smaller than the difference between a four-core and a sixteen-core processor.

Keep going

Other tools and reference pages that pick up where this one leaves off.