Frances Allen: A pioneer in high-performance computing
The explorer, adventurer, and renowned computer scientist delivers a Regents' Lecture for EECS on Jan. 31
| 23 January 2008
|Frances Allen, IBM Fellow Emerita at the T.J. Watson Research Center and winner of the A. M. Turing Award in 2006, delivers a Regents' Lecture, "The Challenge of the Multi-Cores: Think Sequential, Run Parallel," at 4 p.m., Thursday, Jan. 31, in Sibley Auditorium, Bechtel Engineering Center. A reception follows in Bechtel's Garbarini Lounge. Her visit is sponsored by the Department of Electrical Engineering and Computer Sciences; visit their website for information.|
Frances Allen's career not only spans most of the history of the field of computer science, it has shaped that field in profound ways. And yet, in the spirit of a life well- measured, the 75-year-old Allen would be the first to say it's almost as important that she now gets to ski for free at Sun Valley's Snowbasin Resort. "And that's a real delight," says the veteran skier and winter mountaineer, just back from a weeklong trip on the Utah slopes.
The oldest of six children, Allen grew up on a dairy farm in rural Peru, N.Y., just south of the Canadian border. In 1957, with a master's degree in math from the University in Michigan in hand and a job teaching high school in upstate New York, she was recruited by IBM's research division and given the assignment of teaching staff scientists the revolutionary new high-level computer programming language, Fortran (Formal Translating System).
The world knows of Fortran's revolutionary success, but is less familiar with the role played by the compiler software used to translate users' problem-solving language statements into more efficient sequences of instructions for the most powerful computers. And that's where Allen was drawn. Designing compilers became the focus of her attention from the late 1950s on - at a time several years before universities would offer degrees in computer science, let alone have entire departments devoted to it. Her work set the tone for how everyone in the field views compiler optimization and its effectiveness in generating efficient code.
Today, Allen, a member of the National Academy of Engineering since 1987, is an IBM Fellow Emerita at the T.J. Watson Research Center in Yorktown Heights, N.Y., having retired in 2002. (She was the first female to be named an IBM Fellow, in 1989.) In 2000, IBM created the Frances E. Allen Women in Technology Mentoring Award, naming her its first recipient. And in 2006 she received the coveted ACM (Association for Computing Machinery) A.M. Turing Award, sometimes called the "Nobel Prize in Computing." (Its 50th recipient, Allen was the first woman ever selected.)
Allen's lasting contributions, not only to the fundamental theory and practice of compiler efficiency for high-performance computers but also her later work designing compiler software for parallel computers, continue to earn her singular honors. "Fran Allen's work has led to remarkable advances in compiler design and machine architecture that are at the foundation of modern high-performance computing," says Berkeley EECS professor Ruzena Bajcsy, who chaired the 2006 Turing Award committee.
Allen will be on campus to deliver a Regents' Lecture on Thursday, Jan. 31. The Berkeleyan caught up with her last week for a conversation.
You began your career as a high-school math teacher but stayed only two years before joining IBM. That decision obviously changed your life.
After I graduated from Michigan I went back to teaching math in the high school I graduated from in Peru, N.Y. I was the school's only math teacher, and I loved it - but I had college loans to pay off. When an IBM recruiter offered me a job, I thought I'd take it to pay off my debt and would return to teaching later.
But it didn't work out that way. My first assignment at IBM was to teach the new Fortran language to the scientists at IBM Research. To do that I had to learn the language and convince the scientists to learn it too, because, like it or not, they would have to use it that next September. I became my own best student, totally intrigued by language, compiler, and computer systems.
Early on in your work you chose compiler optimization as your specialty. While crucial, some say it's a somewhat esoteric, even arcane specialty. What drew you to it?
It is sort of arcane now, but it wasn't always. I was inspired by my early experience teaching Fortran. John Backus, a visionary in the field who recently passed away, led that project. More than 50 years ago, when the field was just starting, he laid out two core goals for the project that I have never forgotten. The first was that Fortran had to enable users to be more productive by spending less time writing and debugging programs. The second was that Fortran programs had to run almost as fast as hand-coded programs, and do so nearly every time. His goals became my career goals.
The resurgence in multi-core microprocessor-based parallel computing technology is now part of most computing platforms, from laptops to PCs. Is this an area where opportunities for new contributions lie?
As chip manufacturers have turned to putting multiple processors on a single chip, computers have increasingly become parallel machines, where groups of processors are connected to work together in parallel using software that parcels out the tasks across the processors. Parallelism is no longer specialized to big scientific problems, so from the technological point of view, it's where we must work. In 1980 I launched a compiler project at IBM called PTRAN (Parallel TRANslation project), which lasted some 15 years. Our focus was on software, mostly compilers, for parallel computers. But we're still looking for ways to exploit parallelism to improve performance. There's still a great deal to be done, and the challenge is huge.
Your life has always been a balance of serious work and serious adventure, including exploring uncharted areas of the Arctic and the Chinese/Tibetan border, among others. Where does your explorer's "gene" come from?
I think of myself as an explorer on multiple fronts. On an exploratory trip to Baffin Island our team made six first ascents, mapping uncharted mountains. On an Ellesmere Island trip, we established a new route across that island. But the physical space we live in is only one aspect of my interest in exploration. I like hearing new ideas, meeting new people, facing new challenges. It's part of who I am.
What's the best exploratory voyage you've ever taken?
Beyond a doubt, it's my 50 years in computing. What a trip!