A Processor Architecture for Simultaneously Processing Dataflow and Control-flow Threads

S. Ito, R. Kurebayashi, H. Tomiyasu, and H. Nishikawa (Japan)


Parallel Algorithms and Architectures, Dataflow, Control Flow, Firing Control


A dataflow processor has attractive features for net working applications, such as the natural exploitation of parallelism and instruction-level parallel processing with no context switching overhead. However, a circular pipeline of a pure dataflow processor performs poorly when executing a code with little parallelism. This could lead to a bottleneck to overall performance. To tackle this problem with maintaining the advantages of pure dataflow, this paper proposes a processor architecture that simultane ously processes two orthogonal types of threads in a sin gle pipeline. One kind, denoted "dataflow" is appropriate for the highly parallel parts; the other, "control-flow" is for the parts of the code with little parallelism. Furthermore, the architecture introduces an extended firing control unit, which resolves data hazards dynamically both in the exe cution of dataflow and control-flow threads. This paper ex amines (1) the effectiveness of the parallel processing with the dataflow thread, (2) the improved performance in a se rial code by introducing the control-flow thread, and (3) the fairness of the scheduling among two kinds of threads. These results lead to the efficient execution of networking applications without interfering two kinds of threads.

Important Links:

Go Back