October 28, 2016 Re: Comparing compilation time of random code in C++, D, Go, Pascal and Rust | ||||
---|---|---|---|---|
| ||||
Posted in reply to Sebastien Alaiwan | 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
|
Copyright © 1999-2021 by the D Language Foundation