Skip to main content

High-level languages for parallel scientific computing

  • Invited Papers
  • Conference paper
  • First Online:
SOFSEM '95: Theory and Practice of Informatics (SOFSEM 1995)

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

  • 136 Accesses

Abstract

Highly parallel scalable multiprocessing systems are powerful tools for solving large-scale scientific and engineering problems. Languages such as Vienna Fortran and High Performance Fortran (HPF) have been introduced to allow the programming of these machines at a relatively high level of abstraction, based on the data-parallel Single-Program-Multiple-Data (SPMD) model. Their main features focus on the distribution of data across the processors of a machine. In this paper, we outline the state-of-the-art in this area and provide a detailed description of HPF. A significant weakness of current HPF is its lack of support for many advanced applications, which require irregular data distributions, dynamic load balancing, or task parallelism. We introduce HPF+, an extension of HPF based on Vienna Fortran, that addresses these problems and provides the required functionality.

The work described in this paper was partially supported by the Austrian Research Foundation (FWF Grant P8989-PHY) and by the Austrian Ministry for Science and Research (BMWF Grant GZ 308.9281- IV/3/93). This research was also supported by the National Aeronautics and Space Administration under NASA Contract No. NAS1-18605, while the authors were in residence at ICASE, NASA Langley Research Center, Hampton, VA 23681.

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. F.André,J.-L.Pazat and H. Thomas. PANDORE: A System to Manage Data Distribution. In: International Conference on Supercomputing (ICS'90), pp.380–388, June 1990.

    Google Scholar 

  2. H.E.Bal,M.F.Kaashoek, and A.S.Tanenbaum. Orca: A Language For Parallel Programming of Distributed Systems. IEEE Transactions on Software Engineering 18 (3):190–205, March 1992.

    Google Scholar 

  3. B. Chapman, P. Mehrotra, and H. Zima. Programming in Vienna Fortran. Scientific Programming 1(1):31–50, Fall 1992.

    Google Scholar 

  4. B. Chapman, P. Mehrotra, and H. Zima. High Performance Fortran Without Templates: A New Model for Data Distribution and Alignment. Proc. Fourth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, San Diego (May 19–22, 1993), ACM SIGPLAN Notices Vol.28, No.7, pp.92–101, July 1993.

    Google Scholar 

  5. B.Chapman,P.Mehrotra,J.Van Rosendale,and H.Zima. A Software Architecture for Multidisciplinary Applications: Integrating Task and Data Parallelism. Proc. CONPAR'94, Linz, Austria, September 1994. Also: Technical Report TR 94-1, Institute for Software Technology and Parallel Systems, University of Vienna, Austria, March 1994 and Technical Report 94-18, ICASE, NASA Langley Research Center, Hampton VA 23681.

    Google Scholar 

  6. B. Chapman, P. Mehrotra, and H. Zima. Extending HPF for Advanced Data-Parallel Applications. IEEE Parallel & Distributed Technology 2(3):59–70, Fall 1994.

    Google Scholar 

  7. I. T. Foster and K. M. Chandy. Fortran M: A Language for Modular Parallel Programming. Technical Report MCS-P327-0992 Revision 1. Mathematics and Computer Science Division, Argonne National Laboratory, June 1993.

    Google Scholar 

  8. G. Fox, S. Hiranandani, K. Kennedy, C. Koelbel, U. Kremer, C. Tseng, and M. Wu. Fortran D language specification. Department of Computer Science Rice COMP TR90079, Rice University, March 1991.

    Google Scholar 

  9. High Performance Fortran Forum. High Performance Fortran Language Specification Version 1.0. Technical Report, Rice University, Houston, TX, May 3, 1993. Also available as Scientific Programming 2(1–2):1–170, Spring and Summer 1993.

    Google Scholar 

  10. J.Li and M.Chen. Index Domain Alignment: Minimizing Cost of Cross-Referencing Between Distributed Arrays. Technical Report YALEU/DCS/TR-725, Yale University, November 1989.

    Google Scholar 

  11. P.Mehrotra. Programming Parallel Architectures: The BLAZE Family of Languages. In: Proc.Third SIAM Conference on Parallel Processing for Scientific Computing, Los Angeles, CA, pp.289–299, December 1988.

    Google Scholar 

  12. P. Mehrotra and J. Van Rosendale. Programming distributed memory architectures using Kali. In A. Nicolau, D. Gelernter, T. Gross, and D. Padua, editors, Advances in Languages and Compilers for Parallel Processing, pp. 364–384. Pitman/MIT-Press, 1991.

    Google Scholar 

  13. R.E.Millstein. Control Structures in ILLIAC IV Fortran. Communications of the ACM 16(10):621–627, October 1973.

    Google Scholar 

  14. MIMDizer User's Guide, Version 7.02. Pacific Sierra Research Corporation, Placerville, CA.,1991.

    Google Scholar 

  15. P.Hatcher,A. Lapadula,R.Jones,M.Quinn, and J.Anderson. A Production quality C* Compiler for Hypercube Machines. In: Proc.3rd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming”, pp.73–82, April 1991.

    Google Scholar 

  16. A.P.Reeves and C.M.Chase. The Paragon Programming Paradigm and Distributed Memory Multicomputers.: In: (J.Saltz,P.Mehrotra,Eds.) Compilers and Runtime Software for Scalable Multiprocessors. Elsevier, Amsterdam, The Netherlands, 1991.

    Google Scholar 

  17. A.Rogers and K. Pingali. Process Decomposition Through Locality of Reference. In: Proc.ACM SIGPLAN Conference on Programming Language Design and Implementation, June 1989

    Google Scholar 

  18. M.Rosing,R.W.Schnabel and R.P.Weaver. Expressing Complex Parallel Algorithms in DINO. In: Proc.4th Conference on Hypercubes, Concurrent Computers, and Applications, pp.553–560, 1989.

    Google Scholar 

  19. J. Saltz, K. Crowley, R. Mirchandaney, and H. Berryman. Run-time scheduling and execution of loops on message passing machines. Journal of Parallel and Distributed Computing, 8(2):303–312, 1990.

    Article  Google Scholar 

  20. J. Subhlok, J. Stichnoth, D. O'Hallaron, and T. Gross. Exploiting Task and Data Parallelism on a Multicomputer. Proc. Fourth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, San Diego (May 19–22, 1993), ACM SIGPLAN Notices Vol.28, No.7, July 1993.

    Google Scholar 

  21. Thinking Machines Corporation. CM Fortran Reference Manual, Version 5.2. Thinking Machines Corporation, Cambridge, MA, September 1989.

    Google Scholar 

  22. H. Zima, H. Bast, and M. Gerndt. Superb: A tool for semi-automatic MIMD/SIMD parallelization. Parallel Computing, 6:1–18, 1988.

    Article  Google Scholar 

  23. H. Zima, P. Brezany, B. Chapman, P. Mehrotra, and A. Schwald. Vienna Fortran — a language specification. ICASE Internal Report 21, ICASE, Hampton, VA, 1992.

    Google Scholar 

  24. H. Zima and B. Chapman. Supercompilers for Parallel and Vector Computers. ACM Press Frontier Series, Addison-Wesley, 1990.

    Google Scholar 

  25. H. Zima and B. Chapman. Compiling for Distributed Memory Systems. Proceedings of the IEEE, Special Section on Languages and Compilers for Parallel Machines, pp. 264–287, February 1993. Also: Technical Report ACPC/TR 92-16, Austrian Center for Parallel Computation, November 1992.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Miroslav Bartosek Jan Staudek Jirí Wiedermann

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Chapman, B., Mehrotra, P., Zima, H. (1995). High-level languages for parallel scientific computing. In: Bartosek, M., Staudek, J., Wiedermann, J. (eds) SOFSEM '95: Theory and Practice of Informatics. SOFSEM 1995. Lecture Notes in Computer Science, vol 1012. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60609-2_14

Download citation

  • DOI: https://doi.org/10.1007/3-540-60609-2_14

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60609-3

  • Online ISBN: 978-3-540-48463-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics