IEEE Transactions on Computers · 1979 · 119 citations · 18 references
EngineeringCompiler TechnologyRecurrence SystemComputer ArchitectureComputational ComplexityAssignment StatementsSoftware AnalysisParallel Complexity TheorySystems EngineeringParallel ComputingInstruction-level ParallelismMassively-parallel ComputingParallelizing CompilerCompiler SupportDependence StructureComputer EngineeringComputer ScienceProgram OptimizationOptimizing CompilerProgram AnalysisParallel Processor BoundsFormal MethodsParallel Programming
The main goal of this paper is to show that a large number of processors can be used effectively to speed up simple Fortran-like loops consisting of assignment statements. A practical method is given by which one can check whether or not a statement is dependent upon another. The dependence structure of the whole loop may be of different types. For each type, a set of time and processor upper bounds is given. We also show how a loop can sometimes be transformed to change its dependence structure. Finally, we give a result on the possible splitting up of a given recurrence system into a number of smaller subsystems. These results can be used to modify and sometimes improve the bounds for the loops as demanded by special circumstances.
18
An empirical study of FORTRAN programs
Donald E. Knuth · Software Practice and Experience · 1971 · 682 citations
The parallel execution of DO loops
Leslie Lamport · Communications of the ACM · 1974 · 603 citations · Full text
Engineering, Computer Architecture, Parallel Implementation +16
J. W. S. Cassels · Bulletin of the London Mathematical Society · 1970 · 519 citations