For this round of tests I downloaded the latest versions of GCC, Clang and MSVC. I also compared against the current Ubuntu release of GCC and Clang.

CompilerVersionModule BuildModule UseInclude All
g++16.1.03345ms249ms1579ms
g++15.2.02280ms172ms877ms
clang22.16.62014ms52ms1545m
clang20.1.81491ms44ms1142ms
MSVC19.38.331452058ms81ms1295ms

Right now none of the compilers provided submodule support that I saw for the standard library. That means these are single threaded numbers as there is no opportunity for parallelism. These are C++23 unoptimized builds. The module use numbers involve importing the module and then emitting a single trivial function that used the module.

As someone with a real-time background I wouldn't quite characterize the module use numbers as "free."  By my calculations, if you saved all 4.4 million full-time C++ programmers 1 minute per working day for a year, it would equate to approximately 208 entire human lives worth of time.

Image saving 208 entire human lives from being lost staring at a compiler output window every year.  And all you have to do is shave a few milliseconds off those numbers. We are trying to save lives here folks.

The scripts for these testes are here:  https://github.com/whatchamacallem/cxx-std-include-bench