|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectat.dms.kjc.backendSupport.ComputeCodeStore<CellPU>
at.dms.kjc.cell.CellComputeCodeStore
public class CellComputeCodeStore
Field Summary |
---|
Fields inherited from class at.dms.kjc.backendSupport.ComputeCodeStore |
---|
cleanupBlock, CODE, fields, initBlock, mainMethod, mainName, methods, myMainName, parent, steadyLoop |
Constructor Summary | |
---|---|
CellComputeCodeStore(CellPU parent)
Constructors |
|
CellComputeCodeStore(CellPU parent,
SliceNode s)
|
Method Summary | |
---|---|
void |
addCallBackFunction()
Add callback function |
void |
addDataAddressField()
Adds data address field for static scheduling case. |
void |
addDynamicFields()
Dynamic scheduler specific fields |
void |
addFileReader(FilterSliceNode filterNode)
|
void |
addFileWriter(FilterSliceNode filterNode)
|
void |
addFilterLoad(InputSliceNode inputNode)
Deprecated. |
void |
addInitFunctionAddresses(FilterSliceNode filterNode)
Deprecated. |
void |
addInitFunctionAddressField()
Deprecated. |
void |
addInitFunctionCall(JMethodDeclaration init)
Add the call the init function for a filter as the first statement in "main". |
void |
addInitFunctions()
|
void |
addInputBufferAllocAttach(InputSliceNode inputNode)
Deprecated. |
void |
addIssueGroupAndWait()
Deprecated. |
void |
addIssueUnload()
Deprecated. |
void |
addNewGroupAndFilterUnload(OutputSliceNode outputNode)
Deprecated. |
void |
addNewGroupStatement()
Deprecated. |
void |
addOutputBufferAllocAttach(OutputSliceNode outputNode)
Deprecated. |
void |
addPPUInputBuffers(String inputName)
Deprecated. |
void |
addPPUOutputBuffers(String outputName)
Deprecated. |
void |
addPrintTicks()
Deprecated. |
void |
addSPUInit(SpaceTimeScheduleAndPartitioner schedule)
|
void |
addSPUIters()
Deprecated. |
JBlock |
addSpulibPollWhile()
|
void |
addStartSpuTicks()
Deprecated. |
void |
addStaticFields()
Static scheduler specific fields |
protected void |
addSteadyLoop()
Add a way of iterating steadyLoop to the main method. |
void |
addWorkFunctionAddressField()
Add work function address field, for the actual work function and the work function used for the init schedule LS_ADDRESS wf = wf_[filtername]; LS_ADDRESS init_wf = wf_[filtername]; |
void |
attachInputChannelArray(int filterId,
LinkedList<Integer> inputIds,
SchedulingPhase whichPhase)
Initialize an array of input buffers for this slice and attaches each input buffer to the appropriate upstream channel. |
void |
attachOutputChannelArray(int filterId,
LinkedList<Integer> outputIds)
Initialize an array of output buffers for this slice and attaches each output buffer to the appropriate downstream channel. |
JBlock |
callExtPSP(SliceNode sliceNode)
Call ext_ppu_spu_ppu_ex to run the filter asynchronously. |
JBlock |
callExtPSP(SliceNode sliceNode,
int iters)
|
void |
duplicateChannel(int channelId,
int duplicateId)
Duplicate channelId to duplicateId |
void |
duplicateChannel(int channelId,
LinkedList<Integer> duplicateIds)
Duplicate channelId to all the channels in duplicateIds. |
void |
dynamic()
|
void |
dynSetupFilter(FilterSliceNode filterNode,
int filternum,
int inputs,
int outputs,
ArrayList<Integer> inputnums,
ArrayList<Integer> outputnums)
Deprecated. |
SliceNode |
getSliceNode()
Miscellaneous functions |
static String |
idToFd(Integer id)
Deprecated. |
void |
initChannel(int channelId)
Initialize the channel with this ID and allocate the buffer |
void |
initChannelArrays(FilterSliceNode filterNode,
LinkedList<Integer> inputnums,
LinkedList<Integer> outputnums)
Deprecated. |
void |
initDuplicateOutputChannelArray(int filterId)
Deprecated. |
void |
initDynamic()
|
void |
initFileReader(FilterSliceNode filterNode)
Adds the appropriate fopen(...) call for the file reader |
void |
initFileWriter(FilterSliceNode filterNode)
|
void |
initOutputBufferFields(InputSliceNode inputNode)
Deprecated. |
void |
initSpulib()
|
void |
newline()
Insert a new line. |
void |
printStats()
Add a group to print timing statistics after running is completed. |
JBlock |
setDone(int done)
|
void |
setupDataAddress()
|
void |
setupFilter(SliceNode sliceNode)
Sets up filter's fields: state_size, num_inputs, num_outputs work_func will be either the init work func or the actual work func, depending on which is being run. |
JBlock |
setupFilterDescriptionWorkFunc(SliceNode sliceNode,
SchedulingPhase whichPhase)
Set the filter description's work func to be the appropriate work func depending on the phase (init or steady) |
void |
setupInputBufferAddress()
Add fields for SPU input buffers, and set up their addresses. |
void |
setupOutputBufferAddress()
|
void |
setupPSP(SliceNode sliceNode)
Sets up most of the parameters for ext_psp, except for pop/peek_extra/push_bytes, which differ depending on INIT/STEADY stage |
JBlock |
setupPSPIOBytes(SliceNode sliceNode,
SchedulingPhase whichPhase)
Set up the [pop/peek_extra/push]_bytes for the PSP params. |
JBlock |
setupPSPNumIOputs(SliceNode sliceNode,
SchedulingPhase whichPhase)
|
JBlock |
setupPSPSpuId(SliceNode sliceNode,
int spuId)
Get the ID of the SPU that the filter has been assigned to, and set the spu_id parameter in ext_psp_layout. |
void |
setupWorkFunctionAddress(SliceNode sliceNode)
Assigns work function address for the given slicenode. |
void |
startNewFilter(InputSliceNode inputNode)
Deprecated. |
Methods inherited from class at.dms.kjc.backendSupport.ComputeCodeStore |
---|
addCleanupStatement, addField, addFields, addInitStatement, addInitStatementFirst, addMethod, addMethods, addSteadyLoop, addSteadyLoopStatement, getFields, getMainFunction, getMethods, getMyMainName, hasMethod, setFields, setMethods, setMyMainName |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public CellComputeCodeStore(CellPU parent)
public CellComputeCodeStore(CellPU parent, SliceNode s)
Method Detail |
---|
public void addWorkFunctionAddressField()
public void addStaticFields()
public void addDataAddressField()
public void addDynamicFields()
public void initDynamic()
public void dynamic()
public void initChannel(int channelId)
channelId
- public void setupFilter(SliceNode sliceNode)
sliceNode
- public JBlock setupFilterDescriptionWorkFunc(SliceNode sliceNode, SchedulingPhase whichPhase)
sliceNode
- whichPhase
-
public JBlock setupPSPNumIOputs(SliceNode sliceNode, SchedulingPhase whichPhase)
public void setupWorkFunctionAddress(SliceNode sliceNode)
sliceNode
- public void setupPSP(SliceNode sliceNode)
sliceNode
- public JBlock setupPSPIOBytes(SliceNode sliceNode, SchedulingPhase whichPhase)
sliceNode
- whichPhase
-
public JBlock setupPSPSpuId(SliceNode sliceNode, int spuId)
sliceNode
- spuId
-
public JBlock callExtPSP(SliceNode sliceNode)
sliceNode
-
public JBlock callExtPSP(SliceNode sliceNode, int iters)
public JBlock setDone(int done)
public JBlock addSpulibPollWhile()
public void duplicateChannel(int channelId, LinkedList<Integer> duplicateIds)
channelId
- duplicateIds
- public void duplicateChannel(int channelId, int duplicateId)
channelId
- duplicateId
- public void addSPUInit(SpaceTimeScheduleAndPartitioner schedule)
public void initSpulib()
public void setupInputBufferAddress()
inputNode
- public void setupOutputBufferAddress()
@Deprecated public void addSPUIters()
public void attachInputChannelArray(int filterId, LinkedList<Integer> inputIds, SchedulingPhase whichPhase)
filterId
- inputIds
- public void attachOutputChannelArray(int filterId, LinkedList<Integer> outputIds)
filterId
- outputIds
- public void setupDataAddress()
public void initFileReader(FilterSliceNode filterNode)
filterNode
- public void addFileReader(FilterSliceNode filterNode)
public void initFileWriter(FilterSliceNode filterNode)
public void addFileWriter(FilterSliceNode filterNode)
public SliceNode getSliceNode()
protected void addSteadyLoop()
ComputeCodeStore
addSteadyLoop
in class ComputeCodeStore<CellPU>
public void addInitFunctionCall(JMethodDeclaration init)
ComputeCodeStore
addInitFunctionCall
in class ComputeCodeStore<CellPU>
init
- the init function, a call to it will be added.public void addInitFunctions()
public void printStats()
public void addCallBackFunction()
public void newline()
@Deprecated public void startNewFilter(InputSliceNode inputNode)
@Deprecated public void addNewGroupStatement()
@Deprecated public void addNewGroupAndFilterUnload(OutputSliceNode outputNode)
@Deprecated public void addInputBufferAllocAttach(InputSliceNode inputNode)
@Deprecated public void addOutputBufferAllocAttach(OutputSliceNode outputNode)
@Deprecated public void addIssueGroupAndWait()
@Deprecated public static String idToFd(Integer id)
@Deprecated public void addFilterLoad(InputSliceNode inputNode)
@Deprecated public void addInitFunctionAddressField()
@Deprecated public void addInitFunctionAddresses(FilterSliceNode filterNode)
@Deprecated public void addIssueUnload()
@Deprecated public void addStartSpuTicks()
@Deprecated public void addPrintTicks()
@Deprecated public void initDuplicateOutputChannelArray(int filterId)
@Deprecated public void initChannelArrays(FilterSliceNode filterNode, LinkedList<Integer> inputnums, LinkedList<Integer> outputnums)
@Deprecated public void addPPUInputBuffers(String inputName)
@Deprecated public void addPPUOutputBuffers(String outputName)
@Deprecated public void initOutputBufferFields(InputSliceNode inputNode)
@Deprecated public void dynSetupFilter(FilterSliceNode filterNode, int filternum, int inputs, int outputs, ArrayList<Integer> inputnums, ArrayList<Integer> outputnums)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |