For some computer scientists the idea of running a high-performance computer centre is worse than going over to the dark side.
Instead of contemplating deep systems concepts, their time is spent negotiating with power companies and hardware vendors: that is when they are not organising the holiday rota or dealing with a complaint from a powerful user.
So when Professor Kathy Yelick, a highly respected computer scientist from UC Berkeley, agreed to take over as director of the National Energy Research Scientific Computing Center (NERSC) at the Lawrence Berkeley National Laboratory, heads turned. This is a high-performance computing facility providing a service to thousands of scientists all over the US and is part of the Department of Energy.
But Yelick has spent her research career in parallel computing and working on the architectures and software of the systems of the future. To move from the academic study of a field into actually building and running a service based on that research has got to be seen as a gutsy move. The phrase ‘living the vision’ springs to mind.
Horst Simon, director of the Computational Research Division at Lawrence Berkeley National Laboratory, was on the search committee that eventually picked Yelick for the job. She has taken over half of what was his responsibility. He says: ‘I am very happy to have a partner and colleague with whom to share my considerable responsibilities. She was a tenured professor with an outstanding research career, so there was not a strong incentive for her to move into a hands-on management position dealing with large contracts and vendors.
One of the exceptional things about her is that she is a computer scientist who was always interested in the applications, so it was not such a big step for her to actually be running a centre.
‘One of my colleagues said I was making a big mistake in appointing her, because she was one of the few established computer scientists who cares about supercomputing from an academic standpoint. “If you make her one of us then you are taking away an ally in the computer science field,” he said. The problem is that there are so many other interesting fields for computer scientists, so there were not many in computer science who worked in our direction. Of course, things are now changing in high performance computing, because most of the computing world is going parallel and so all the things that we have learned are now of interest.
‘Having Kathy at NERSC brings us closer to the mainstream academic computer science community, which has got to be a good thing. It is extremely important for NERSC to have a leader who knows what is going on in computer science. It is also a large organisation, so you need someone who has people and financial management skills. You also need to know how to work with multiple stakeholders. And you need to be a leader, in terms of having the right kind of personality.
It’s very hard to find someone who is strong in all these directions. ‘Kathy was relatively inexperienced as a manager, but she was strong in the other areas. One of her key strengths is that she pays attention to details and can easily grasp the issues involved in a diverse range of projects. She is very proactive. She has not run a $50m organisation, but she has run a $2m project and she appreciates how things work together and how to resolve problems in a way that makes people feel that something has been accomplished. I feel good about having someone with whom I can talk to and work out a problem.
‘She is probably one of the leading US researchers in parallel models and Global Array Space Languages. She has made significant contribution to languages, such as UPC (unified parallel C), which has been picked up by many people in the high-performance computing community. She also worked on Titanium, which is the Java-based version.
‘She led the future technologies group at Berkeley and people have said that Kathy is a great pleasure to work with. It would be fair to say that her computer science department tried very hard to talk her out of taking the NERSC job, but she will still be working with them some of the time.’
Yelick was born in Iowa where her father worked for Ma Bell. As a child she also lived in the Dakotas. Her father later went into politics as a political lobbyist and a public relations professional, while her mother stayed at home and later took a government job. Yelick was a good student at school, but says she was not exceptional. She always liked reading and music, until she went to college when she took up rowing.
She says: ‘From about 4th grade I took the opportunity to do more advanced mathematics and I kept pedalling that way from an early age. I applied for a lot of different schools, including Princeton, MIT and the local School of Mines and I just felt more at home at MIT. My plan as a freshman was to go into aeronautical engineering, but I did my first programming course and I just loved it. I started taking more courses and eventually it became my major. I had wanted to be an astronaut or something, but I discovered I enjoyed programming more.
‘It was a very exciting time to be at MIT. I met a lot of smart and interesting people and there were a lot of interesting projects going on. I had intended to get a job in industry and interviewed for a few jobs. MIT makes it very easy to stay there and I was able to take advantage of a special scheme to get to graduate school at MIT.’
Yelick’s first graduate work was on algorithms for theorem proving and she spent some time working in Paris. During graduate school she got her first exposure to parallel computing and started becoming interested in parallel code. Her PhD was about using parallel computing in theorem proving.
In 1991 she started looking for an academic job and interviewed at a lot of universities. She was offered a position at UC Berkeley and accepted it because she was drawn by the work of Susan Graham and Paul Hilfinger. Yelick had done some work with Graham before, and the three have collaborated since on the Titanium Java-based parallel computing language.
Shortly after arriving at Berkeley she met her husband, a fresh young researcher called James Demmel (these days he is better known as Dr Richard Carl Dehmel, Distinguished Professor of Mathematics and Computer Science, and is a leading contributor to the LAPACK project). They married in 1993, thus getting around the classic ‘academic two-body problem’. Yelick says: ‘In some ways it’s easier to get your job first. We have worked together a lot, although he works more in numerical algorithms and scientific computing.’
Yelick says that, at the start of her research career, she was simply looking for interesting puzzles to solve, which is why she was more interested in symbolic algorithms. But, gradually, she has become more aware of the applications side of her work and has become more interested in how her work can actually be applied to real-world problems.
She says: ‘I am more interested in what problems can be solved using computers, as opposed to what is just a challenging intellectual problem in itself, applying computers to things like health and planet modelling. That is one of the reasons that I took the NERSC job, because it is much closer to helping scientists to solve real problems.
‘I have had a couple of language projects and I have tried to make them close to application needs, rather than just of interest to programming language people. We have always had applications people involved in our language projects to get a better sense of what they need. As NERSC director that will shift to trying to get a broader perspective about what the users need from the machines and the tools.
‘As a tools person I am trying to connect the hardware to the applications. The hardware people are constantly coming up with new things and there are challenges getting the right performance out of them. I am usually in a position to try to explain to the hardware people what the applications people need and talking to the applications people about what the hardware can do.’
The Lawrence Berkeley Laboratory was not alien territory to Yelick as it is situated next door to UC Berkeley and there are frequent research contacts. Yelick was working loosely with a group at Lawrence Berkeley, which was working on the parallel language UPC, and when the group leader left she was brought in to the staff in the Future Technologies Group. When Brent Gorda left as head of the LBL Future Technologies Group, Yelick was asked to take over this managerial responsibility. This involved her taking some leave from her academic work.
Yelick said that she found management interesting – even though it did involve a certain amount of bureaucracy. She said: ‘I really enjoyed working in the Future Technologies Group. The projects were really interesting and the group of people were great to work with. The more interesting part of management is helping to establish the research direction for the group and how to make the projects successful, more high-level strategic thinking about how to make the group successful. There is a big difference between my work at NERSC and the people managing the faculty. Faculty people are more independent and there is more management control in NERSC. People at NERSC will actually do what I ask them to do. But I try to work by building consensus around an idea and try to convince people that it’s a good idea rather than being autocratic and telling them what to do. I think that will be more my management style at NERSC.’
Her former projects with the Future Technologies Group are in the Computational Research Division, which continues to be run by Horst Simon. She will be managing the provision of computer services to thousands of scientists working on Department of Energy projects throughout the US (apart from Argonne and Oak Ridge, which have their own facilities). The job entails a lot more ‘customer service’ work, as well as research on computer science problems.
In particular it involves research on serving scientists with data intensive applications, as well as those requiring high-performance computation. It also involves working with vendors on future requirements as well as with users on future facilities that they are going to have to provide for future needs.
Vendors are taking more interest in parallel systems as they start using multiple cores to increase power density. The users are also having to learn the parallel programming techniques to take advantage of these. For Yelick this means that the mainstream community is starting to realise why her work – and that carried out by others who pioneered parallel systems – is important. Even vendors working in the consumer market are now interested in parallel computing for games machines.
Yelick says: ‘I see it as leveraging my experience to help solve problems for the user community. I feel that I have progressed from a real computer science domain into much more application-driven research. The next logical step in this progression is to work more closely with the users.
‘I have a new project here on multi-core for non-scientific computing and I think that is complementary to what I am doing at NERSC, which is how to build large scale machines out of these commodity components.
The emphasis at NERSC is on thousands of sockets with multi-core processors in each socket. ‘The problem for scientific computing has always been that it is not really a big enough market to be able to influence what the vendors are doing. The number of machines that are built for centres like NERSC is not big enough to attract many vendors and does not move the chip vendors. Now there is a lot more interest from these vendors in talking to people with experience with parallelism.
Computer games are largely about physics these days. It’s not so much about accuracy, but there is a lot of simulation going on. That is what is so exciting at the moment looking at the connections between the very highend computing and the consumer markets.
Even with processors these days there is a convergence between graphics processors and CPUs. ‘At NERSC we need to understand the direction so that we can anticipate these changes rather than being thrown by them.’
Yelick has tried to divide up her week so that she still has a day in the faculty to help her graduate students and a day doing her own research. She knew that something had to give, because the management responsibility was always going to take a lot of time.
Undergraduate teaching has had to go. Outside of work she is also the mother of two relatively young children and, at weekends, she tries to be a good ‘soccer mom’. Her family is extremely important to her and spending time with them is her major hobby.
Her husband has taken a sabbatical this spring to help more at home while she makes the transition to a higher level of responsibility. Something which you might like to describe as parallel parenting, perhaps?
Education
1985 B.S. and M.S. in Computer
Science, Massachusetts Institute of
Technology
1991 Ph.D. in Computer Science,
Massachusetts Institute of Technology
Experience
2002-present
Professor, Computer Science,
University of California, Berkeley
2008
Division Director, National Energy
Research Scientific Computing Center
1996-2008
Senior Research Scientist,
Lawrence Berkeley National Laboratory
1996-2002
Associate Professor, Computer Science,
University of California, Berkeley
1991-1996
Assistant Professor, Computer Science,