Skip to main content
Log in

Cedar Fortran and other vector and parallel Fortran dialects

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

Abstract

The introduction of vector processors and multiprocessors has caused the most dramatic changes in Fortran and its dialects. The emerging generation of supercomputers utilizes both vector processing and multiprocessing. The challenge is to provide language constructs and software tools that will allow the programmer to easily exploit the capabilities of the machine. This paper outlines the development of vector and multiprocessor language constructs in Fortran. Significant architectures, their languages, and optimizers are described. The paper concludes with a description of Cedar Fortran, the language for the Cedar Multiprocessor under development at the University of Illinois, Urbana-Champaign. Cedar is a hierarchical, shared-memory, vector multiprocessor. As such, its language, Cedar Fortran, contains many of the language features that are described for vector processors and multiprocessors.

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.

Similar content being viewed by others

References

  • Ahuja, S., Carriero, N., and Gelernter, D. 1986. Linda and friends. IEEE Comp., 19, 8 (Aug.), 26–34.

    Google Scholar 

  • Allen, R., and Kennedy, K. 1982. PFC: A program to convert Fortran to parallel form. Tech. Rept. MASC-TR 82–6, Dept. of Math. Sci., Rice Univ., Houston, Tex.

    Google Scholar 

  • Alliant. 1985a. FX/Fortran Language Manual. Alliant Comp. Systems Corp., Acton Mass. (Apr.).

    Google Scholar 

  • Alliant. 1985b. FX/Series Architecture Manual. Alliant Comp. Systems Corp., Acton, Mass. (Apr.).

    Google Scholar 

  • ANSI. 1978. Programming Language Fortran ANSI x3.9-1978. Am. Nat. Standards Inst.

  • ANSI. 1988. Fortran 8x, X3J3/S8 (X3.9 - 198x). Am. Nat. Standards Inst.

  • Backus, J. 1979. The history of Fortran I, II, and III. Annals of the Hist. of Computing, 1, 1 (July), 21–37.

    Google Scholar 

  • Barnes, G., Brown, R., Kalo, M., Kuck, D., Slotnick, D., and Stokes, R. 1968. The Illiac IV computer. IEEE Trans. Comp., C-17, 8 (Aug.), 746–757.

    Google Scholar 

  • Burroughs. 1971. Array Processing System Fortran IV Reference Manual. Change No. 3 (Aug. 31), Defense, Space, and Special Systems Group, Burroughs Corp., Paoli, Penn.

    Google Scholar 

  • Burroughs. 1978. Burroughs Scientific Processor Vector Fortran Specification. Defense, Space, and Special Systems Group, Burroughs Corp., Paoli, Penn.

    Google Scholar 

  • Burroughs. 1979. Final report—Numerical aerodynamic simulation facility feasibility study. Defense, Space, and Special Systems Group, Burroughs Corp., Paoli, Penn. (Mar.).

    Google Scholar 

  • CDC. 1971. Control Data Star-100 Computer System—Hardware Reference Manual. Control Data Corp. Tech. Pub. Dept., Arden Hills, Minn.

    Google Scholar 

  • CDC. 1982. Fortran 200 Version 1 Reference Manual. Control Data Corp. Tech. Pub. Dept., Arden Hills, Minn.

    Google Scholar 

  • Cray. 1979. CRAY-1 Fortran (CFT) Reference Manual. Pub. no. SR-0009, Cray Research, Inc., Mendota Heights, Minn.

    Google Scholar 

  • Cray. 1985. Cray computer systems technical note: Multitasking user guide. Pub. no. SR0222, Cray Research, Inc., Mendota Heights, Minn.

    Google Scholar 

  • Cytron, R. 1986. Doacross: Beyond vectorization for multiprocessors. In Proc., 1986 Internat. Conf. on Parallel Processing (Aug.), pp. 836–844.

  • Darema-Rogers, F., George, D., Norton, V., and Pfister, G. 1985. VM/EPEX—A VM environment for parallel execution. IBM Res. Rept. RC 11225 (#49161).

  • Denelcor. 1982. HEP Fortran 77 User's Guide. Pub. no. 9000006, Denelcor, Inc., Aurora, Colo.

    Google Scholar 

  • Dennis, J., and Van Horn, E. 1966. Programming semantics for multiprogrammed computations. CACM, 9, 3 (Mar.), 143–155.

    Google Scholar 

  • Dijkstra, E. 1965. Cooperating sequential proceses. Tech. Rept. EWD-123, Tech. Univ., Eindhoven, The Netherlands.

    Google Scholar 

  • Emrath, P. 1985. Xylem: An operating system for the Cedar multiprocessor. IEEE software, 3, 4 (July), 30–37.

    Google Scholar 

  • Encore. 1988. Encore parallel processing guide. Encore Computer Corp., Marlborough, Mass.

    Google Scholar 

  • ETA. 1987. Notes from ETA presentation. Second Internat. Conf. on Supercomputing (Santa Clara, Calif., May).

  • Guzzi, M. 1987. Cedar Fortran programmer's manual. CSRD Doc. No. 601, Center for Supercomputing Res. and Dev., Univ. of Ill. at Urbana-Champaign, Urbana, Ill.

    Google Scholar 

  • Higbie, L. 1973. Supercomputer architectures. IEEE Comp., 6 (Dec), 48–58.

    Google Scholar 

  • Hoare, C. 1972. Towards a theory of parallel programming. In Operating System Techniques (C. Hoare and R. Perrott, eds.), Academic Press, London, pp. 61–72.

    Google Scholar 

  • Huson, C., Macke, T., Davies, J., Wolfe, M., and Leasure, B. 1986. The KAP/205: An advanced source to source vectorizer for the CYBER 205 supercomputer. In Proc., 1986 Internat. Conf. on Parallel Processing (Aug.), pp. 827–832.

  • IBM. 1988. Parallel language and library reference. SC23-0431-0, Internat. Business Machines Corp.

  • Jordan, H. 1987. The Force. ECE Tech. Rept. 87–1–1, Univ. of Colo., Boulder, Colo.

    Google Scholar 

  • Kuck, D., Muraoka, Y., and Chen, S. 1972. On the number of operations simultaneously executable in Fortranlike programs and their resulting speedup. IEEE Trans. Comp., C-21, 12 (Dec.), 43–67.

    Google Scholar 

  • Kuck, D., Davidson, E., Lawrie, D., and Sameh, A. 1986. Parallel supercomputing today and the Cedar approach. Science, 231 (Feb. 28), 967–974.

    Google Scholar 

  • Kuck, D., Kuhn, R., Leasure, B., and Wolfe, M. 1980. The structure of an advanced vectorizer for pipelined processors. In Fourth Internat. Computer Software and Applications Conf. (Oct.)

  • Kuck, D., Budnick, P., Chen, S., Davis, E. Jr., Han, J., Kraska, P., Lawrie, D., Muraoka, Y., Strebendt, R., and Towle, R. 1974. Measurements of parallelism in ordinary Fortran programs. IEEE Comp., 7, 1 (Jan.).

    Google Scholar 

  • Leasure, B. 1989. Private commun.

  • McGrath, R., and Emrath, P. 1988. Using memory in the Cedar system. In Proc. of the First Internat. Conf. on Supercomputing, Lecture Notes in Computer Science, Vol. 297, Springer-Verlag, Berlin, pp. 43–67.

    Google Scholar 

  • Millstein, R., and Muntz, C. 1975. The Illiac IV Fortran compiler. ACM Sigplan Notices, 10, 3 (Mar.), 1–8.

    Google Scholar 

  • Miura, K., and Uchida, K. 1983. FACOM vector processor VP-100/VP/200. In Proc. NATO Advanced Res. Workshop on High-Speed Computing (Julich, W. Germany, June 20–22), Springer-Verlag, Berlin.

    Google Scholar 

  • Osterhaug, A. 1986. Guide to parallel programming on Sequent computer systems. Sequent Computer Systems, Inc., Beaverton, Ore.

    Google Scholar 

  • PacificSierra. 1987. Vast-2 Version 2 User's Guide. Pacific Sierra Research, Placerville, Calif.

    Google Scholar 

  • Padua, D., 1979. Multiprocessors: Discussion of some theoretical and practical problems. Ph.D. thesis, Rept. 79–9990, Dept. of Computer Sci., Univ. of Ill. at Urbana-Champaign, Urbana, Ill.

    Google Scholar 

  • Padua, D., and Emrath, P. 1989. Automatic detection of non-determinacy in parallel programs. In Proc. of the 1988 Workshop on Parallel and Distributed Debugging, ACM Sigplan Notices, 24, 1 (Jan.), 89–99.

    Google Scholar 

  • Padua, D., and Lawrie, D. 1985. Proposed Cedar Fortran extensions. CSRD Doc. No. 509, Center for Supercomputing Res. and Dev., Univ. of Ill. at Urbana-Champaign, Urbana, Ill.

    Google Scholar 

  • Paul, G., and Wilson, M. 1978. An Introduction to VECTRAN and its use in scientific computing. In Proc. of the 1978 LASL Workshop on Vector and Parallel Processors, pp. 176–204.

  • PCF. 1988. PCF Fortran: Language definition. Parallel Computing Forum, Kuck and Assoc., Inc., Champaign, Ill.

    Google Scholar 

  • Polychronopoulos, C. 1986. On program restructuring, scheduling, and communication for parallel processor systems. CSRD Doc. No. 595, Center for Supercomputing Res. and Dev., Univ. of Ill. at Urbana-Champaign, Urbana, Ill.

    Google Scholar 

  • Pratt, T. 1987. The Pisces 2 parallel programming environment. In Proc., 1987 Internat. Conf. on Parallel Processing (Aug.), pp. 439–445.

  • Presberg, D., and Johnson, N. 1975. The Paralyzer: IVTRAN's parallelism analyzer and synthesizer. ACM Sigplan Notices, 10, 3 (Mar.), 9–16.

    Google Scholar 

  • Scarborough, R., and Kolsky, H. 1986. A vectorizing Fortran compiler. IBM J. Res. and Dev., 30, 2 (Mar.), 163–171.

    Google Scholar 

  • Veidenbaum, A. 1985. Compiler optimizations and architecture design issues for multiprocessors. CSRD Doc. No. 520, Center for Supercomputing Res. and Dev., Univ. of Ill. at Urbana-Champaign, Urbana, Ill.

    Google Scholar 

  • Watanabe, T. 1987. Architecture and performance of NEC supercomputer SX system. Parallel Computing, 5: 247–255.

    Google Scholar 

  • Wedel, D. 1975. Fortran for the Texas Instruments ACS system. ACM Sigplan Notices, 10, 3 (Mar.), 119–132.

    Google Scholar 

  • Zhu, F., and Yew, P. 1984. A scheme to enforce data dependence on large multiprocessor systems. CSRD Doc. No. 40, Center for Supercomputing Res. and Dev., Univ. of Ill. at Urbana-Champaign, Urbana, Ill.

    Google Scholar 

  • Zwakenberg, R.G. 1975. Vector extensions to LRLTRAN. ACM Sigplan Notices, 10, 3 (Mar.), 77–86.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

This work was supported in part by the National Science Foundation under Grant No. US NSF MIP-8410110, the US Department of Energy under Grant No. US DOE DE-FG02-85ER25001, and by a donation from the IBM Corporation.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Guzzi, M.D., Padua, D.A., Hoeflinger, J. et al. Cedar Fortran and other vector and parallel Fortran dialects. J Supercomput 4, 37–62 (1990). https://doi.org/10.1007/BF00162342

Download citation

  • Issue Date:

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

Key words

Navigation