Skip to main content
Log in

Software for supercomputers of the future

  • Guest Editorial
  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

This paper discusses the software challenges that must be met if we are to effectively use the massively parallel supercomputers of the future. Focusing on Fortran, the discussion includes an assessment of the prospects for fully automatic parallelization of conventional programs and presents the principal features needed in software environments for parallel programming.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

References

  • Abu-Sufah, W. 1979. Improving the performance of virtual memory computers. Ph.D. thesis, Dept. of Comp. Sci., Univ. of Ill. at Urbana-Champaign, Urbana, Ill.

    Google Scholar 

  • Allen, J.R., and Kennedy, K. 1987. Automatic translation of Fortran programs to vector form. ACM Trans. Programming Languages and Systems, 9, 4 (Oct.), 491–542.

    Google Scholar 

  • Allen, J.R., Callahan, D., and Kennedy, K. 1987. Automatic decomposition of scientific programs for parallel execution. In Conf. Record of the Fourteenth ACM Symp. on the Principles of Programming Languages (Munich, Jan.), pp. 63–76.

  • Allen, J.R., Bäumgartner, D., Kennedy, K., and Porterfield, A. 1986. PTOOL: A semi-automatic parallel programming assistant. In Proc., 1986 Internat. Conf. on Parallel Processing (St. Charles, Ill., Aug.), IEEE Comp. Soc. Press, pp. 164–170.

  • Babb, R.G. 1984. Parallel processing with large grain data flow techniques. IEEE Comp., 17, 7 (July), 55–61.

    Google Scholar 

  • Balasundaram, V., Kennedy, K., Kremer, U., McKinley, K.S., and Subhlok, J. 1989. The ParaScope Editor: An interactive parallel programming tool. In Proc. Supercomputing '89 (Reno, Nev., Nov. 15–17), pp. 540–550.

  • Bernstein, A.J. 1966. Analysis of programs for parallel processing. IEEE Trans. Comps., 15, 5 (Oct.), 757–763.

    Google Scholar 

  • Browne, J.C. 1986. Framework for formulation and analysis of parallel programs. Parallel Computing, 3:1–9.

    Google Scholar 

  • Callahan, D., and Kennedy, K. 1987. Analysis of interprocedural side effects in a parallel programming environment. In Proc., First Internat. Conf. on Supercomputing (Athens), Berlin/New York, Springer-Verlag.

    Google Scholar 

  • Callahan, D., and Kennedy, K. 1988. Compiling programs for distributed-memory machines. The J. Supercomputing, 2, 2 (Oct.), 151–169.

    Google Scholar 

  • Callahan, D., Carr, S., and Kennedy, K. 1990. Improving register allocation for subscripted variables. In Proc., ACM SIGPLAN 90 Conf. on Program Language Design and Implementation (White Plains, NY., June), pp. 53–65.

  • Carle, A., Cooper, K.D., Hood, R.T., Kennedy, K., Torczon, L., and Warren, S.K. 1987. A practical environment for scientific programming. Computer, 20, 11 (Nov.), 75–89.

    Google Scholar 

  • Carr, S., and Kennedy, K. 1989. Blocking linear algebra codes for memory hierarchies. In Proc., Fourth SIAM Conf. on Parallel Processing for Scientific Computing (Chicago, Dec.).

  • Dongarra, J.J., and Sorensen, D.C. 1986. SCHEDULE: Tools for developing and analyzing parallel Fortran programs. Tech. Mem. 86, Math. and Comp. Sci. Div., Argonne Nat. Laboratory (Nov.).

  • Dongarra, J.J., Brewer, O., Fineberg, S., and Kohl, J.A. 1990. A tool to aid in the design, implementation and understanding of matrix algorithms for parallel processors. J. Parallel and Distributed Computing, 9:185–202.

    Google Scholar 

  • Guarna, V.A., Jr., Gannon, D., Gaur, Y., and Jablonowski, D. 1988. Faust: An environment for programming parallel scientific applications. In Proc., Supercomputing '88 (Orlando, Fla., Nov. 14–18), pp. 3–10.

  • Kuck, D., Kuhn, R., Leasure, B., and Wolfe, M. 1980. The structure of an advanced retargetable vectorizer. In Proc. of COMPSAC 80, the 4th Internat. Comp. Software and Applications Conf. (Chicago, Oct.), pp. 709–715.

  • Kuck, D.J., Kuhn, R.H., Leasure, B., Padua, D.A., and Wolfe, M. 1981. Dependence graphs and compiler optimizations. In Conf. Record of the Eighth ACM Symp. on Principles of Programming Languages (Jan.), pp. 207–218.

  • Leasure, B., ed. 1988. PCF Fortran: Language Definition, Version 1. The Parallel Computing Forum, Champaign, Ill.

  • Office of Science and Technology Policy. 1991. Grand challenges: High performance computing and communications, the FY 1992 U.S. Research and Development Program. Rept. by the Committee on Physical, Mathematical, and Engineering Sciences, Washington, D.C.

    Google Scholar 

  • Porterfield, A.K. 1989. Software methods for improvement of cache performance. Ph.D. thesis, Rice University, Houston, Tex.

    Google Scholar 

  • Rogers, A., and Pingali, K. 1989. Process decomposition through locality of references. In Proc., ACM SIGPLAN 89 Conf. on Program Language Design and Implementation (June).

  • Smith, K., and Appelbe, W. 1988. PAT—An interactive Fortran parallelizing assistant tool: Use and documentation. Tech. rept., Dept. of Comp. Sci., Ga. Institute of Technology, Atlanta.

    Google Scholar 

  • Zima, H., Bast, H.-J., and Gerndt, M. 1988. SUPERB: A tool for semi-automatic MIMD/SIMD parallelization. In Parallel Computing, vol. 6, Amsterdam, North-Holland, pp. 1–18.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kennedy, K. Software for supercomputers of the future. J Supercomput 5, 251–262 (1992). https://doi.org/10.1007/BF00127948

Download citation

  • Issue Date:

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

Keywords

Navigation