|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.mmtk.plan.CollectorContext
org.mmtk.plan.SimpleCollector
org.mmtk.plan.StopTheWorldCollector
org.mmtk.plan.semispace.SSCollector
public class SSCollector
This class implements per-collector thread behavior and state for the SS plan, which implements a full-heap semi-space collector.
Specifically, this class defines SS collection behavior
(through trace and the collectionPhase
method), and collection-time allocation (copying of objects).
See SS for an overview of the semi-space algorithm.
SS,
SSMutator,
StopTheWorldCollector,
CollectorContext| Field Summary | |
|---|---|
protected LargeObjectLocal |
los
|
protected CopyLocal |
ss
|
protected SSTraceLocal |
trace
Instance fields |
| Fields inherited from class org.mmtk.plan.CollectorContext |
|---|
immortal, resetConcurrentWork, sanityLocal |
| Constructor Summary | |
|---|---|
|
SSCollector()
Constructor |
protected |
SSCollector(SSTraceLocal tr)
Constructor |
| Method Summary | |
|---|---|
Address |
allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not copy the object, it only allocates space) |
void |
collectionPhase(short phaseId,
boolean primary)
Perform a per-collector collection phase. |
TraceLocal |
getCurrentTrace()
|
private static SS |
global()
|
static boolean |
isSemiSpaceObject(ObjectReference object)
Return true if the given reference is to an object that is within one of the semi-spaces. |
void |
postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
Perform any post-copy actions. |
| Methods inherited from class org.mmtk.plan.StopTheWorldCollector |
|---|
collect, concurrentCollect, concurrentCollectionPhase |
| Methods inherited from class org.mmtk.plan.CollectorContext |
|---|
clearResetConcurrentWork, copyCheckAllocator, getId, initCollector, resetConcurrentWork |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected final SSTraceLocal trace
protected final CopyLocal ss
protected final LargeObjectLocal los
| Constructor Detail |
|---|
public SSCollector()
protected SSCollector(SSTraceLocal tr)
tr - The trace to use| Method Detail |
|---|
public Address allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
allocCopy in class CollectorContextoriginal - A reference to the original objectbytes - The size of the space to be allocated (in bytes)align - The requested alignment.offset - The alignment offset.allocator - The allocator associated with this request.
public void postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
postCopy in class CollectorContextobject - The newly allocated objecttypeRef - the type reference for the instance being createdbytes - The size of the space to be allocated (in bytes)allocator - The allocator statically assigned to this allocation.
public void collectionPhase(short phaseId,
boolean primary)
collectionPhase in class SimpleCollectorphaseId - The collection phase to performprimary - Perform any single-threaded activities using this thread.public static boolean isSemiSpaceObject(ObjectReference object)
object - The object in question
private static SS global()
SS instance.public TraceLocal getCurrentTrace()
getCurrentTrace in class CollectorContext
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||