[Performance] shootout.binarytrees when implemented with gc is10x slower than C# on .NET 2.0
Andrey Khropov
andkhropov_nosp at m_mtu-net.ru
Sun Nov 12 02:13:29 PST 2006
Kyle Furlong wrote:
> Andrey, its no secret that the D GC is not implemented to be the fastest
> around. C# I believe uses at the least a generational collector, which I
> think is also copying.
>
> D currently uses a conservative mark and sweep collector. Rock solid, but
> slow.
My point here is that if we want to successfully compete with .NET we should
adapt a better (copying,generational) collector.
Of course it poses some problems (pointers to GC data for example), but if we
have to go back to new/delete/malloc/free to get fast code (and it's actually
very likely that C#'s GC with the fast allocation will be faster anyway (as in
this case) unless we employ some special trickery like allocation lists) it
spoils the whole idea of GC as a primary memory management mechanism for D.
--
AKhropov
More information about the Digitalmars-d
mailing list