ACM SIGPLAN Notices · 1993 · 33 citations · 16 references
ComputingComputer EngineeringComputer ScienceCompilersHardware-software Co-designSchedulingData-flow AnalysisInstruction SchedulingPerformance OptimizationRegister AllocationTiming AnalysisWorst-case Execution Time AnalysisExecution Time AnalysisExecution Time EstimationMicroarchitectural OptimizationModulo SchedulingPipeline SchedulingRegister PressureRegister Pressure MinimizationRegister-pressure-aware Instruction Selection
This paper shows how to software pipeline a loop for minimal register pressure without sacrificing the loop's minimum execution time. This novel bidirectional slack-scheduling method has been implemented in a FORTRAN compiler and tested on many scientific benchmarks. The empirical results—when measured against an absolute lower bound on execution time, and against a novel schedule-independent absolute lower bound on register pressure—indicate near-optimal performance.
16
A data locality optimizing algorithm
Michael E. Wolf, Monica S. Lam · 1991 · 1.3K citations · Full text
Conversion of control dependence to data dependence
John R. Allen, Ken Kennedy, Carrie Porterfield et al. · 1983 · 605 citations
An efficient method of computing static single assignment form
Ron K. Cytron, Jeanne Ferrante, Barry K. Rosen et al. · 1989 · 465 citations
The multiflow trace scheduling compiler
P. Geoffrey Lowney, Stefan M. Freudenberger, Thomas J. Karzes et al. · The Journal of Supercomputing · 1993 · 379 citations
The Cydra 5 departmental supercomputer: design philosophies, decisions, and trade-offs
B. Ramakrishna Rau, David W. L. Yen, Wei Yen et al. · Computer · 1989 · 355 citations