ACM A. M. Turing Award
USA - 2006READ FULL CITATION AND ESSAY
For pioneering contributions to the theory and practice of optimizing compiler techniques that laid the foundation for modern optimizing compilers and automatic parallel execution. press release
Fran Allen's work has had an enormous impact on compiler research and practice. Both alone and in joint work with John Cocke, she introduced many of the abstractions, algorithms, and implementations that laid the groundwork for automatic program optimization technology. Allen's 1966 paper, "Program Optimization," laid the conceptual basis for systematic analysis and transformation of computer programs. This paper introduced the use of graph-theoretic structures to encode program content in order to automatically and efficiently derive relationships and identify opportunities for optimization. Her 1970 papers, "Control Flow Analysis" and "A Basis for Program Optimization" established "intervals" as the context for efficient and effective data flow analysis and optimization. Her 1971 paper with Cocke, "A Catalog of Optimizing Transformations," provided the first description and systematization of optimizing transformations. Her 1973 and 1974 papers on interprocedural data flow analysis extended the analysis to whole programs. Her 1976 paper with Cocke describes one of the two main analysis strategies used in optimizing compilers today.
Allen developed and implemented her methods as part of compilers for the IBM STRETCH-HARVEST and the experimental Advanced Computing System. This work established the feasibility and structure of modern machine- and language-independent optimizers. She went on to establish and lead the PTRAN project on the automatic parallel execution of FORTRAN programs. Her PTRAN team developed new parallelism detection schemes and created the concept of the program dependence graph, the primary structuring method used by most parallelizing compliers.
In addition to her many contributions to research and practice, throughout her career Fran Allen has been an inspirational mentor to younger researchers and a leader within the computing community.
USA - 1994
For co-authoring the paper "A Program Data Flow Analysis Procedure"
ACM Programming Systems and Languages Paper Award
USA - 1976
A program data flow analysis procedure, Communications of the ACM, March 1976 (with J. Cocke)