Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

Polaris: Improving the effectiveness of parallelizing compilers

  • What Next?
  • Conference paper
  • First Online:
Languages and Compilers for Parallel Computing (LCPC 1994)

Abstract

It is the goal of the Polaris project to develop a new parallelizing compiler that will overcome limitations of current compilers. While current parallelizing compilers may succeed on small kernels, they often fail to extract any meaningful parallelism from large applications. After a study of application codes, it was concluded that by adding a few new techniques to current compilers, automatic parallelization becomes possible. The techniques needed are interprocedural analysis, scalar and array privatization, symbolic dependence analysis, and advanced induction and reduction recognition and elimination, along with run-time techniques to allow data dependent behavior.

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. Utpal Banerjee. Dependence Analysis for Supercomputing. Kluwer. Boston, MA, 1988.

    Google Scholar 

  2. M. Berry, D. Chen, P. Koss, D. Kuck, L. Pointer, S. Lo, Y. Pang, R. Roloff, A. Sameh, E. Clementi, S. Chin, D. Schneider, G. Fox, P. Messina, D. Walker, C. Hsiung, J. Schwarzmeier, K. Lue, S. Orszag, F. Seidl, O. Johnson, G. Swanson, R. Goodrum, and J. Martin. The Perfect Club Benchmarks: Effective Performance Evalution of Supercomputers. Int'l. Journal of Supercomputer Applications, Fall 1989, 3(3):5–40, Fall 1989.

    Google Scholar 

  3. William Blume and Rudolf Eigenmann. Performance Analysis of Parallelizing Compilers on the Perfect Benchmarks®Programs. IEEE Transactions of Parallel and Distributed Systems, 3(6):643–656, November 1992.

    Google Scholar 

  4. William Blume and Rudolf Eigenmann. The Range Test: A Dependence Test for Symbolic, Non-linear Expressions. Technical Report 1345, Univ. of Illinois at Urbana-Champaign, Cntr. for Supercomputing Res. & Dev., April 1994.

    Google Scholar 

  5. William Blume and Rudolf Eigenmann. Symbolic Analysis Techniques Needed for the Effective Parallelization of the Perfect Benchmarks. Technical Report 1332, Univ. of Illinois at Urbana-Champaign, Cntr. for Supercomputing Res. & Dev., January 1994.

    Google Scholar 

  6. Rudolf Eigenmann, Jay Hoeflinger, G. Jaxon, and David Padua. The Cedar Fortran Project. Technical report, Univ. of Illinois at Urbana-Champaign, Cntr. for Supercomputing Res, & Dev., April 1992. CSRD Report No. 1262.

    Google Scholar 

  7. Rudolf Eigenmann, Jay Hoeflinger, Zhiyuan Li, and David Padua. Experience in the Automatic Parallelization of Four Perfect-Benchmark Programs. Lecture Notes in Computer Science 589. Proceedings of the Fourth Workshop on Languages and Compilers for Parallel Computing, Santa Clara, CA, pages 65–83, August 1991.

    Google Scholar 

  8. Keith A. Faigin, Jay P. Hoeflinger, David A. Padua, Paul M. Petersen, and Stephen A. Weatherford. The Polaris Internal Representation. Technical report, Univ. of Illinois at Urbana-Champaign, Cntr. for Supercomputing Res. and Dev., October 1993. CSRD Report No. 1317, UILU-ENG-93-8038.

    Google Scholar 

  9. Mary W. Hall. Ken Kennedy, and Kathryn S. McKinley. Interprocedural transformations for parallel code generation. Supercomputing'91, pages 423–434, 1991.

    Google Scholar 

  10. Mohammad Haghighat and Constantine Polychronopoulos. Symbolic Dependence Analysis for High-Performance Parallelizing Compilers. Parallel and Distributed Computing: Advances in Languages and Compilers for Parallel Processing, MIT Press, Cambridge, MA, pages 310–330, 1991.

    Google Scholar 

  11. K. Psarris, D. Klappholz, and X. Kong. On the accuracy of the Banerjee test. Journal of Parallel and Distributed Computing, 12(2):152–157, June 1991.

    Google Scholar 

  12. Paul M. Petersen and David A. Padua. Static and Dynamic Evaluation of Data Dependence Analysis. Presented at ICS'93, Tokyo, Japan, pages 107–116, July 19–23, 1993.

    Google Scholar 

  13. Lawrence Rauchwerger and David Padua. The PRIVATIZING DOALL Test: A Run-Time Technique for DOALL Loop Identification and Array Privatization. Technical Report 1329, Univ. of Illinois at Urbana-Champaign, Cntr. for Supercomputing Res. and Dev., January 1994.

    Google Scholar 

  14. J. Saltz, R. Mirchandaney, and K. Crowley. Run-time parallelization and scheduling of loops. IEEE Trans. Comput., 40(5), May 1991.

    Google Scholar 

  15. Peng Tu and David Padua. Automatic array privatization. In Utpal Banerjee, David Gelernter, Alex Nicolau, and David Padua, editors, Proc. Sixth Workshop on Languages and Compilers for Parallel Com puting, volume 768 of Lecture Notes in Computer Science, pages 500–521, Portland, OR, August 1993. Springer Verlag.

    Google Scholar 

  16. Peng Tu and David Padua. Demand-Driven Symbolic Analysis. Technical Report 1336, Univ. of Illinois at Urbana-Champaign, Cntr. for Supercomputing Res. & Dev., Febraury 1994.

    Google Scholar 

  17. Michael Wolfe and Utpal Banerjee. Data Dependence and its Application to Parallel Processing. International Journal of Parallel Programming, 16(2):137–178, 1987.

    Google Scholar 

  18. Stephen Weatherford. High-Level Pattern-Matching Extensions to C++ for Fortran Program Manipulation in Polaris. Technical Report 1350, Univ of Illinois at Urbana-Champaign, Cntr. for Supercomputing Res. & Dev., May 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Keshav Pingali Utpal Banerjee David Gelernter Alex Nicolau David Padua

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Blume, W. et al. (1995). Polaris: Improving the effectiveness of parallelizing compilers. In: Pingali, K., Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1994. Lecture Notes in Computer Science, vol 892. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0025876

Download citation

  • DOI: https://doi.org/10.1007/BFb0025876

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-58868-9

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics