Profiling DMD's Compilation Time with dmdprof

Manu turkeyman at gmail.com
Thu Nov 8 04:18:17 UTC 2018


On Wed, Nov 7, 2018 at 8:16 PM Manu <turkeyman at gmail.com> wrote:
>
> On Tue, Nov 6, 2018 at 10:05 AM Vladimir Panteleev via
> Digitalmars-d-announce <digitalmars-d-announce at puremagic.com> wrote:
> >
> > This is a tool + article I wrote in February, but never got
> > around to finishing / publishing until today.
> >
> > https://blog.thecybershadow.net/2018/02/07/dmdprof/
> >
> > Hopefully someone will find it useful.
>
> "Indeed, a clean build of DMD itself (about 170’000 lines of D and
> 120’000 lines of C/C++) takes no longer than 4 seconds to build on a
> rather average developer machine."
>
> ...what!? DMD takes me... (compiling) ... 1 minute 40 seconds to build!
> And because DMD does all-files-at-once compilation, rather than
> separate compilation for each source file, whenever you change just
> one line in one file, you incur that entire build time, every time,
> because it can't just rebuild the one source file that changed. You
> also can't do multi-processor builds with all-in-one build strategies.
>
> 4 seconds? That's just untrue. D is actually kinda slow these days...
> In my experience it's slower than modern C++ compilers by quite a lot.

Also, in my experience, DMD seems to build a LOT slower now that it's
in D than it used to when it was C++.



More information about the Digitalmars-d-announce mailing list