Improving software pipelining with unroll-and-jam
Document Type
Conference Proceeding
Publication Date
1-1-1996
Abstract
© 1996 IEEE To take advantage of recent architecturalimprove-ments in microprocessors, advanced compiler optimizations such as software pipelining have been developed [1, 2, 3, 4]. Unfortunately, not all loops have enough parallelism in the innermost loop body to take advantage of all of the resources a machine provides. Unroll-and-jam is a transformation that can be used to increase the amount of parallelism in the innermost loop body by making better use of resources and limiting the effects of recurrences [5, 6]. In this paper, we demonstrate how unroll-and-jam can significantly improve the initiation interval in a software-pipelined loop. Improvements in the initiation interval of greater than 40% are common, while dramatic improvements of a factor of 5 are possible.
Publication Title
Proceedings of the Annual Hawaii International Conference on System Sciences
Recommended Citation
Carr, S.,
Ding, C.,
&
Sweany, P.
(1996).
Improving software pipelining with unroll-and-jam.
Proceedings of the Annual Hawaii International Conference on System Sciences,
1, 183-192.
http://doi.org/10.1109/HICSS.1996.495462
Retrieved from: https://digitalcommons.mtu.edu/michigantech-p/10521