D performance guideline (request)

Georg Wrede georg at nospam.org
Sun Apr 13 13:07:23 PDT 2008


downs wrote:
> Craig Black wrote:
> 
>> In case it wasn't already mentioned, use Tango instead of Phobos.
>> It has a faster GC.
> 
> If your supposedly speed-efficient program is GC-bound, you have
> bigger problems than Tango or Phobos. :p

Seriously, there's a sharp and definitive point to that.

 From what I hear (since I still haven't tested Tango, my appologies to 
the Tango Team), Tango is an excellent library, and faster than Phobos 
in most things.

But it really is true: if your program uses new (and 'abandon') enough 
for the GC to become a major decider on library choice -- then you 
really should halt all work and step back. You literally have something 
else to worry about than the choice between libraries.

That choice can bring you (what? My guess is) maybe a 10-20% speedup in 
the *GC* things, which probably is only 2-5% of total execution time 
(since your program probably does a lot more than just wait for the GC 
to finish)!

So, staying with whatever was your library (Tango or Phobos), and 
spending the time on figuring out why your program thinks it's got a 
"frequent flyer plan" with the GC, would be time much better spent.

Speedups of 2x to 10x should not be impossible *in such a* situation. 
(For those who've suffered the contemporary school system, that's like 
100% to 900% better.)



More information about the Digitalmars-d mailing list