|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.mmtk.plan.MutatorContext
org.mmtk.plan.SimpleMutator
org.mmtk.plan.StopTheWorldMutator
org.mmtk.plan.copyms.CopyMSMutator
public class CopyMSMutator
This class implements per-mutator thread behavior and state for the CopyMS plan.
Specifically, this class defines CopyMS mutator-time allocation into the nursery and mature space (through pre-tenuring). Per-mutator thread collection semantics are also defined (flushing and restoring per-mutator allocator state).
CopyMS,
CopyMSCollector,
StopTheWorldMutator,
MutatorContext| Field Summary | |
|---|---|
private MarkSweepLocal |
mature
Instance fields |
private CopyLocal |
nursery
|
| Fields inherited from class org.mmtk.plan.MutatorContext |
|---|
id, immortal, log, los |
| Constructor Summary | |
|---|---|
CopyMSMutator()
Constructor |
|
| Method Summary | |
|---|---|
Address |
alloc(int bytes,
int align,
int offset,
int allocator,
int site)
Allocate memory for an object. |
void |
collectionPhase(short phaseId,
boolean primary)
Perform a per-mutator collection phase. |
Allocator |
getAllocatorFromSpace(Space space)
Return the allocator instance associated with a space space, for this plan instance. |
Space |
getSpaceFromAllocator(Allocator a)
Return the space into which an allocator is allocating. |
void |
postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
Perform post-allocation actions. |
| Methods inherited from class org.mmtk.plan.MutatorContext |
|---|
assertRemsetsFlushed, checkAllocator, flush, flushRememberedSets, getId, getOwnAllocator, initMutator, readBarrier, referenceTypeReadBarrier, tryCompareAndSwapWriteBarrier, writeBarrier, writeBarrier |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private MarkSweepLocal mature
private CopyLocal nursery
| Constructor Detail |
|---|
public CopyMSMutator()
| Method Detail |
|---|
public Address alloc(int bytes,
int align,
int offset,
int allocator,
int site)
alloc in class MutatorContextbytes - The number of bytes required for the object.align - Required alignment for the object.offset - Offset associated with the alignment.allocator - The allocator associated with this request.site - Allocation site
public void postAlloc(ObjectReference ref,
ObjectReference typeRef,
int bytes,
int allocator)
postAlloc in class MutatorContextref - 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 number to be used for this allocationpublic Space getSpaceFromAllocator(Allocator a)
getSpaceFromAllocator in class MutatorContexta - An allocator
a is allocating, or
null if there is no space associated with
a.public Allocator getAllocatorFromSpace(Space space)
space, for this plan instance.
getAllocatorFromSpace in class MutatorContextspace - The space for which the allocator instance is desired.
space, or null
if no appropriate allocator can be established.
public final void collectionPhase(short phaseId,
boolean primary)
collectionPhase in class SimpleMutatorphaseId - The collection phase to performprimary - Use this thread for single-threaded local activities.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||