Abstract
We present simple and efficient algorithms for solving three basic problems which occur while modulo scheduling loops: a) computing the minimum initiation interval which satisfies the recurrence constraints, and exposing the most constraining recurrence cycle; b) computing and maintaining, as scheduling proceeds, the earliest and latest possible schedule dates (the margins) of the not yet scheduled instructions; c) computing and maintaining the tentative schedule dates of the not yet scheduled instructions which minimize the cumulative lifetimes of the registers. In addition, these problems are solved parametrically with the initiation interval.
On leave from the CEA CEL-V, 94195 Villeneuve St Georges cedex France. Part of this research was funded by the DGA grant ERE/SC Nā 95-1137/A000/DRET/DS/SR.
Preview
Unable to display preview. Download preview PDF.
References
E. R. Altman āOptimal Software Pipelining with Function Unit and Register Constraintsā Ph.D. thesis, ACAPS laboratory, McGill university, Montreal, Oct. 1995.
R. K. Ahuja, T. L. Magnanti, J. B. Orlin āNetwork Flowsā Optimization, G. L. Nemhauser, A. H. G. Rinnooy Kan, M. J. Todd editors, North-Holland 1989.
A. Ali, R. Helgason, J. Kennington, H. Lall āPrimal Simplex Network Codes: State-of-the-Art Implementation Technologyā Networks, vol. 8, pp. 315ā339, 1978.
J. C. Dehnert, R. A. Towle āCompiling for Cydra 5ā Journal of Supercomputing, vol. 7, pp. 181ā227, May 1993.
B. Dupont de Dinechin āAn Introduction to Simplex Schedulingā PACT'94, Montreal, Aug. 1994.
B. Dupont de Dinechin āSimplex Scheduling: More than Lifetime-Sensitive Instruction Schedulingā PRISM research report 1994.22, available under anonymous ftp from ftp.prism.uvsq.fr, July 94.
B. Dupont de Dinechin āInsertion Scheduling: An Alternative to List Scheduling for Modulo Schedulersā, Proceedings of 8th international workshop on Language and Compilers for Parallel Computers, LNCS #1033, Columbus, Ohio, Aug. 1995.
B. Dupont de Dinechin āA Unified Software Pipeline Construction Scheme for Modulo Scheduled Loopsā, PRISM research report 1996.xx, ftp://ftp.prism.uvsq.fr, Nov. 1996.
D. Goldfarb, J. Hao, S-R. Kai āShortest Path Algorithms Using Dynamic Breadth-First Searchā Networks, vol. 21, pp. 29ā50, 1991.
R. A. Huff āLifetime-Sensitive Modulo Schedulingā Proceedings of the SIG-PLAN'93 Conference on Programming Language Design and Implementation, Albuquerque, June 1993.
R. M. Karp, J. B. Orlin āParametric Shortest Path Algorithms with an Application to Cyclic Staffingā Discrete Applied Mathematics, vol. 3, pp. 37ā45, 1981.
M. Lam āSoftware Pipelining: An Effective Scheduling Technique for VLIW Machinesā Proceedings of the SIGPLAN'88 Conference on Programming Language Design and Implementation, 1988.
J. Llosa, M. Valero, E. Ayguade, A. Gonzalez āHypernode Reduction Modulo Schedulingā Proceedings of the IEEE / ACM Annual Symposium on Microarchitecture / MICRO-28, 1995.
Q. Ning āRe: Question about the POPL paperā, private communication, Feb. 1996.
Q. Ning, G. R. Gao āA Novel Framework of Register Allocation for Software Pipeliningā Proceedings of the ACM SIGPLAN'93 Symposium on Principles of Programming Languages, Jan. 1993.
B. R. Rau, C. D. Glaeser āSome Scheduling Techniques and an Easily Schedulable Horizontal Architecture for High Performance Scientific Computingā IEEE / ACM 14th Annual Microprogramming Workshop, Oct. 1981.
B. R. Rau āIterative Modulo Scheduling: An Algorithm for Software Pipelining Loopsā IEEE / ACM 27th Annual Microprogramming Workshop, San Jose, California, Nov. 1994.
J. Ruttenberg, G. R. Gao, A. Stoutchinin, W. Lichtenstein āSoftware Pipelining Showdown: Optimal vs. Heuristic Methods in a Production Compilerā Proceedings of the SIGPLAN'96 Conference on Programming Language Design and Implementation, Philadelphia, May 1996.
R. E. Tarjan āData Structures and Network Algorithmsā CBMS-NSF Regional Conference Series in Applied Mathematics, no. 44, 1983.
J. C. Tiernan āAn Efficient Search Algorithm to Find the Elementary Circuits of a Graphā Communications of the ACM, vol. 13, no. 12, Dec. 1970.
N. E. Young, R. E. Tarjan, J. B. Orlin āFaster Parametric Shortest Path and Minimum-Balance Algorithmsā Networks, vol. 21, pp. 205ā221, 1991.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
Ā© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dupont de Dinechin, B. (1997). Parametric computation of margins and of minimum cumulative register lifetime dates. In: Sehr, D., Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1996. Lecture Notes in Computer Science, vol 1239. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0017256
Download citation
DOI: https://doi.org/10.1007/BFb0017256
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63091-3
Online ISBN: 978-3-540-69128-0
eBook Packages: Springer Book Archive