Profiling DMD's Compilation Time with dmdprof

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


On Wed, Nov 7, 2018 at 8:18 PM Manu <turkeyman at gmail.com> wrote:
>
> 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++.

Oh, and also, nice work Vladimir! This is awesome! :)



More information about the Digitalmars-d-announce mailing list