Possible quick win in GC?
Abdulhaq via Digitalmars-d
digitalmars-d at puremagic.com
Sun Sep 28 23:48:06 PDT 2014
> You mean this?
> https://en.wikipedia.org/wiki/Escape_analysis
Of course my proposal uses the techique of escape analysis as
part of its methodology, but the essence of the idea is to
greatly cut down on the work that the GC has to do on each sweep
when dealing with objects that have been found to belong to a
particular set. The objects in each set are in an object graph
that has no incoming references from objects external to the set
and which can therefore be allocated in their own heap that is
destroyed when the root object goes out of scope.
The saving takes place because the GC does not need to scan the
default heap for pointers found in the new heaps (bands). For
certain type of programs such as compilers / lexers / parsers
where many temporary objects are allocated and shortly after
deallocated this can result in a substantial time saving in
execution. In terms of memory usage we would see multiple
potentially large but short-lived spikes.
More information about the Digitalmars-d
mailing list