Skip to main content

An object-oriented framework for loop parallelization

  • VII Poster Session Papers
  • Conference paper
  • First Online:
High Performance Computing (ISHPC 1997)

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

Included in the following conference series:

  • 98 Accesses

Abstract

The main goal of parallelizing compiler research is the ability to produce efficient parallel programs and the portability because of wide choices of current and future available parallel computer architectures. Since the design of parallelizing compilers tends to be more complicated than conventional compilers, it is extremely difficult to achieve both the efficiency and the portability. To meet this problem, we have investigated an application of object oriented design to parallelizing compilers. Our parallelizing compiler design is based on abstractions of intermediate representations of loops and class definitions for them. In this paper, we focus on loop parallelization and propose a framework where loop parallelization process is divided into three phases and the optimization of loops is performed via cyclic use of those three phases. The class of each phase is hierarchically derived from intermediate representations of loops. This increases the portability of resultant parallelizing compilers. Furthermore, one of the phases uses a reservation table of hardware resource to obtain practical optimization of parallel programs for given hardware resource.

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. U.Banerjee. Dependence Analysis for Supercomputing. Kluwer Academic Pub., USA, 1988.

    Google Scholar 

  2. C.Brownhill, A.Nicolau, S.Novack and C.Polychronopoulos. Achieving Multi-level Parallelization. In Proceedings of ISHPC, will appear, 1997.

    Google Scholar 

  3. M.Snir, S. Otto, S.Huss-Lederman, D. Walker, and J.Dongara. MPI:the complete reference. MIT press, 1996.

    Google Scholar 

  4. S.Gossain and B.Anderson. An iterative-design model for reusable object-oriented software. In Proceedings OOPSLA/ECOOP '90, ACM SIGPLAN Notices, pages 12–27, October 1990. Published as Proceedings OOPSLA/ECOOP '90, ACM SIGPLAN Notices, volume 25, number 10.

    Google Scholar 

  5. K.Kennedy S.Hiranandani and C.Tseng. Compiling fortran d for mimd distributedmemory machines. Communications of the ACM, 35(8):66–80, Aug 1992.

    Article  Google Scholar 

  6. J.Kam and J. Ullman. Global data flow analysis and iterative algorithms. journal of ACM, 23(1):158–171, 1976.

    Article  Google Scholar 

  7. J. Lewis, S. Henry, D. Kafura, and. Schulman. An empirical study of the objectoriented paradigm and software reuse. In Proceedings OOPSLA '91, ACM SIGPLAN Notices, pages 184–196, November 1991. Published as Proceedings OOPSLA '91, ACM SIGPLAN Notices, volume 26, number 11.

    Google Scholar 

  8. M.Loomis, A.Shah and J. Rumbaugh. An object modelling technique for conceptual design. In P. Cointe J. Bézivin, J-M. Hullot and H. Lieberman, editors, Proc. ECOOP '87, LNCS 276, pages 192–202, Paris, France, jun 1987. Springer Verlag.

    Google Scholar 

  9. S.Novack. The EVE Mutation Scheduling Compiler: Adaptive Code Generation for Advanced Microprocessors. PhD thesis, UCI, 1997.

    Google Scholar 

  10. Y.Omori, K.Joe and A.Fukuda. A Parallelizing Compiler by Object Oriented Design. In Proceedings of COMPSAC, will appear, 1997.

    Google Scholar 

  11. C.Polychronopulos, et al. Parafrase-2: An environment for parallelizing, partitioning, synchronizing, and scheduling programs on multiprocessors. In J. of High Speed Computing, Vol.1, No.1, 1989.

    Google Scholar 

  12. J.Rumbaugh et al. Object Oriented Modeling and Design. Prentice-Hall, 1991.

    Google Scholar 

  13. M. Wolfe and M. Lam. A loop transformation theory and an algorithm to maximize parallelism. IEEE Transactions on Parallel and Distributed Systems, 2(4):452–470, Oct 1991.

    Article  Google Scholar 

  14. H. Zima and B. Chapman. Supercompilers for parallel and vector computers. ACM Press, New York, NY, 1991.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Constantine Polychronopoulos Kazuki Joe Keijiro Araki Makoto Amamiya

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Omori, Y., Joe, K., Fukuda, A. (1997). An object-oriented framework for loop parallelization. In: Polychronopoulos, C., Joe, K., Araki, K., Amamiya, M. (eds) High Performance Computing. ISHPC 1997. Lecture Notes in Computer Science, vol 1336. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0024230

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63766-0

  • Online ISBN: 978-3-540-69644-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics