Status on Precise GC

Sean Kelly sean at invisibleduck.org
Sat Sep 8 08:59:55 PDT 2012


On Sep 8, 2012, at 5:47 AM, Alex Rønne Petersen <alex at lycus.org> wrote:

> On 08-09-2012 08:44, Benjamin Thaut wrote:
>> Am 08.09.2012 03:56, schrieb Tyler Jameson Little:
>>> This issue on bugzilla hasn't been updated since July 2011, but
>>> it's assigned to Sean Kelly:
>>> http://d.puremagic.com/issues/show_bug.cgi?id=3463
>>> 
>>> I've found these threads concerning a precise GC:
>>> 
>>> http://www.digitalmars.com/d/archives/digitalmars/D/learn/Regarding_the_more_precise_GC_35038.html
>>> 
>>> 
>>> 
>>> http://www.digitalmars.com/d/archives/digitalmars/D/How_can_I_properly_import_functions_from_gcx_in_object.di_171815.html
>>> 
>>> 
>>> 
>>> Is this issue obsolete, or is it being worked on?
>>> 
>>> Reason being, I'm writing a game in D and I plan to write it in
>>> nearly 100% D (with the exception being OpenGL libraries and the
>>> like), but I know I'll run into problems with the GC eventually.
>>> If this is an active project that may get finished in the
>>> relative near term (less than a year), then I'd feel comfortable
>>> knowing that eventually problems may go away.
>>> 
>>> I want to eventually make this work with ARM (Raspberry PI &
>>> cubieboard), and the GC is a major blocker here (well, and a
>>> cross-compiler, but I'll work that out when I get there).
>>> 
>>> I'm using dmd atm if that matters.
>>> 
>>> Thanks!
>>> 
>>> Jameson
>> 
>> About a year ago I have been at the same point then you are now, and
>> afterwars I tell you that you should write your project without a GC
>> from the start. See my article about this:
>> http://3d.benjamin-thaut.de/?p=20
>> 
>> GCs are usually not very good for games, unless you have a concurrent
>> generational incremental non stop the world GC like .Net 4 (Which they
>> created only for XNA 4)
>> 
>> Kind Regards
>> Benjamin Thaut
> 
> You can't be incremental /and/ concurrent non-STW.

IBM's Metronome is a soft-realtime incremental GC. Very impressive, though it's only for Java.  I don't think an incremental GC is compatible with D (maybe SafeD), but I would love if there were maximum delay guarantees associated with a collection cycle. 


More information about the Digitalmars-d mailing list