Transitioning to a type aware Garbage Collector

Kyle Furlong kylefurlong at gmail.com
Tue Jan 23 16:12:10 PST 2007


Walter Bright wrote:
> Frits van Bommel wrote:
>> Walter Bright wrote:
>>> Paul Findlay wrote:
>>>> Walter Bright wrote:
>>>>> To improve GC performance, we need to transition to a GC that is 
>>>>> aware of the types of what it is allocating.
>>>> Does this mean the D garbage collector will be an exact (or precise) 
>>>> garbage collector?
>>>
>>> No.
>>
>> So what exactly *does* it mean?
>> Is it, as Pragma put it, a "bool containsPointers" per block?
>> Or is it mostly-precise?
>>
>> "Not exact/precise" still leaves a pretty big range...
> 
> All it means is that a bit gets set per block meaning if it might 
> contain pointers or does not contain pointers. In the future, it might 
> give a list of which offsets contain pointers.
> 
>> And if it's just a bool, what was the reasoning behind this decision?
>> Ease of implementation? The overhead of the metadata needed to get to 
>> mostly-precise? All of the above?
> 
> It's a fairly significant improvement for a small change.

Does this incremental change include the RTTI support needed to 
implement algorithms like CBGC (There are others which could use it)? Or 
are you leaving that for a later time?



More information about the Digitalmars-d-announce mailing list