"Parallelism cuts down significantly on the time it takes to reach a solution to a research problem, and increases the size of the problem scientists can tackle . . . Since you can readily adapt office CPUs to the parallel environment, organizatons can investigate parallel computing technologies in a low risk, inexpensive way."
What is parallel processing? For those who may know something about supercomputing, but haven't yet mastered the nuances of terms like "petabyte," "gigaflop" "megaflop," and "teraflop" (and perhaps want to keep it that way), here's a relatively painless description: Parallel processing involves the linking together of many processing units (CPUs) to make up a single computational system. This network of processors (sometimes referred to as nodes) constitutes a supercomputing facility that can be competitive with and, often, superior in performance to the single-processor (serial) supercomputer. Penn State's IBM RS/6000 Scalable POWER Parallel system (IBM-SP), located in the Computer Building at University Park, is a good example of a state-of-the art parallel processing facility: it has 97 processors, and can perform over 21 gflops (about 21 billion computations per second).
The following analogy may help highlight the difference between the two high-performance computing modes, and perhaps provide an explanation for why this change is taking place. Imagine an extremely fast, super-intelligent brain working on solving a research problem something on the level of, say, creating a meteorological model for forecasting weather. Because of the complexity of the task, it may take this brain several months, or even years to complete the calculations needed to solve the problem. However, if you could add another brain to work with the first one, you could cut the time it takes to reach a solution in half. And indeed, if you could continue to add brains, you would continue to reduce the calculation time. (Note that one-to-one scalability in parallel processing is not guaranteed, however, since interaction between processors decreases overall calculation speed.) Parallel processing, then, is the concept of "many brains" (or CPUs) linked to perform intensive computational tasks. Alternatively, the "lone brain," which processes data linearly, represents what supercomputing used to be (traditionally, the sequential mainframe computer).
According to Kevin Morooney, Director of Graduate Education and Research Services at the Center for Academic Computing, high-performance computing centers around the country are moving decisively in the direction of parallel processing for several reasons: "Parallelism cuts down significantly on the time it takes to reach a solution to a research problem, and increases the size of the problem scientists can tackle. For corporations and organizations which already have a large number of computers available, there are inexpensive ways to investigate this technology," he states. "Since you can readily adapt office CPUs to the parallel environment, organizations can investigate parallel computing technologies in a low risk, inexpensive way."
In his work consulting with researchers at Penn State, Morooney does find some situations where the best solution to a problem turns out to be serial computing (using only one processor), but those instances are becoming less common. "Parallel processing is often the best solution for faculty and research groups who are taking a look at significantly changing the scope of their work," he says, "but for some individuals, using a network environment can be too labor intensive. Faculty involvement and commitment is essential," he explains, "because learning how to use parallelism takes time. Creating 'real world' simulations to solve research problems in parallel involves dividing data or work into subsets, and this can be time consuming."
Moreover, in order for researchers to find the right high-performance solution for a problem, it's essential to understand network architecture (inter-processor
communication). According to Morooney, parallel networks are configured differently according to the work they are designed to do. Each network (or parallel environment) has to have some form of "administration" which will control when (and
from where) commands originate. In some cases all the individual processors share this management responsibility; in others, one unit will dictate to all the others in a "frame" (group of 4, 8 or 16 units housed together); and in still other instances, one computer in a pair will act as "master" and control another "slave" CPU.
"...in the IBM-SP, each processor is so powerful that being clever to make it do parallel work isn't as necessary as it once was. Evolution has made the parallel machine much more user-friendly."
Barbara J. Garrison began her career in Chemistry after receiving a Ph.D. from the University of California at Berkeley in 1975. After a postdoctoral position at Purdue, she joined the Penn State faculty in 1979. Professor Garrison is internationally known for her computer modeling efforts aimed at understanding the interactions and reactions of gases and solid surfaces. She has served on the National Allocations Committee at the Cornell Theory Center, the Advisory Committee to the Chemistry Division of the NSF, and the Basic Energy Sciences Advisory Committee of the DOE, and numerous other boards. She is a recipient of the Peter Mark Award from the American Vacuum Society (1984), the Penn State Faculty Scholar Medal (1990), and the Garvan Medal from the American Chemical Society (1994).
Recently Professor Garrison answered some questions about parallel processing in her office in Whitmore Laboratory.
Q. How have you been using supercomputing and the IBM-SP to support your research interests?
A. I do molecular dynamics simulations in which I model the interaction of high-energy ion beams and laser beams with solid surfaces. My main interest is trying to figure out the fundamental processes that are taking place in these situations. There are some fundamental issues involved with each of the techniques as well as practical applications. For example, laser ablation is used in eye and dental surgery, laser etching, thin film deposition, and biological mass spectrometry.
To model these real processes, the molecular dynamics simulations involve thousands to tens of thousands of particles. For all these particles we solve the classical equations of motion (Newton's Law), and this takes computer time. The more particles you have, the longer it takes a computer to solve the equations and every time the computers get faster our eyes get bigger. The simulations take just as much computer time because the sizes of the system are larger, and, most importantly, more realistic.
I do large calculations, so I use a significant amount of computer time. It was only natural that I get involved with the CAC and the IBM-SP project.
Q. Can you tell me about the history of your involvement with supercomputing and the IBM-SP here at Penn State, and have you ever used any of the national supercomputer centers?
A. In 1993 a group of five faculty from the Departments of Chemistry and Materials Science (David Allara, Sanat Kumar, Paul Weiss, Nicholas Winograd and myself) submitted a proposal to the Selected University Research (SUR) Program from IBM which enabled us to receive an eight-node SP1. At the same time the CAC also received an eight-node SP1 from the SUR Program. Since I felt I would probably have to take care of this computer, I started to panic. So I made a deal with the Center for Academic Computing. I said we'll make you a trade. We'll give you our eight nodes, if you can give us back computer time in return. So we housed the SP1 over at the CAC.
The next year the Chemistry Department received a grant from the National Science Foundation for a department computer. We were able to match part of it with an IBM SUR grant, and so then the Chemistry Department computer also got housed in the CAC. It now appears that a group of us including Charles Merkle, Lyle Long, Kevin Morooney and several other faculty will be getting a large NSF grant, and part of the equipment will be going into the SP at the CAC. And so what has evolved, then, is that the Penn State Computer Center is actually a fairly powerful supercomputer center. It's not one of the national ones, but it still is a fairly powerful facility. So I've never had a strong driving force to use a [national] supercomputer center because Penn State is really building its own.
Q. What are some of the difficulties researchers encounter with parallel processing?
A. I'm one of the ones who was turned off to parallel processing for a while, and, in fact, the early parallel machines were quite hostile. Several years ago, I remember Mal Kalos, the Director of the Cornell Theory Center, saying one particular parallel computer should only be used by someone with a very high tolerance for pain. The first ones were not trivial to use. The concept was that you would take blocks of 500, 1,000 or even 30,000 miniature nodes [processors], and try to divide the work into lots of little pieces. That's where it became challenging. You would have to worry about the sharing of information between nodes, and also had to work a lot more with the way your program was coded. The question in my mind was the human effort in this really worth the faster processing?
But the new [parallel processing] architectures are much different. For instance, in the IBM-SP, each processor is so powerful that being clever to make it do parallel work isn't as necessary as it once was. Evolution has made the parallel machine much more user-friendly.
Q. What positive contributions has parallel processing made to research in Chemistry?
A. Well, certainly computing is becoming a more integral component of research programs both in universities and industries. I know the major computational chemists are using parallel computers, so I can infer that they are making a positive contribution.
Q. As a strong advocate of the research and educational uses of the IBM-SP system, how are your students making use of this parallel facility?
A. Well, it's an interesting question. If I have a handful of people in my group and each of them is running simulations, then here's the issue. If I have about the same number of processors as people, then do I let one student have all processors to run his/her job in parallel with each student having their turn in succession, or do I say, okay, each one of you take a computer and run your own job? I have contended over the years that letting each student use their own computer reduces friction among group members. Moreover, in Mal Kalos' words, I do not have a high tolerance for pain with computers!
Then there is the situation where the computer job might be so big, you can't do it in serial. We are now reaching that point with some of our simulations, and are aggressively working at making our code run in parallel in conjunction with Jeff Nucciarone at the CAC.
Q. In what ways has the CAC helped to facilitate your research?
A. From a scientist's point of view, one of the real beauties of the working relationship with the CAC is I really don't have to pay too much attention to the computer problem issues in supercomputing. The people at the CAC are very pro-active about the computing needs of faculty: they maintain the machines, they review the new and upcoming architectures, and they will get involved regarding what equipment best suits our needs. They worry about the details the best kind of operating system, the file system, the backup system things that computer experts are more knowledgeable about, and chemists, like me, don't want to worry about. So that's why it's such a good relationship, because they take care of the things that they're good at, which frees me to do the things I'm best at.
For this help, I feel I must give to the relationship also. I have over the years contributed grant money to equipment purchases. I have been an eager participant on grant proposals that increase the computing resources at the CAC.
There is a second order effect which is harder to measure. Because the parallel SP facility is all localized and supported by one staff, I feel the overall knowledge of the CAC staff is greater than if each department had their own SP staff person. Thus when my students or I need advice, we know where to go to get help.
Because of the complexity of supercomputer architectures and the rapid evolution of techniques used in the field, teaching parallel computing is becoming a high-priority initiative for both universities and corporations. According to Professor Phillip Morris (Boeing/A.D. Welliver Professor of Aerospace Engineering), quickly training students and researchers to have an adequate understanding of parallel approaches to numerically intensive simulation problems is imperative in order for the United States to retain its present competitive edge in computing. At Penn State, with the capabilities of the IBM-SP readily available, and many faculty, staff, and students either in need of supercomputing services, or able to offer expertise, the University is well-positioned to play a leadership role in parallel processing education. Thanks to people such as Morooney, Steve Kellogg (Manager of Unix Systems), Morris, and Long who have been assessing equipment needs, developing pedagogies and researching funding opportunities the foundation has been laid to make this possible.
"The stratified nature of Web-based study makes it possible for students in these classes to have access to the equivalent of whole libraries of information on high-performance computing and its applications to
Lyle Long, Associate Professor of Aerospace Engineering, College of Engineering
A top-notch curriculum in high performance parallel computing has been recently established at Penn State, sponsored by the NSF's Combined Research Curriculum Development program (CRCD). The Institute for High-Performance Computing Applications World Wide Web site (http://www.psu.edu/dept/ihpca/) provides a summary of the multi-disciplinary course work offered in the new program, and a soon to be available graduate minor that will focus on the capabilities of parallel processing in high-performance computing. The Web site also offers links to each of the departments offering high-performance courses at Penn State.
Currently the IHPCA curriculum features hands-on techniques which are taught in specially-designed computer classrooms, a seminar series focusing on resources and tools (AERSP 597EFall), and high-performance solutions to practical problems in engineering, science, and the arts (AERSP 597ESpring).
Professor Long assembled an impressive array of speakers for the AERSP 597E series last spring, including one of the men credited with founding parallel processing in the 1980's Professor Geoffrey Fox. According to Long, the interest in such presentations is high at University Park, and consequently the lectures have been very well attended. "We have a large percentage of people who are not registered for the course coming to hear the speakers," he states, "because people from many disciplines are interested in learning about this topic."
Long has not only been key in instituting many facets of the high performance computing education program, but he has designed most of the curriculum's World Wide Web-based courseware. Home pages he's created for AERSP 597E and AERSP 497B/597G (at the URL http://cac.psu/edu/~lnl/) contain links to many helpful and entertaining resources including:
Explains Long, "the stratified nature of Web-based study makes it possible for students in these classes to have access to the equivalent of whole libraries of information on high-performance computing and its applications to real-world problems." Indeed, when you consider the fast-paced evolution of supercomputing architectures, and the many contributions parallel processing is making in research today, having effective resources available for student use (like Long's courseware and Penn State's computer equipped classrooms) is essential.
This year the NSF (National Science Foundation) is reorganizing its high-performance grant system, and according to Morooney, the change will have significant impact on developments in high-performance computing at Penn State and around the country.
For the past eleven years, four national supercomputer centers - San Diego Supercomputer Center (SDSC), National Center for Supercomputing Applications (NCSA), Pittsburgh Super Computing Center (PSC), and Cornell Theory Center (CTC) have supported the nation's high-performance computing needs in education and research. These centers had largely been subsidized by funding from the NSF, but on September 30, 1997 this program came to an end, and a new one took its place. The new plan, according to NSF sources, represents a shift in focus from centralized facilities to nationwide partnerships. As part of the program, two newly created "leading-edge" supercomputer sites the National Partnership for Advanced Computational Structure (formerly SDSC), and the National Computational Science Alliance (formerly the NCSA) have been selected to receive and administer funds originally divided among the four national centers.
Because each of the selected sites is partnered with a group of satellite research institutions, a chief goal of the reorganization is to allow greater distribution of NSF resources. This action is supported by many researchers and high-performance specialists because it would allow smaller organizations to have access to high-performance computation capability.
However, some outcomes of the change may not be as beneficial. There is already speculation about what will happen to CTC and PSC, and whether these national centers will cease functioning without the NSF funding. If so, there will certainly be many challenges for the directly affiliated universities, Cornell, Carnegie Mellon, and Pittsburgh, as well as the center's many partner institutions. Beverly Clayton, Executive Director of PSC, maintains that site administrators and staff still hold a fairly positive outlook. "Our fiscal year 97 funding has been received and we are currently in discussion with the NSF on next year's funding," she states, adding "we have not had any layoffs at this point, [but] we do not currently understand enough about our future to estimate whether, or when, job losses will occur."
The work of scientists is closely tied in with the fate of CTC and PSC. Researchers who are conducting computer simulations and other intensive numerical studies at these national supercomputing sites are carefully considering what will happen next. At Penn State alone, faculty, staff and students have used about 2,000,000 hours of computer time at Cornell and Pittsburgh in 1997. Dr. Long-Qing Chen, Assistant Professor of Material Science and Engineering (a PSC user who has been running computer simulations which he hopes will contribute to the design of materials for aerospace applications such as turbine blades and airframe components) states, "I have relied on PSC for more than seven years for my computational materials research. PSC is a very user-friendly place, and its loss will greatly impact my work. We used a lot of software developed at PSC, so it will be difficult for us to work at another site. I don't even know where to start to switch."
Another Penn State faculty member, Dr. Alireza Haghighat (Associate Professor of Nuclear Engineering) is using computer simulations performed at CTC to mimic large "real-life" nuclear systems. Haghighat, whose simulations contribute to both the safer operation and maintenance of nuclear power plants, and reducing damage to healthy cells in radiation therapies for cancer patients, has several thoughts about the potential shut-downs: "I hope that these [supercomputer] centers can be preserved somehow with other sources of funding. These centers are critical for most research institutions in the United States; most institutions cannot afford to acquire parallel computers. I believe that these centers have been instrumental for my research activities. My students and I have been able to develop codes and algorithms and perform simulations which previously were only performed by a few people at national laboratories."
Haghighat has also been active in the parallel processing education efforts at Penn State, and therefore has additional concerns regarding how potential shut-downs could affect faculty members' work with students, since he has used both centers for a graduate course on parallel computing: NUCE 530 (Parallel/Vector Algorithms for Scientific Applications).
By Heather Herzog, Center for Academic Computing.