Skip to main content

Instruction scheduling and global register allocation for SIMD multiprocessors

  • Conference paper
  • First Online:
Parallel Algorithms for Irregularly Structured Problems (IRREGULAR 1995)

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

  • 172 Accesses

Abstract

Current trends in system design are pointing to using more and more processing units and storage units in a single system. In order to generate programs for these types of distributed memory machines, the challenge is to coordinate and schedule multiple functional units to perform computations efficiently.

In this paper, we describe how our compiler can automate the process and generate good parallel programs from sequential programs. We show how to turn the straight-line code into a task graph which exhibits maximum parallelism possible. Then we give an algorithm for assigning computation to processors to minimize communication cost. Finally, we give an algorithm to allocate registers across processors using an interference graph.

Supported in part by the Advanced Research Projects Agency of the Department of Defense under ONR Contract N00014-92-J-1989, by ONR Contract N00014-92-J-1839, United States-Israel Binational Science Foundation Grant 92-00234 and in part by the U.S. Army Research Office through the Mathematical Science Institute of Cornell University.

Supported by a Fannie and John Hertz Foundation Fellowship.

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. P.P. Chang, S.A. Mahlke, W.Y. Chen, N.J. Warter, and W.W. Hwu, “IMPACT: An Architectural Framework for Multiple-Instruction-Issue Processors” Proceedings of the 18th International Symposium on Computer Architecture, pp. 266–275, May 1991

    Google Scholar 

  2. S.A. Mahlke, W.Y. Chen, W.W. Hwu, B.R. Rau, and M.S. Schlansker, “Sentinel Scheduling for VLIW and Superscalar Processors” Proceedings of the 5th International Conference on Architectural Support for Programming Languages and Operating Systems, pp. 238–259, Sept. 1992

    Google Scholar 

  3. K. Ebcioglu, R.D. Groves, K.-C. Kim, G.M. Silberman, and I. Ziv, “VLIW Compilation Techniques in a Superscalar Environment” Proceedings of the ACM SIGPLAN'94 Conference on Programming Language Design and Implementation, SIGPLAN notices, pp. 38–48 June 1994

    Google Scholar 

  4. S.S. Pinter, “Register Allocation with Instruction Scheduling: a New Approach” Proceedings of the ACM SIGPLAN'93 Conference on Programming Language Design and Implementation, SIGPLAN notices, pp. 248–257, June 1993

    Google Scholar 

  5. C. Norris and L.L. Pollock, “Register Allocation over the Program Dependence Graph” Proceedings of the ACM SIGPLAN'94 Conference on Programming Language Design and Implementation, SIGPLAN notices, pp. 266–277, June 1994

    Google Scholar 

  6. G.J. Chaitin, “Register Allocation and Spilling via Graph Coloring” Proceedings of the ACM SIGPLAN'82 Symposium on Compiler Construction', SIGPLAN Notices, pp. 98–105, June 1982

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Afonso Ferreira José Rolim

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hao, B., Pearson, D. (1995). Instruction scheduling and global register allocation for SIMD multiprocessors. In: Ferreira, A., Rolim, J. (eds) Parallel Algorithms for Irregularly Structured Problems. IRREGULAR 1995. Lecture Notes in Computer Science, vol 980. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60321-2_6

Download citation

  • DOI: https://doi.org/10.1007/3-540-60321-2_6

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60321-4

  • Online ISBN: 978-3-540-44915-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics