www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Re: D compiler benchmarks

reply Jason House <jason.james.house gmail.com> writes:
Robert Clipsham Wrote:

 Hi all,
 
 I have set up some benchmarks for dmd, ldc and gdc at 
 http://dbench.octarineparrot.com/.
 
 There are currently only 6 tests all from 
 http://shootout.alioth.debian.org/gp4/d.php. My knowledge of phobos is 
 not great enough to port the others to tango (I've chosen tango as ldc 
 does not support phobos currently, so it make sense to choose tango as 
 all compilers support it). If you would like to contribute new tests or 
 improve on the current ones let me know and I'll include them next time 
 I run them.
 
 All source code can be found at 
 http://hg.octarineparrot.com/dbench/file/tip.
 
 Let me know if you have any ideas for how I can improve the benchmarks, 
 I currently plan to add compile times, size of the final executable and 
 memory usage (if anyone knows an easy way to get the memory usage of a 
 process in D, let me know :D).

I don't think it's proper to limit solutions to either Phobos or Tango, or either D1 or D2. Why not include all mixes of standard libraries, compilers, and major D versions? I've always heard Tango is faster... Let's see proof! Similarly, D2 aims to do multithreading better. I'd love to see performance and code differences between D1 and D2.
Mar 08 2009
parent Robert Clipsham <robert octarineparrot.com> writes:
Jason House wrote:
 I don't think it's proper to limit solutions to either Phobos or Tango, or
either D1 or D2. Why not include all mixes of standard libraries, compilers,
and major D versions?
 
 I've always heard Tango is faster... Let's see proof!
 Similarly, D2 aims to do multithreading better. I'd love to see performance
and code differences between D1 and D2.

These benchmarks are designed purely to test the compilers, not the libraries. I agree that it might be interesting to see benchmarks between tango and phobos, I might set some up at some point. I know there are already some benchmarks up for XML performance of tango/phobos/other xml libraries at http://dotnot.org/, as well as some tests showing performance of the GC at http://www.dsource.org/projects/tango/wiki/GCBenchmark. Neither of these are up to date or test the full extent of the libraries, but do show some difference in performance. As I stated in my post I chose tango purely because ldc does not currently support phobos. The choice of library should not affect performance as all benchmarks use stdc for any external functions. I will not be setting up benchmarks for D2 yet, as there is currently only one D2 compiler and it is in alpha. When there are multiple D2 compilers, I will set up some more benchmarks for them. Similarly when D2 moves out of alpha I will happily put it against D1 if there is demand.
Mar 08 2009