utiliD: A library with absolutely no dependencies for bare-metal programming and bootstrapping other D libraries
H. S. Teoh
hsteoh at quickfur.ath.cx
Sat May 11 00:32:54 UTC 2019
On Sat, May 11, 2019 at 12:23:31AM +0000, Mike Franklin via Digitalmars-d-announce wrote:
[...]
> Also, take a look at this data:
> https://forum.dlang.org/post/jdfiqpronazgglrkmwfq@forum.dlang.org Why
> is DMD making 48,000 runtime calls to memcpy to copy 8 bytes of data?
> Many of those calls should be inlined. I see opportunity for
> improvement there.
[...]
When it comes to performance, I've essentially given up looking at DMD
output. DMD's inliner gives up far too easily, leading to a lot of calls
that aren't inlined when they really should be, and DMD's optimizer does
not have loop unrolling, which excludes a LOT of subsequent
optimizations that could have been applied. I wouldn't base any
performance decisions on DMD output. If LDC or GDC produces non-optimal
code, then we have cause to do something. Otherwise, IMO we're just
uglifying D code and making it unmaintainable for no good reason.
T
--
Recently, our IT department hired a bug-fix engineer. He used to work for Volkswagen.
More information about the Digitalmars-d-announce
mailing list