|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectat.dms.kjc.common.SimulatedAnnealing
at.dms.kjc.spacetime.AnnealedGreedyLayout
public class AnnealedGreedyLayout
An experimental class that tries to optimize the data-reordering stage of the greedy layout. It was not helpful. Please don't look at it!
Field Summary |
---|
Fields inherited from class at.dms.kjc.common.SimulatedAnnealing |
---|
ANNEALITERATIONS, assignment, MAXTEMPITERATIONS, MINTEMPITERATIONS, TFACTR |
Constructor Summary | |
---|---|
AnnealedGreedyLayout(SpaceTimeSchedule spaceTime,
RawChip chip,
StreamlinedDuplicate duplicate)
|
Method Summary | |
---|---|
RawTile |
getComputeNode(SliceNode node)
Get the ComputeNode for a Slice |
void |
initialize()
Perform any initialization that has to be done before simulated annealing. |
void |
initialPlacement()
The initial assignment, this must set up assignment so that is can be called by placemenCost() and perturbConfiguration(T); |
protected boolean |
keepNewEqualMin()
Decide if we should keep a configuration that has a cost that is EQUAL to the current minimum of the search. |
double |
placementCost(boolean debug)
The placement cost (energy) of the configuration. |
void |
run()
Do the setup for getComputeNode . |
void |
setAssignment(HashMap newAssign)
Use this function to reassign the assignment to |
void |
setComputeNode(SliceNode node,
RawTile tile)
Set the ComputeNode for a Slice |
void |
swapAssignment()
Called by perturbConfiguration() to perturb the configuration. |
Methods inherited from class at.dms.kjc.common.SimulatedAnnealing |
---|
getRandom, printLayoutStats, setConstants, simAnnealAssign |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AnnealedGreedyLayout(SpaceTimeSchedule spaceTime, RawChip chip, StreamlinedDuplicate duplicate)
Method Detail |
---|
public RawTile getComputeNode(SliceNode node)
Layout
getComputeNode
in interface Layout<RawTile>
node
- : the SliceNode
to look up.
ComputeNode
that should execute the SliceNode
.public void setComputeNode(SliceNode node, RawTile tile)
Layout
setComputeNode
in interface Layout<RawTile>
node
- the SliceNode
to associate with ...tile
- the ComputeNode
where the SliceNode
should execute.public void setAssignment(HashMap newAssign)
setAssignment
in class SimulatedAnnealing
newAssign
- public void swapAssignment()
swapAssignment
in class SimulatedAnnealing
public void initialPlacement()
initialPlacement
in class SimulatedAnnealing
public double placementCost(boolean debug)
placementCost
in class SimulatedAnnealing
debug
- Might want to do some debugging...
public void initialize()
initialize
in class SimulatedAnnealing
protected boolean keepNewEqualMin()
keepNewEqualMin
in class SimulatedAnnealing
public void run()
Layout
getComputeNode
.
run
in interface Layout<RawTile>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |