Frances Allen | |
---|---|
![]() | |
Born | Frances Elizabeth Allen August 4, 1932 Peru, New York, U.S. |
Died | August 4, 2020 Schenectady, New York, U.S. | (aged 88)
Nationality | American |
Education | University at Albany (BS) University of Michigan (MS) |
Spouse | |
Awards |
|
Scientific career | |
Fields | |
Institutions | IBM New York University |
Website | www |
Frances Elizabeth Allen (August 4, 1932 – August 4, 2020)[2][3] was an American computer scientist and pioneer in the field of optimizing compilers.[4][5][6] Allen was the first woman to become an IBM Fellow, and in 2006 became the first woman to win the Turing Award.[7] Her achievements include seminal work in compilers, program optimization, and parallelization.[8] She worked for IBM from 1957 to 2002 and subsequently was a Fellow Emerita.[9]
Early life and education
[edit]Allen grew up on a farm in Peru, New York, near Lake Champlain, as the oldest of six children. Her father was a farmer, and her mother an elementary schoolteacher.[9] Her early elementary education took place in a one-room school house a mile away from her home, and she later attended a local high school.[10]
She graduated from The New York State College for Teachers (now part of the University at Albany, SUNY) with a Bachelor of Science degree in mathematics in 1954 and began teaching school in Peru, New York.[10] Allen taught math from algebra to trigonometry.[11] She needed a Master's degree to earn a teaching certification, so after two years, she enrolled at the University of Michigan. She earned a Master of Science degree in mathematics in 1957.[12]
Career and research
[edit]Teaching Fortran
[edit]Deeply in debt with student loans, Allen joined IBM Research in Poughkeepsie, New York, as a programmer in 1957, where she taught incoming employees the basics of Fortran.[11] This was one of the first high-level programming languages, and had only been announced two months before Allen joined IBM.[13]
During this period, Allen often learned topics about Fortran only days before teaching researchers the same lessons.[11] She taught herself about Fortran's compiler by reading its source code, and this spawned a lifelong research interest in designing compilers.[13] At the time, researchers were hesitant to move to Fortran because they were used to writing in assembly, and it was common knowledge that compiled languages could not produce code that was performant enough to compare.[14] Allen planned to return to teaching in schools once her student loans had been paid, but ended up staying with IBM for her entire 45-year career.[11]
Compiler optimizations
[edit]In 1959, Allen was assigned to the Harvest project for code breaking with the National Security Agency, and worked on a programming language called Alpha.[7] The project was confidential and designed for spying on the Soviet Union, but many on the team did not know the details until they were leaked to the press later. Allen managed the compiler-optimization team for both Harvest and the earlier Stretch project.[14]
In 1962, Allen was transferred to Thomas J. Watson Research Center, where she contributed to the ACS-1 project, and later in the 1970s, to PL/I. During these years, she worked with fellow researcher John Cocke to write a series of seminal papers on optimizing compilers, helping to improve the efficiency of machine code translated from high-level languages.[2] The pair also created an optimizing compiler for Fortran, and the compiler eventually handled Autocoder and Alpha as well.[13]
Allen began to publish papers on optimizing compilers in order to share her knowledge with other researchers. Her first publications included "Program Optimization" and "Control Flow Analysis".[13] Allen and Cocke published "A Catalogue of Optimizing Transformations" in 1972, which systematized the most important techniques for compiler optimizations. The work is considered one of her most important, and it covers key compiler techniques like procedure inlining, loop unrolling, common subexpression elimination, code motion, and peephole optimization.[14]
During her time at IBM, Allen actively pushed for the involvement of computer scientists from underrepresented groups, and found ways to attract and keep women in the field. She was a key reason that half of IBM's compiler research team was composed of women through the 1970s and 1980s.[2] Allen volunteered for many years through the IBM mentor program.[11] Barbara Simons worked with Allen and considered her a friend: she recalled Allen as a strong feminist.[13]
From 1970 to 1971 Allen spent a sabbatical at New York University and acted as adjunct professor for a few years afterward. Another sabbatical brought her to Stanford University in 1977.[12] Allen taught Anita Borg, and was the only woman professor of Borg's while she was in graduate school.[13] Allen was also named the Chancellor’s Distinguished Lecturer and Mackay Lecturer at the University of California, Berkeley and Regents Lecturer at the University of California, San Diego.[11]
Parallel computing
[edit]From 1980 to 1995, Allen led IBM's work in the developing parallel computing area, and helped to develop software for the IBM Blue Gene project.[15] She worked on PTRAN, the Parallel Translator, which was designed to take advantage of automatic parallelism through noting a program's dependency graph and distributing work across a parallel architecture. The system's goal was to automatically transform programs written sequentially into efficiently parallelized programs.[14]
Allen became the first female IBM Fellow in 1989.[16] She became president of IBM's steering committee, IBM Academy, in 1995.[14] In 2000, IBM began an award in her honor, the Frances E. Allen Women in Technology Mentoring Award.[13]
Allen retired from IBM in 2002, but remained affiliated with the corporation as a Fellow Emerita. In 2007, the IBM Ph.D. Fellowship Award was created in her honor.[16] After retiring, she remained active in programs that encourage women and girls to seek careers in science and computing.[17]
Her A. M. Turing Award citation reads:
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 compilers.
Awards and honors
[edit]
Allen was a Fellow of the Institute of Electrical and Electronics Engineers (IEEE) and the Association for Computing Machinery (ACM). In 2000, she was made a Fellow of the Computer History Museum "for her contributions to program optimization and compiling for parallel computers".[18] She was elected to the National Academy of Engineering in 1987,[19] to the American Philosophical Society in 2001,[20] and to the National Academy of Sciences in 2010.[1] She was nominated a Fellow of the American Academy of Arts and Sciences in 1994.[21]
She received the IEEE Computer Society Charles Babbage Award in 1997 and the Computer Pioneer Award of the IEEE Computer Society in 2004.[22] In 1997, Allen was inducted into the Witi Hall of Fame.[23] She won the 2002 Augusta Ada Lovelace Award from the Association for Women in Computing. In 2004, Allen was the winner of the ABIE Award for Technical Leadership from the Anita Borg Institute.[24][25]
Allen was recognized for her work in high-performance computing with the 2006 Turing Award.[9][26] She became the first woman recipient in the forty-year history of the award, which is considered the equivalent of the Nobel Prize for computing and is given by the Association for Computing Machinery.[27][17][28][29][30] In interviews following the award she hoped it would give more "opportunities for women in science, computing, and engineering".[31] Allen won the Turing award 19 years after her collaborator, John Cocke, won the same award.[13]
In 2009 she was awarded an honorary doctor of science degree from McGill University for "pioneering contributions to the theory and practice of optimizing compiler techniques that laid the foundation for modern optimizing compilers and automatic parallel execution".[32]
In 2020, after Allen's death, IEEE created the Allen Medal to honor "innovative work in computing leading to lasting impact on other fields of engineering, technology or science." This was only the second IEEE Medal to be named after a woman.[11] The first award would be granted in 2022.[13]
Publications
[edit]A list of her select publications includes:[4][6]
- Allen, Frances E.; Cocke, John (1971). Rustin, Randall (ed.). A Catalogue of Optimizing Transformations. Design and Optimization of Compilers. Thomas J. Watson IBM Research Center. Prentice Hall.
- Allen, Frances E., "Interprocedural data flow analysis", Proceedings of Information Processing 74, IFIP, Elsevier / North-Holland (1974), 398–402.
- Allen, Frances E. and J. Cocke, "A program data flow analysis procedure", Communications of the ACM, Vol. 19, No. 3 (March 1976), 137–147.
- Allen, Frances E. et al., "The Experimental Compiling System", IBM Journal of Research and Development, Vol. 24, No. 6, (November 1980), 695–715.
- Allen, Frances E., "The history of language processor technology at IBM", IBM Journal of Research and Development, Vol. 25, No. 5 (September 1981), 535–548.
Personal life
[edit]In 1972, Allen married New York University computer science professor and collaborator Jacob T. Schwartz.[5] They divorced in 1982.[2]
Allen was a mountain climber and member of the American Alpine Club.[11] She established a new route across Ellesmere Island, the most Northern part of Canada.[13]
Allen died on August 4, 2020, her 88th birthday, from complications with Alzheimer's disease.[2][15][33]
References
[edit]- ^ a b "Frances Allen". nasonline.org. National Academy of Sciences. Retrieved August 18, 2017.
- ^ a b c d e Metz, Cade (August 8, 2020). "Frances Allen, Who Helped Hardware Understand Software, Dies at 88". The New York Times. Retrieved December 30, 2020.
- ^ Croucher, John S. "Frances 'Fran' Elizabeth Allen", Women of Science: 100 Inspirational Lives. Gloucester UK: Amberley Publishing 2019, 21-23.
- ^ a b Frances Allen author profile page at the ACM Digital Library
- ^ a b Abbate, Janet (August 2, 2001). "Oral-History:Frances "Fran" Allen". Archived at the ETHW. New Brunswick, New Jersey. Interview #573 for the IEEE History Center. Retrieved April 16, 2018.
- ^ a b Frances Allen at DBLP Bibliography Server
- ^ a b Steele Jr., Guy (2011). "An interview with Frances E. Allen". Communications of the ACM. 54: 39–45. doi:10.1145/1866739.1866752. S2CID 11847872.
- ^ "IBM Fellow becomes first woman to receive A. M. Turing Award". IBM. Archived from the original on March 6, 2007. Retrieved September 28, 2009.
{{cite web}}
: CS1 maint: bot: original URL status unknown (link), IBM Corporation. - ^ a b c Steele, Guy. "Frances Allen". amturing.acm.org. Retrieved May 6, 2021.
- ^ a b Lohr, Steve (August 6, 2002). "Scientist at Work: Frances Allen; Would-Be Math Teacher Ended Up Educating a Computer Revolution". The New York Times. Retrieved August 8, 2020.
- ^ a b c d e f g h "Frances Allen". IBM. Retrieved August 23, 2025.
- ^ a b "Frances Allen interview transcript" (PDF). 03.ibm.com. April 5, 2003. Archived from the original (PDF) on May 15, 2005. Retrieved August 18, 2017.
- ^ a b c d e f g h i j Garfinkel, Simson; Spafford, Eugene H. (September 23, 2020). "In Memoriam: Fran Allen (1932--2020)". Communications of the ACM. 63 (10): 18–19. doi:10.1145/3418560. ISSN 0001-0782.
- ^ a b c d e James, Ben (August 25, 2020). "Frances Allen Optimised Your Code Without You Even Knowing". Hackaday. Retrieved August 23, 2025.
- ^ a b Refkin, Glenn (August 7, 2020). "Frances Allen, first woman to win Turing Award for contributions to computing, dies at 88". The Washington Post. Retrieved August 8, 2020.
- ^ a b "IBM Creates Ph.D. Fellowship Award in Honor of First Female Turing Award Winner Fran Allen". 03.ibm.com. October 19, 2007. Archived from the original on July 18, 2012. Retrieved November 2, 2016.
- ^ a b "First Woman Honored With Turing Award". Associated Press. February 21, 2007. Retrieved August 8, 2020 – via CBC.
- ^ "Frances Allen". Computer History Museum. Retrieved April 16, 2018.
- ^ Frances E. Allen at the National Academy of Engineering. Retrieved April 16, 2018.
- ^ According to the APS member history.
- ^ "Book of Members, 1780–2010: Chapter A" (PDF). American Academy of Arts and Sciences. Retrieved April 15, 2011.
- ^ 2004 Computer Pioneer Award, IEEE Computer Society. Retrieved April 16, 2018.
- ^ "WITI Login and Signup". Archived from the original on February 23, 2007. Retrieved February 6, 2007.
- ^ "Frances Allen – Anita Borg Institute". Anitaborg.org. October 1, 2004. Archived from the original on August 8, 2017. Retrieved August 18, 2017.
- ^ "ABIE Awards – Anita Borg Institute". Anitaborg.org. Archived from the original on August 7, 2017. Retrieved August 18, 2017.
- ^ Allen, Frances E. (2006). 2006 Turing Award Lecture. ACM. Retrieved October 5, 2013.
- ^ Perelman, Deborah (February 27, 2007). "Turing Award Anoints First Female Recipient". eWEEK. Ziff Davis Enterprise. Archived from the original on January 22, 2020. Retrieved November 5, 2007.
- ^ "First Woman to Receive ACM Turing Award" (Press release). The Association for Computing Machinery. February 21, 2007. Archived from the original on May 26, 2012. Retrieved November 5, 2007.
- ^ Lombardi, Candace (February 26, 2007). "Newsmaker: From math teacher to Turing winner". Retrieved November 5, 2007.
- ^ Marianne Kolbasuk McGee (February 26, 2007). "There's Still A Shortage Of Women In Tech, First Female Turing Award Winner Warns". InformationWeek.com. CMP Media. Archived from the original on January 22, 2020. Retrieved November 5, 2007. Online February 24, 2007.
- ^ Thomas, Jeffrey (March 16, 2007). "Turing Award Winner Sees New Day for Women Scientists, Engineers". Bureau of International Information Programs, U.S. Department of State. Archived from the original on January 15, 2008. Retrieved November 5, 2007.
- ^ "McGill to bestow 11 exemplary individuals with honorary degrees". McGill Reporter. May 19, 2009.
- ^ "Remembering Frances Allen". IBM. August 5, 2020.
External links
[edit]- Frances Allen: 2000 Fellow Awards Recipient via Computer History Museum
- Fran Allen on Compilers and Parallel Computing Systems Notes from her 2008 Organick Memorial Lecture