|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectat.dms.kjc.flatgraph.StreamGraph
at.dms.kjc.spacedynamic.SpdStreamGraph
public class SpdStreamGraph
This class represents the entire stream graph of the application we are compiling. It is composed of StaticStreamGraphs in which all filters communicate over static rate channels. The connections between StaticStreamGraphs (SSGs) are dynamic rate. The StreamGraph includes objects (passes) that operate on it and store information for compilation, such as layout, FileState, etc. This extension to at.dms.kjc.flatgraph.StreamGraph is to allow layout and scheduling information to be associated with a StreamGraph and its associated StatisStreamGraph's It is a bit confusing casting something which already appears to be of type StreamGraph to StreamGraph, wh should have had different names.
Field Summary | |
---|---|
HashMap |
initSwitchSchedules
Maps RawTile -> switch code schedule * |
JoinerSimulator |
joinerSimulator
schedules of sending for all the joiners of the stream graph * |
HashMap |
steadySwitchSchedules
Maps RawTile -> switch code schedule * |
Fields inherited from class at.dms.kjc.flatgraph.StreamGraph |
---|
parentMap, staticSubGraphs |
Constructor Summary | |
---|---|
SpdStreamGraph(FlatNode top,
RawChip rawChip)
Create the static stream graph for the application that has |
Method Summary | |
---|---|
static SpdStreamGraph |
constructStreamGraph(FlatNode node)
create a stream graph with only one filter (thus one SSG), it's not laid out yet. |
static SpdStreamGraph |
constructStreamGraph(SIRFilter filter)
create a stream graph with only one filter (thus one SSG). |
void |
dumpStreamGraph()
print out some stats on each SSG to STDOUT * |
FileState |
getFileState()
return the FileState object for this stream graph * |
Layout |
getLayout()
return the layout object for this stream graph * |
RawChip |
getRawChip()
return the Raw Chip we are compiling to * |
void |
handTileAssignment()
Ask the user for the number of tiles to assign to each SSG * |
boolean |
isSimple()
|
void |
layoutGraph()
layout the entire Stream Graph on the RawChip * |
protected SpdStaticStreamGraph |
new_StaticStreamGraph(StreamGraph sg,
FlatNode realTop)
Use in place of "new StaticStreamGraph" for subclassing. |
void |
tileAssignment()
for each sub-graph, assign a certain number of tiles to it * |
void |
tileAssignmentOneFilter()
This will automatically assign the single tile of the raw chip to the one filter of the one SSG, all these conditions must be true |
Methods inherited from class at.dms.kjc.flatgraph.StreamGraph |
---|
createStaticStreamGraphs, dumpStaticStreamGraph, dynamicEntry, dynamicExit, getParentSSG, getStaticSubGraphs, getTopLevel, recreateSIR |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public JoinerSimulator joinerSimulator
public HashMap initSwitchSchedules
public HashMap steadySwitchSchedules
Constructor Detail |
---|
public SpdStreamGraph(FlatNode top, RawChip rawChip)
topas the top level FlatNode, and compile it to
rawChip
Method Detail |
---|
protected SpdStaticStreamGraph new_StaticStreamGraph(StreamGraph sg, FlatNode realTop)
new_StaticStreamGraph
in class StreamGraph
sg
- a SpdStreamGraphrealTop
- the top node
public boolean isSimple()
public void tileAssignmentOneFilter()
public void handTileAssignment()
public void tileAssignment()
public FileState getFileState()
public Layout getLayout()
public void layoutGraph()
public RawChip getRawChip()
public void dumpStreamGraph()
public static SpdStreamGraph constructStreamGraph(SIRFilter filter)
public static SpdStreamGraph constructStreamGraph(FlatNode node)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |