Basic benchmark
Denis Koroskin
2korden at gmail.com
Mon Dec 15 19:00:07 PST 2008
On Tue, 16 Dec 2008 05:28:16 +0300, Bill Baxter <wbaxter at gmail.com> wrote:
> On Tue, Dec 16, 2008 at 11:09 AM, Andrei Alexandrescu
> <SeeWebsiteForEmail at erdani.org> wrote:
>> Jarrett Billingsley wrote:
>>>
>>> On Sat, Dec 13, 2008 at 11:16 AM, Tomas Lindquist Olsen
>>> <tomas at famolsen.dk> wrote:
>>>>
>>>> I tried this out with Tango + DMD 1.033, Tango + LDC r847 and GCC
>>>> 4.3.2,
>>>> my
>>>> timings are as follows, best of three:
>>>>
>>>> $ dmd bench.d -O -release -inline
>>>> long arith: 55630 ms
>>>> nested loop: 5090 ms
>>>>
>>>>
>>>> $ ldc bench.d -O3 -release -inline
>>>> long arith: 13870 ms
>>>> nested loop: 120 ms
>>>>
>>>>
>>>> $ gcc bench.c -O3 -s -fomit-frame-pointer
>>>> long arith: 13600 ms
>>>> nested loop: 170 ms
>>>>
>>>>
>>>> My cpu is: Athlon64 X2 3800+
>>>>
>>>
>>> Go LDC!
>>>
>>> I hope bearophile will eventually understand that DMD is not good at
>>> optimizing code, and so comparing its output to GCC's is ultimately
>>> meaningless.
>>
>> I must have missed the memo. How is dmd not good at optimizing code?
>> Without
>> knowing many details about it, my understanding is that dmd performs
>> common
>> optimization reasonably well and that this particular problem has to do
>> with
>> the long division routine.
>
> It's pretty well proven that for floating point code, DMD tends to
> generate code about 50% slower than GCC.
>
> --bb
But other than that it is pretty good.
And man, it is so fast!
More information about the Digitalmars-d
mailing list