Title :
Stack-Tagged Dataflow
Author :
Santiago, L. ; Marzulo, Leandro A. J. ; Goldstein, Brunno F. ; Alves, Tiago A. O. ; Franca, Felipe M. G.
Author_Institution :
Dept. de Inf. e Cienc. da Comput., Univ. do Estado do Rio de Janeiro - UERJ, Rio de Janeiro, Brazil
Abstract :
Dynamic Dataflow allows simultaneous execution of instructions in different iterations of a loop, boosting parallelism exploitation. In this model, operands are tagged with their associated instance number, incremented as they go through the loop. Instruction execution is triggered when all input operand with the same tag become available. However, this traditional tagging mechanism often requires the generation of several control instructions to manipulate tags and guarantee the correct matching. To address this problem, this work presents Stack-Tagged Dataflow, a tagging mechanism that uses stacks of tags to reduce control overheads in dataflow, while isolating context from different nested loops. Push instructions at the beginning of loops will create a new context, while Pop instructions, at the end of the loop, will restore the original context tags. Experimental results show that Stack-Tagged Dataflow is a viable solution, suggesting that a hybrid compiling approach can be used to enable Stack-Tags only when needed.
Keywords :
data flow computing; program control structures; context isolation; dataflow control overhead reduction; nested loops; pop instructions; push instructions; stack-tagged dataflow; tagging mechanism; Assembly; Computer architecture; Context; Libraries; Parallel processing; Tagging; Virtual machining; Dataflow; Parallel Programming; Stack; Tag;
Conference_Titel :
Computer Architecture and High Performance Computing Workshop (SBAC-PADW), 2014 International Symposium on
Conference_Location :
Paris
DOI :
10.1109/SBAC-PADW.2014.21