On the Number of Operations Simultaneously Executable in Fortran-Like Programs and Their Resulting Speedup
- 1 December 1972
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Computers
- Vol. C-21 (12), 1293-1310
- https://doi.org/10.1109/t-c.1972.223501
Abstract
This paper is concerned with the problem of analyzing ordinary Fortran-like programs to determine how many of their operations could be performed simultaneously. Algorithms are presented for handling arithmetic assignment statements, DO loops and IF statement trees. The height of the parse trees of arithmetic expressions is reduced by distribution of multiplication over addition as well as the use of associativity and commutativity. DO loops are analyzed in terms of their index sets and subscript forms. Some general underlying assumptions about machine organization are also given. In terms of several measures which are defined, the results of experimental analyses are presented. About 20 Fortran IV programs consisting of nearly 1000 source cards were analyzed. Evidence is given that for very simple Fortran programs 16 processors could be effectively used operating simultaneously in a parallel or pipeline fashion. Thus, for medium or large size Fortran programs, machines consisting of multiples of a basic 16 processor unit could be used.Keywords
This publication has 13 references indexed in Scilit:
- The Organization and Use of Parallel MemoriesIEEE Transactions on Computers, 1971
- An empirical study of FORTRAN programsSoftware: Practice and Experience, 1971
- A survey of techniques for recognizing parallel processable streams in computer programsPublished by Association for Computing Machinery (ACM) ,1969
- Experiments on Models of Computations and SystemsIEEE Transactions on Electronic Computers, 1967
- Validity of the single processor approach to achieving large scale computing capabilitiesPublished by Association for Computing Machinery (ACM) ,1967
- Observations on high-performance machinesPublished by Association for Computing Machinery (ACM) ,1967
- Analysis of Graphs by Connectivity ConsiderationsJournal of the ACM, 1966
- A survey of problems and preliminary results concerning parallel processing and parallel processorsProceedings of the IEEE, 1966
- DINA, a digital analyzer for Laplace, poisson, diffusion, and wave equationsTransactions of the American Institute of Electrical Engineers, Part I: Communication and Electronics, 1952
- A Bell Telephone Laboratories' Computing Machine--IIMathematical Tables and Other Aids to Computation, 1948