Comparing compilation time of random code in C++, D, Go, Pascal and Rust

Johan Engelen via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Thu Oct 27 23:17:33 PDT 2016


On Friday, 28 October 2016 at 06:10:52 UTC, Sebastien Alaiwan 
wrote:
> 
> Having a the fastest compiler on earth still doesn't provide 
> scalability ; interestingly, when I build a full LLVM+LDC 
> toolchain, the longest step is the compilation of the dmd 
> frontend. It's the only part that is:
> 1) not cached: all the other source files from LLVM are 
> ccache'd.
> 2) sequential: my CPU load drops to 12.5%, although it's near 
> 100% for LLVM.

This is caused by how we set up the LDC build, and it needs 
fixing (the ARM buildbot times out due to the long build step of 
the D source!). The reason all D source is compiled at once is 
full inlining capability. Currently LDC does not cross-module 
inline for separate-compilation builds, so to get a fast compiler 
all D source must be compiled at once. :-(

-Johan





More information about the Digitalmars-d-announce mailing list