Visual Studio Community and .NET Open Source
via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Fri Nov 21 01:31:15 PST 2014
On Friday, 21 November 2014 at 08:02:07 UTC, philippecp wrote:
> The problem is I'm not sure how much of those principles can be
> applied to D. I can see moving objects being problematic given
> that D supports unions.
Unions make up only a small percentage of all objects; a mostly
precise GC can be enough. It cannot be fully precise anyway,
because of C code (addRoot), and the stack, which is hard to make
precise.
> On a related note, I've wondered for a long time why D's GC
> isn't
> generational and why there's all this discussion on making it
> concurrent and none on making it generational. It seems to me
> that making it generational is simpler than making it concurrent
> and provides a net win in overall performance while concurrent
> only provides a win for real time systems that can't afford long
> GC cycles.
There is some work. For example, Rainer Schuetze presented a
precise GC at Dconf, which is a requirement for that. See also
this post by deadalnix, who proposes separating the global
heap(s) from the thread-local ones:
http://forum.dlang.org/thread/kpgilxyyrrluxpepepcg@forum.dlang.org
More information about the Digitalmars-d-announce
mailing list