A Pipelining Model Which Pipelines Blocks of Code
Title | A Pipelining Model Which Pipelines Blocks of Code |
Publication Type | Technical Report |
Year of Publication | 1990 |
Authors | Beer, J. |
Other Numbers | 617 |
Abstract | This paper presents a new technique of software pipelining and an architecture to support this technique. Rather than attempting to pipeline a sequence of individual instructions, the presented technique tries to pipeline entire blocks of code, i.e. the units to be pipelined are chunks of code, instructions within each code block might or might not be pipelined themselves. In this model blocks of code are identified which can be executed in a pipelined fashion. Neighboring blocks of code do not need to be data independent; pipeline stages can feed results and/or synchronization markers on to the next pipeline stage. The architecture can be seen as an attempt to use classical pipelining techniques in a multiprocessor system. The architecture consists of a circular pipeline of ordinary microprocessors. Advantages of the architecture are: unlike supercomputers and VLIW architectures the system can be based on commercial micro-processors, it avoids the high overhead of process start-up, and it is not restricted to vectorizing only inner-loops. Simulation studies show the viability of the architecture and the associated execution model. |
URL | http://www.icsi.berkeley.edu/pubs/techreports/tr-90-053.pdf |
Bibliographic Notes | ICSI Technical Report TR-90-053 |
Abbreviated Authors | J. Beer |
ICSI Publication Type | Technical Report |