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.