Handling distributed data in Vienna Fortran procedures

  • B. Chapman
  • H. Zima
  • P. Mehrotra
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 757)


Vienna Fortran is a language extension of Fortran which provides the user with a wide range of facilities for the distribution of data structures across the processors of a distributed-memory multiprocessing machine. In contrast to current programming practice, programs in Vienna Fortran are written using global data references. Thus, the user has the advantages of a shared memory programming paradigm while explicitly controlling the data distribution. In this paper, we specify the mechanisms in Vienna Fortran that control the transfer of distributed arrays to procedures, and illustrate a number of applications.


distributed-memory multiprocessor systems numerical computation data parallel algorithms data distribution formal array parameters distribution propagation 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Baber,M. (1990) Hypertasking support for dynamically redistributable and resizeable arrays on the iPSC. In Proceedings of the Fifth Distributed Memory Computing Conference, pp. 59–66.Google Scholar
  2. [2]
    Benkner,S.,Chapman,B.M.,Zima,H.P. (1992) Vienna Fortran 90. In Proceedings of the Scalable High Performance Computing Conference SHPCC-92, pp. 51–59.Google Scholar
  3. [3]
    Callahan,D.,Kennedy,K. (1988) Compiling programs for distributed-memory multi-processors. Journal of Supercomputing, 2(2), pp. 151–69.Google Scholar
  4. [4]
    Chapman,B.M.,Mehrotra,P.,Zima,H.P. (1992) Programming in Vienna Fortran. Scientific Programming, 1(1), pp. 31–50.Google Scholar
  5. [5]
    Chen,M.,Li,J. (1992) Optimizing Fortran 90 programs for data motion on massively parallel systems. Technical Report YALE/DCS/TR-882,Yale University,New Haven,CT.Google Scholar
  6. [6]
    Fox,G.,Hiranandani,S.,Kennedy,K.,Koelbel,C.,Kremer,U.,Tseng,C., Wu,M. (1991) Fortran D language specification. Technical Report COMP TR90079, Department of Computer Science, Rice University, Houston, TX.Google Scholar
  7. [7]
    Fortran 90. ANSI X3J3 Internal Document S.8.118.Google Scholar
  8. [8]
    Gerndt,H.M. (1989) Automatic Parallelization for Distributed-Memory Multiprocessing Systems. PhD Thesis, University of Bonn.Google Scholar
  9. [9]
    Gerndt,H.M. (1989) Array Distribution in SUPERB. In Proceedings of the 3rd International Conference on Supercomputing 1989, pp.164–174.Google Scholar
  10. [10]
    Koelbel,C.,Mehrotra,P. (1991) Compiling global name-space parallel loops for distributed execution. IEEE Transactions on Parallel and Distributed Systems, 2(4), pp.440–451.Google Scholar
  11. [11]
    Loveman,D. (1992) High Performance Fortran: Proposal. In High Performance Fortran Forum, Houston, TX.Google Scholar
  12. [12]
    Mehrotra,P.,Van Rosendale,J. (1991) 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.Google Scholar
  13. [13]
    MIMDizer User's Guide, Version 7.02 (1991) Pacific Sierra Research Corporation, Placerville, CA.Google Scholar
  14. [14]
    Pase,D. (1992) MPP Fortran programming model. In High Performance Fortran Forum, Houston, TX.Google Scholar
  15. [15]
    Rosing,M.,Schnabel,R.W. (1987) An overview of Dino — a new language for numerical computation on distributed memory multiprocessors. In Proceedings of the Third SIAM Conference on Parallel Processing for Scientific Computation,pp. 312–316.Google Scholar
  16. [16]
    Rosing,M.,Schnabel,R.W.,Weaver,R.P. (1990) The DINO parallel programming language. Technical Report CU-CS-457-90,University of Colorado,Boulder,CO.Google Scholar
  17. [17]
    Steele Jr.,G.L. (1992) Proposals for amending High Performance Fortran. In High Performance Fortran Forum, Houston, TX.Google Scholar
  18. [18]
    Zima,H.P.,Bast,H.,Gerndt,H.M. (1988) Superb: A tool for semi-automatic MIMD/SIMD parallelization. Parallel Computing, 6(1), pp.1–18.Google Scholar
  19. [19]
    Zima,H.P.,Brezany,P.,Chapman,B.M.,Mehrotra,P.,Schwald,A. (1992) Vienna Fortran — a Language Specification Version 1.1 Technical Report ACPC/TR 92-4, Austrian Center for Parallel Computation, Vienna. Also: ICASE Internal Report 21, ICASE, Hampton, VA.Google Scholar
  20. [20]
    Zima,H.P.,Chapman,B.M. (1990) Supercompilers for Parallel and Vector Computers. ACM Press Frontier Series, Addison-Wesley.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • B. Chapman
    • 1
  • H. Zima
    • 1
  • P. Mehrotra
    • 2
  1. 1.University of ViennaViennaAustria
  2. 2.ICASEHampton

Personalised recommendations