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.
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.
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.
Alliant. 1985a. FX/Fortran Language Manual. Alliant Comp. Systems Corp., Acton Mass. (Apr.).
Alliant. 1985b. FX/Series Architecture Manual. Alliant Comp. Systems Corp., Acton, Mass. (Apr.).
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.
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.
Burroughs. 1971. Array Processing System Fortran IV Reference Manual. Change No. 3 (Aug. 31), Defense, Space, and Special Systems Group, Burroughs Corp., Paoli, Penn.
Burroughs. 1978. Burroughs Scientific Processor Vector Fortran Specification. Defense, Space, and Special Systems Group, Burroughs Corp., Paoli, Penn.
Burroughs. 1979. Final report—Numerical aerodynamic simulation facility feasibility study. Defense, Space, and Special Systems Group, Burroughs Corp., Paoli, Penn. (Mar.).
CDC. 1971. Control Data Star-100 Computer System—Hardware Reference Manual. Control Data Corp. Tech. Pub. Dept., Arden Hills, Minn.
CDC. 1982. Fortran 200 Version 1 Reference Manual. Control Data Corp. Tech. Pub. Dept., Arden Hills, Minn.
Cray. 1979. CRAY-1 Fortran (CFT) Reference Manual. Pub. no. SR-0009, Cray Research, Inc., Mendota Heights, Minn.
Cray. 1985. Cray computer systems technical note: Multitasking user guide. Pub. no. SR0222, Cray Research, Inc., Mendota Heights, Minn.
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.
Dennis, J., and Van Horn, E. 1966. Programming semantics for multiprogrammed computations. CACM, 9, 3 (Mar.), 143–155.
Dijkstra, E. 1965. Cooperating sequential proceses. Tech. Rept. EWD-123, Tech. Univ., Eindhoven, The Netherlands.
Emrath, P. 1985. Xylem: An operating system for the Cedar multiprocessor. IEEE software, 3, 4 (July), 30–37.
Encore. 1988. Encore parallel processing guide. Encore Computer Corp., Marlborough, Mass.
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.
Higbie, L. 1973. Supercomputer architectures. IEEE Comp., 6 (Dec), 48–58.
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.
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.
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.
Kuck, D., Davidson, E., Lawrie, D., and Sameh, A. 1986. Parallel supercomputing today and the Cedar approach. Science, 231 (Feb. 28), 967–974.
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.).
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.
Millstein, R., and Muntz, C. 1975. The Illiac IV Fortran compiler. ACM Sigplan Notices, 10, 3 (Mar.), 1–8.
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.
Osterhaug, A. 1986. Guide to parallel programming on Sequent computer systems. Sequent Computer Systems, Inc., Beaverton, Ore.
PacificSierra. 1987. Vast-2 Version 2 User's Guide. Pacific Sierra Research, Placerville, Calif.
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.
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.
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.
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.
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.
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.
Scarborough, R., and Kolsky, H. 1986. A vectorizing Fortran compiler. IBM J. Res. and Dev., 30, 2 (Mar.), 163–171.
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.
Watanabe, T. 1987. Architecture and performance of NEC supercomputer SX system. Parallel Computing, 5: 247–255.
Wedel, D. 1975. Fortran for the Texas Instruments ACS system. ACM Sigplan Notices, 10, 3 (Mar.), 119–132.
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.
Zwakenberg, R.G. 1975. Vector extensions to LRLTRAN. ACM Sigplan Notices, 10, 3 (Mar.), 77–86.
Author information
Authors and Affiliations
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
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
Issue Date:
DOI: https://doi.org/10.1007/BF00162342