On Thursday, 27 October 2016 at 12:11:09 UTC, Johan Engelen wrote:
On Thursday, 27 October 2016 at 06:43:15 UTC, Sebastien Alaiwan
If code generation/optimization is the bottleneck, a
"ccache-for-D" ("dcache"?) tool might be very beneficial.
See
https://johanengelen.github.io/ldc/2016/09/17/LDC-object-file-caching.html
I also have a working dcache implementation in LDC but it still
needs some polishing.
Hashing the LLVM bitcode ... how come I didn't think about this
before!
Unless someone manages to do the same thing with gdc + GIMPLE,
this could very well be the "killer" feature of LDC ...
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.