Skip to main content

Parametric computation of margins and of minimum cumulative register lifetime dates

  • Instruction Scheduling and Register Allocation
  • Conference paper
  • First Online:
Languages and Compilers for Parallel Computing (LCPC 1996)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1239))

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. E. R. Altman ā€œOptimal Software Pipelining with Function Unit and Register Constraintsā€ Ph.D. thesis, ACAPS laboratory, McGill university, Montreal, Oct. 1995.

    Google ScholarĀ 

  2. 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.

    Google ScholarĀ 

  3. 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.

    Google ScholarĀ 

  4. J. C. Dehnert, R. A. Towle ā€œCompiling for Cydra 5ā€ Journal of Supercomputing, vol. 7, pp. 181ā€“227, May 1993.

    ArticleĀ  Google ScholarĀ 

  5. B. Dupont de Dinechin ā€œAn Introduction to Simplex Schedulingā€ PACT'94, Montreal, Aug. 1994.

    Google ScholarĀ 

  6. 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.

    Google ScholarĀ 

  7. 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.

    Google ScholarĀ 

  8. 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.

    Google ScholarĀ 

  9. D. Goldfarb, J. Hao, S-R. Kai ā€œShortest Path Algorithms Using Dynamic Breadth-First Searchā€ Networks, vol. 21, pp. 29ā€“50, 1991.

    Google ScholarĀ 

  10. R. A. Huff ā€œLifetime-Sensitive Modulo Schedulingā€ Proceedings of the SIG-PLAN'93 Conference on Programming Language Design and Implementation, Albuquerque, June 1993.

    Google ScholarĀ 

  11. 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.

    ArticleĀ  Google ScholarĀ 

  12. M. Lam ā€œSoftware Pipelining: An Effective Scheduling Technique for VLIW Machinesā€ Proceedings of the SIGPLAN'88 Conference on Programming Language Design and Implementation, 1988.

    Google ScholarĀ 

  13. J. Llosa, M. Valero, E. Ayguade, A. Gonzalez ā€œHypernode Reduction Modulo Schedulingā€ Proceedings of the IEEE / ACM Annual Symposium on Microarchitecture / MICRO-28, 1995.

    Google ScholarĀ 

  14. Q. Ning ā€œRe: Question about the POPL paperā€, private communication, Feb. 1996.

    Google ScholarĀ 

  15. 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.

    Google ScholarĀ 

  16. 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.

    Google ScholarĀ 

  17. B. R. Rau ā€œIterative Modulo Scheduling: An Algorithm for Software Pipelining Loopsā€ IEEE / ACM 27th Annual Microprogramming Workshop, San Jose, California, Nov. 1994.

    Google ScholarĀ 

  18. 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.

    Google ScholarĀ 

  19. R. E. Tarjan ā€œData Structures and Network Algorithmsā€ CBMS-NSF Regional Conference Series in Applied Mathematics, no. 44, 1983.

    Google ScholarĀ 

  20. 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.

    Google ScholarĀ 

  21. N. E. Young, R. E. Tarjan, J. B. Orlin ā€œFaster Parametric Shortest Path and Minimum-Balance Algorithmsā€ Networks, vol. 21, pp. 205ā€“221, 1991.

    Google ScholarĀ 

Download references

Author information

Authors and Affiliations

Authors

Editor information

David Sehr Utpal Banerjee David Gelernter Alex Nicolau David Padua

Rights and permissions

Reprints 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

Publish with us

Policies and ethics