D GC theory

via Digitalmars-d digitalmars-d at puremagic.com
Tue Feb 24 06:45:16 PST 2015


On Tuesday, 24 February 2015 at 00:30:43 UTC, ketmar wrote:
> On Mon, 23 Feb 2015 21:11:22 +0000, Sativa wrote:
>
>> How hard would it be to modify D's GC to do the following two 
>> things:
>> 
>> 1. Scan the heap in the BG on another thread/cpu for 
>> compactification.
>
> needs read/write barriers added to generated code. a major 
> slowdown for
> ALL memory access.

It's possible to (ab)use the MMU as a write barrier. 
Sociomantic's GC implementation does this by forking and running 
the scan in the child, then communicating information back about 
what can be freed. Video:

http://dconf.org/talks/lucarella.html

IIRC, at the end the speaker was asked about performance overhead 
of the COW that is involved, but he couldn't give any numbers.


More information about the Digitalmars-d mailing list