On Monday, 17 June 2013 at 15:41:24 UTC, nazriel wrote:
On Monday, 17 June 2013 at 13:47:20 UTC, bearophile wrote:
Andrei Alexandrescu:

http://www.reddit.com/r/programming/comments/1gie4b/dconf_2013_ldc_the_llvmbased_d_compiler_by_david/

Slide 14:

PFFT (SSE) seems slow on LDC2: if you can extract a small test
case LLVM devs will appreciate a lot a bug report (they fixed
many lacks of optimizations submitted by me). If you have a link
to the PFFT code them maybe I can do that myself.

I don't know what PFFT stands for (can't google it either, funny results shows up) but if it related to vectorization then maybe LDC has been slower because it was built against LLVM 3.3 while LLVM 3.4 brings more vector optimizations.

Maybe all what has to be done, is rerunning benchmarks against LDC + LLVM 3.4 ?

As far as I followed the LLVM commit list, the change is that the loop vectorizer is now enabled at -O2 (instead of -O3). I don't know the options David has used but I assume something like "ldmd2 -O -inline -release". "-O" from ldmd2 maps to -O3 and therefore enables the loop vectorizer.

Regards
Kai


Slide 25:
Implicit invariants often hard to track down

Then maybe it's a good idea to add such invariants to the dmd
front-end code, even before its port to D.

Bye,
bearophile

Reply via email to