www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - D programs broken at Language Shootout

reply Christof Boeckler <post06 jamesie.de> writes:
Hi all,

I am no D programmer yet, but I noticed that five of the programs at The 
Computer Language Shootout Benchmarks 
(http://shootout.alioth.debian.org/) broke after updating the compiler to 
version 1.00 on the Gentoo machine. It seems to be a simple fix although.

In the meantime D fell back to rank 5 in the default "all 
benchmarks"/"all languages" view.

Regards
	Christof
Jan 03 2007
next sibling parent reply janderson <askme me.com> writes:
Christof Boeckler wrote:
 Hi all,
 
 I am no D programmer yet, but I noticed that five of the programs at The 
 Computer Language Shootout Benchmarks 
 (http://shootout.alioth.debian.org/) broke after updating the compiler 
 to version 1.00 on the Gentoo machine. It seems to be a simple fix 
 although.
 
 In the meantime D fell back to rank 5 in the default "all 
 benchmarks"/"all languages" view.
 
 Regards
     Christof

http://shootout.alioth.debian.org/debian/benchmark.php?test=all&lang=dlang&lang2=gcc I note that D is worse on everything then gcc except for a few cases where the differences are extream. I think D's score would be much lower without chameneos and cheap-concurrency. It would be nice if someone could work out exactly what is causing the performance drop in each of the other algorithms. There maybe somethings that Walter could tweak in the compiler. -Joel
Jan 04 2007
next sibling parent reply kmk <kmkozan hotmail.com> writes:
I noticed the performance drop too. At closer inspection, it appears
the benchmark is taking into account those 5 programs even though they didn't
run
(compilation errors due to the 'arrays not implicitly converted to pointers'
change). If you "zero" out those 5 benchmarks, D jumps up to #2.

I submitted revised versions of each of the broken programs.
Jan 04 2007
parent reply Dave <Dave_member pathlink.com> writes:
kmk wrote:
 I noticed the performance drop too. At closer inspection, it appears
 the benchmark is taking into account those 5 programs even though they didn't
run
 (compilation errors due to the 'arrays not implicitly converted to pointers'
 change). If you "zero" out those 5 benchmarks, D jumps up to #2.
 
 I submitted revised versions of each of the broken programs.

I did that last night and it looks to be fixed already.
Jan 04 2007
parent reply kmk <kmkozan hotmail.com> writes:
"I did that last night and it looks to be fixed already."

Yes, D is back to #3

I tried to get them to add GDC but they said it was too much work.
Jan 04 2007
parent reply Christof Boeckler <post06 jamesie.de> writes:
kmk schrieb:
 "I did that last night and it looks to be fixed already."
 
 Yes, D is back to #3

Strange though that on the AMD Sempron machine (see http://shootout.alioth.debian.org/debian/) DMC is even #1 with quite a gap between C and C++.
 I tried to get them to add GDC but they said it was too much work.

Jan 05 2007
parent reply kmk <kmkozan hotmail.com> writes:
== Quote from Christof Boeckler (post06 jamesie.de)'s article
 kmk schrieb:
 "I did that last night and it looks to be fixed already."

 Yes, D is back to #3

http://shootout.alioth.debian.org/debian/) DMC is even #1 with quite a gap between C and C++.
 I tried to get them to add GDC but they said it was too much work.


Yeah, D has always seemed to do better on AMD processors.
Jan 05 2007
parent reply Frits van Bommel <fvbommel REMwOVExCAPSs.nl> writes:
kmk wrote:
 == Quote from Christof Boeckler (post06 jamesie.de)'s article
 kmk schrieb:
 "I did that last night and it looks to be fixed already."

 Yes, D is back to #3

http://shootout.alioth.debian.org/debian/) DMC is even #1 with quite a gap between C and C++.
 I tried to get them to add GDC but they said it was too much work.


Yeah, D has always seemed to do better on AMD processors.

Maybe Walter uses AMD and uses measurements on his dev PC for optimization decisions? :)
Jan 05 2007
parent reply Dave <Dave_member pathlink.com> writes:
Frits van Bommel wrote:
 kmk wrote:
 == Quote from Christof Boeckler (post06 jamesie.de)'s article
 kmk schrieb:
 "I did that last night and it looks to be fixed already."

 Yes, D is back to #3

http://shootout.alioth.debian.org/debian/) DMC is even #1 with quite a gap between C and C++.
 I tried to get them to add GDC but they said it was too much work.


Yeah, D has always seemed to do better on AMD processors.

Maybe Walter uses AMD and uses measurements on his dev PC for optimization decisions? :)

I think it's because AMD has a shorter pipeline (like the Intel PIII and new Intel Core 2) and isn't so sensitive to cache alignment issues, etc. The DMC backend optimizer was probably last enhanced when the PIII was the hot chip <g> Funny thing is that since Walter didn't chase the P4, now his compiler optimizer might sitting pretty for Core 2 :) Anyone running a Core 2 system and have a little time? Might be interesting...
Jan 05 2007
next sibling parent Bradley Smith <digitalmars-com baysmith.com> writes:
Dave wrote:
 Frits van Bommel wrote:
 kmk wrote:
 == Quote from Christof Boeckler (post06 jamesie.de)'s article
 kmk schrieb:
 "I did that last night and it looks to be fixed already."

 Yes, D is back to #3

http://shootout.alioth.debian.org/debian/) DMC is even #1 with quite a gap between C and C++.
 I tried to get them to add GDC but they said it was too much work.


Yeah, D has always seemed to do better on AMD processors.

Maybe Walter uses AMD and uses measurements on his dev PC for optimization decisions? :)

I think it's because AMD has a shorter pipeline (like the Intel PIII and new Intel Core 2) and isn't so sensitive to cache alignment issues, etc. The DMC backend optimizer was probably last enhanced when the PIII was the hot chip <g> Funny thing is that since Walter didn't chase the P4, now his compiler optimizer might sitting pretty for Core 2 :) Anyone running a Core 2 system and have a little time? Might be interesting...

The Shootout appears to be using different implementations for the Pentium 4 and Sempron benchmarks. Compare the programs at the following URLs: http://shootout.alioth.debian.org/debian/benchmark.php?test=regexdna&lang=dlang http://shootout.alioth.debian.org/gp4/benchmark.php?test=regexdna&lang=dlang One is using std.regexp, and the other isn't.
Jan 05 2007
prev sibling parent reply Don Clugston <dac nospam.com.au> writes:
Dave wrote:
 Frits van Bommel wrote:
 kmk wrote:
 == Quote from Christof Boeckler (post06 jamesie.de)'s article
 kmk schrieb:
 "I did that last night and it looks to be fixed already."

 Yes, D is back to #3

http://shootout.alioth.debian.org/debian/) DMC is even #1 with quite a gap between C and C++.
 I tried to get them to add GDC but they said it was too much work.


Yeah, D has always seemed to do better on AMD processors.

Maybe Walter uses AMD and uses measurements on his dev PC for optimization decisions? :)

I think it's because AMD has a shorter pipeline (like the Intel PIII and new Intel Core 2) and isn't so sensitive to cache alignment issues, etc. The DMC backend optimizer was probably last enhanced when the PIII was the hot chip <g> Funny thing is that since Walter didn't chase the P4, now his compiler optimizer might sitting pretty for Core 2 :)

Ironic. But IMHO, the P4's a horrible chip, and was never going to be the basis for future CPUs. Driven by marketing (highest clock speed at all costs, even though it makes it slower). Did awful things to the x87 performance, too.
 Anyone running a Core 2 system and have a little time? Might be 
 interesting...

Jan 09 2007
parent Sean Kelly <sean f4.ca> writes:
Don Clugston wrote:
 
 Ironic. But IMHO, the P4's a horrible chip, and was never going to be 
 the basis for future CPUs. Driven by marketing (highest clock speed at 
 all costs, even though it makes it slower). Did awful things to the x87 
 performance, too.

Yup. I never understood all the hype, when the P4 actually performed slower than the P3. I think the P4 was probably responsible for Intel losing a lot of market share to AMD. Sean
Jan 09 2007
prev sibling next sibling parent Stewart Gordon <smjg_1998 yahoo.com> writes:
janderson wrote:
<snip>
 I note that D is worse on everything then gcc except for a few cases 
 where the differences are extream.

How do you determine whether a language is better or worse than a compiler? Stewart.
Jan 05 2007
prev sibling parent Lutger <lutger.blijdestijn gmail.com> writes:
janderson wrote:
 I note that D is worse on everything then gcc except for a few cases 
 where the differences are extream.

For what it's worth, not that much worse than gcc C, and actually scores better than gcc C++. GDC is probably on par with C? That is, better than C++ with the same backend optimizer. Or are the D programs just optimized better?
Jan 05 2007
prev sibling next sibling parent Bradley Smith <digitalmars-com baysmith.com> writes:
It is also interesting how the regex-dna benchmark has changed.

Comparing D Digital Mars to C gcc: 
http://shootout.alioth.debian.org/debian/benchmark.php?test=all&
ang=dlang&lang2=gcc 
regex-dna 495, -3.3, 1.1

http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=dlang&lang2=gcc
regex-dna -1.2, -10.6, 2.2

It appears the implementation has changed, and perhaps is not even the 
same algorithm anymore.

   Bradley


Christof Boeckler wrote:
 Hi all,
 
 I am no D programmer yet, but I noticed that five of the programs at The 
 Computer Language Shootout Benchmarks 
 (http://shootout.alioth.debian.org/) broke after updating the compiler 
 to version 1.00 on the Gentoo machine. It seems to be a simple fix 
 although.
 
 In the meantime D fell back to rank 5 in the default "all 
 benchmarks"/"all languages" view.
 
 Regards
     Christof

Jan 04 2007
prev sibling parent Stewart Gordon <smjg_1998 yahoo.com> writes:
http://shootout.alioth.debian.org/gp4/miscfile.php?file=benchmarking&title=Flawed%20Benchmarks

"Do your programs avoid library re-use, like these benchmarks?"

What does it mean by "library re-use" exactly?

Stewart.
Jan 05 2007