Why is D slower than LuaJIT?

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Thu Dec 23 06:28:50 PST 2010


On 12/23/10 7:04 AM, spir wrote:
> On Wed, 22 Dec 2010 22:14:34 -0600
> Andrei Alexandrescu<SeeWebsiteForEmail at erdani.org>  wrote:
>
>> I then replaced iota's implementation with a simpler one that's a
>> forward range. Then the performance became exactly the same as for the
>> simple loop.
>
>
> After having watched Iota's very general implementation, I tried the same change, precisely. Actually, with an even simpler range requiring a single element type for (first,last,step). For any reason, this alternative is slightly slower by me than using Iota (don't cry watching absolute times, my computer is old and slow ;-). Sample code below, typical results are:
>
> 1.1 3.3 5.5 7.7
> Interval time: 1149
> Iota time: 1066
>
> Note: adding an assert to ensure front or popfront is not wrongly called past the end adds ~ 20% time.

I cut my losses reading here :o). No performance test is meaningful 
without all optimizations turned on.

Andrei


More information about the Digitalmars-d mailing list