Software bubbles: using predication to compensate for aliasing in software pipelines

This paper describes a technique for utilizing predication to support software pipelining on EPIC architectures in the presence of dynamic memory aliasing. The essential idea is that the compiler generates an optimistic software-pipelined schedule that assumes there is no memory aliasing. The operat...

Full description

Saved in:
Bibliographic Details
Published in:Proceedings.International Conference on Parallel Architectures and Compilation Techniques pp. 211 - 221
Main Authors: Goldberg, B., Crutcher, E., Huneycutt, C., Palem, K.
Format: Conference Proceeding
Language:English
Published: IEEE 2002
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:This paper describes a technique for utilizing predication to support software pipelining on EPIC architectures in the presence of dynamic memory aliasing. The essential idea is that the compiler generates an optimistic software-pipelined schedule that assumes there is no memory aliasing. The operations in the pipeline kernel are predicated, however so that if memory aliasing is detected by a run-time check, the predicate registers are set to disable the iterations that are so tightly overlapped as to violate the memory dependences. We refer to these disabled kernel operations as software bubbles.
ISBN:9780769516202
0769516203
ISSN:1089-795X
2641-7944
DOI:10.1109/PACT.2002.1106019