Third-party applications from independent software vendors (ISVs) are crucial for HPC-based research and development, not only in industry, but also for many problems in government and basic science. HPCwire spoke with Paul Muzio, who chairs the steering committee of the HPC User Forum, and Suzy Tichenor, vice president and director of the Council on Competitiveness' High Productivity Computing project, about the organizations' initiatives to help improve the capabilities of ISV applications. Muzio is also vice president of government programs for Network Computing Services, Inc. and support infrastructure director of the Army High Performance Computing Research Center.
HPCwire: Paul, what are the problems with ISV applications today?
Muzio: From the standpoint of the industrial, government and academic users we've heard from in HPC User Forum sessions on this topic, the main issues are, first, limited scalability and, second, the need for application software to model multidisciplinary problems such as coupled fluid-structure interactions.
Many ISV codes don't scale beyond 32 or 64 processors, sometimes fewer, at a time when the largest HPC systems have 1,000 or even 10,000 processors. In fact, in the area of structural analysis, many of the widely used applications barely scale to eight processors. This severely limits the size of the problem that can be addressed within a reasonable amount of time.
To illustrate the multi-physics issue, the National Institute of Standards and Technology (NIST) was asked to conduct an engineering analysis of the World Trade Center collapse with a view to developing improved construction design practices. The study required NIST to develop a better understanding of the failure modes and NIST had to assess the damage caused by the impact of the planes as well as the thermal effects of the fire, including the flow of hot gases, on the building structure. To do this work, NIST had to use different application codes that were written, to a great extent, prior to the development of parallel computing systems. These applications were from different disciplines: fluid dynamics, structural analysis, combustion engineering. These applications were designed to work in computing environments that had much less computational power and much less memory than is currently available on HPC systems. Consequently, the applications were constrained to address just their own single discipline and smaller and less complex problems. And the applications were optimized to solve their discipline-unique problems, with each discipline having requirements for significantly different feature size (mesh resolution or type) and time scales. So, the limitations in computational resources and tools of 10 and 20 years ago constrained the scope of what the applications developers could address. But NIST had to address the totality and look at the collapse of the buildings from a multi-physical, multi-discipline approach. As a consequence, they had to develop their own interfaces to couple the codes they were using for fire dynamics, thermal analysis of structures, structural failure, and stress analysis. They had to resolve vastly different feature-size and time scales. They also found that the different applications did not have compatible input/output file structures, again mesh sizes/types and physical attributes. They had to work around these limitations, but better analysis tools could have expedited their efforts and, in all likelihood, resulted in a more refined study. There are many examples like this, and the need for multidiscipline applications is increasing.
HPCwire: The same question for you, Suzy. What problems do business organizations face with ISV applications today?
Tichenor: American businesses are relying on a diverse range of proprietary in-house and commercially available outsourced software to meet their High Performance Computing (HPC) needs. However, there is a growing gap between the HPC software that these firms need and the software that is available, creating a significant barrier to more widespread use of HPC technology. In addition, some firms depend on legacy codes, developed by third party software vendors that are difficult to use, as many important HPC application codes have been in use for decades. However, the cost to rewrite this software “from scratch” frequently is seen as prohibitive by both independent software vendors and users. For users that want to push the limits of research and innovation, the alternative is to invest in in-house programming expertise and proprietary code, which may not be feasible.
While some companies are pushing the limits of what HPC can do, others want to embed high performance computing into the work process as much as possible. For this latter group, the business value of having 10,000 people use HPC is greater than the value of having only a few people use it with 10,000 times the power. The greatest impact comes from making everybody a user. But future expansions may not be possible without the breakthroughs made by the leading edge innovators who may not have the code they need.
In addition, codes often are not scalable on new architectures, limiting the size of problems that can be addressed. This curtails a company's ability to drive innovation for competitive advantage. While “yesterday's” problems may run faster, companies find it difficult to solve the new, cutting edge problems that will propel them to the head of the competitiveness pack. In effect, they are standing still. And standing still is falling behind.
Exacerbating this problem is our talent gap-the lack of computational scientists who can effectively use high performance computing as well as write/update the needed code. The cumulative effect of these challenges is that many companies have important problems that they simply can't solve today, but whose solution could make a significant impact on productivity and competitiveness
HPCwire: Why hasn't the ISV applications problem been addressed?
Muzio: It is a complex problem with many causes. First of all, the computer hardware marketplace is fragmented, so if you are an ISV developing an application, what is your target platform? The ISV sees a large potential workstation market, but a much smaller HPC market. So, the ISV targets the larger workstation market, which in terms of capability, is about where the high-end supercomputing systems were 20 years ago. This discourages addressing larger, more complicated, multi-physics problems. Second, software development is expensive and laborious. In former times, hardware vendors operated on bigger margins and invested substantial time and money partnering with ISVs to improve the scalability and performance of third-party codes on their platforms. In today's commoditized, low-margin HPC market, vendors can seldom justify these investments. In fact, the hardware vendors often can barely afford to make an investment in good compilers or operating systems for their computers, so how can they afford to support the ISVs? The ISVs themselves have so many platforms and operating system variants to support that they have to carefully pick and choose, and they will usually opt to target the most widely used systems, not the high end system. Also, there is a need for programming languages and models that are easier to use, that make software developers more productive, and that span the entire computational spectrum from the desktop to petascale systems. Another factor is that the ISVs generally do not have access to big HPC systems. This limits their ability to develop and test out large applications. Finally, we need to encourage more people to pursue careers in the physical and biological sciences and engineering, and to use computation to address problems in those fields.
These are the issues that the HPC User Forum, in conjunction with the user community and in partnership with the Council on Competitiveness, is trying to address. We are grateful that the Defense Advanced Research Projects Agency is supporting the effort to identify the issues and that we are working together to address this problem. But as I said, this is a complex issue. The government can help industry address the problem by creating a climate that supports software development and supports educational programs in the use of HPC in science and engineering. I would like to add that the U.S. Army, through its Army High Performance Computing Research Center (AHPCRC), is doing an excellent job in supporting this approach by working with universities and industry and in encouraging bright high school and undergraduate students to pursue careers in science and engineering.
HPCwire: What are the consequences if ISV applications aren't made more performant and scalable?
Muzio: When applications capabilities don't keep pace with hardware developments, you end up solving yesterday's problems and never address tomorrow's problems that could make a much bigger difference for your organization and beyond. You don't break much new ground in product quality or time-to-market, or in problem insight in the scientific arena. The lost opportunities will become even more dramatic as we approach sustained petaflop computing speeds at the end of this decade. If we do things right, we have the opportunity to solve problems like full-fidelity crash testing in the auto industry, more fuel efficient aircraft and ground vehicles, and detailed protein-protein interactions for drug discovery. The current situation is not the fault of the ISVs. They're following the economic models they have to follow. As I said before, they can't afford to make adequate investments on their own and neither can the computer companies.
HPCwire: What is the best way to make significant changes in the arena? What does the community need to know and keep in mind?
Muzio: The first step is to identify what's needed. The HPC User Forum has made a strong start here, working directly with users, ISVs and major hardware vendors. At our April 2004 meeting in Dearborn, Michigan, we focused on user requirements for structural analysis problems. We also had panels made up of major ISVs and hardware vendors. We zeroed in on CFD at our April 2005 meeting in Sundance. We reviewed our findings at meetings in Japan and Europe. Improving the capabilities of ISV applications will continue to be an important item on our technical agenda. While we've been looking at third-party applications requirements across all sectors, the Council on Competitiveness has gone deeper in studying ISV applications needs within industry. That multi-phase study is ultimately aimed at identifying good targets for government investments. It makes sense for the government to step in and make some prudent investments, because the ISVs and the hardware vendors can no longer afford to do this all on their own. The problem of ISV applications needing to be renewed and enhanced is not a new one. It's been with us for some time. What the HPC community needs to keep in mind is that something can really be done about this. Again, the Army has established an excellent model for this. Through the AHPCRC program, the Army is encouraging academic and industry researchers to develop advanced HPC software to address significant problems in science and engineering. For example, parallel METIS, a mesh partitioning library developed at the AHPCRC-University of Minnesota, is being widely used by ISVs, government agencies and academic researchers to provide higher scalability in newer, parallel HPC applications.
HPCwire: Why did the Council get involved in this issue?
Tichenor: The Council on Competitiveness believes that the United States is facing much more serious competitive challenges than it has in the past from innovation centers around the world. Simply doing things the way they always have been done will not be enough to sustain leadership, either for companies or for countries. Innovation itself demands a new threshold of creativity, insight, and invention. However, an economy built on innovation can only succeed if it has access to and uses the best tools to drive the innovation process. For stimulating innovation and propelling competitiveness there are few areas of technology that hold more promise than high performance computing.
Given the level of global competition, the use of high performance computing is no longer an option; it is a necessity. The country that wants to out-compete, must be able to out-compute. In fact, the results of a Council survey (http://www.compete.org/hpc/hpc_users_survey.asp) of HPC users last year confirmed that high performance computing is essential to business survival. Winning globally requires HPC-driven solutions. That is why it is essential we address these software challenges, so industry can use this innovation-driving technology to its fullest potential.
HPCwire: What about the HPC User Forum? How did it get involved?
Muzio: Our mission is to help improve the health of the HPC industry, and our members identified improving ISV applications as an important issue a few years ago. The number one issue they wanted to pursue was better benchmarking and performance modeling tools. We've spent a lot of time on this issue at our meetings, and the User Forum's work has been part of the impetus for the HPC Challenge benchmark, the IDC benchmark study and some other important initiatives. Once we had good momentum on the benchmarking issue, we turned to ISV applications.
HPCwire: What have you done so far, and what do you hope to accomplish?
Muzio: As I mentioned, the HPC User Forum has devoted a fair amount of meeting time to discussing issues surrounding ISV applications. We've run panel sessions with users, ISVs and hardware vendors, separately and combined. We've heard some truly impressive success stories using ISV applications in government, industry and academia. We've also heard some of the frustration. I believe we've identified at least the most important issues that need to be addressed, and what role each of the parties needs to play in making improvements. Greater stability in hardware and software architectures is important, for example. Software can last 20-30 years, while hardware can change every 3-4 years. That's a problem. And for ISV applications to scale to 1,000 or 10,000 processors, everything else has to do that, too, and that's typically not true today. What the HPC User Forum hopes to accomplish with this issue, as we did with the benchmarking issue, is to create a constructive dialogue among all the parties and push to get things moving in the right direction.
Tichenor: As a part of our comprehensive National Innovation Initiative, the Council launched our HPC project to examine how the private sector is using this technology as a tool for productivity and innovation, to better understand the private sector's needs and priorities, and to better articulate the economic rationale for maintaining leadership in HPC systems. We also are examining the opportunity for unique public-private partnerships to address the challenges we are uncovering, such as those discussed in this interview today, as well as ways to leverage the government's investment in high performance computing to enhance U.S. competitiveness.
Our project is multifaceted. We have an Advisory Committee, a national “brain trust” of industrial HPC users, universities, computer hardware and software developers, and federal agencies and national laboratories that use and fund development of HPC. It is a collaborative team that helps us set the strategic direction of our efforts through its frank discussions about the opportunities and challenges facing all of the HPC stakeholders.
We also sponsor a Users conference that focuses on the opportunities to accelerate U.S. competitiveness by applying HPC resources, and identifying the business and technical barriers preventing more widespread private sector use. Last year's conference generated national visibility and reinforced that HPC leadership is the foundation for future economic competitiveness and business advantage. This year's conference will be on July 13 in Washington and will discuss the challenges of using, maintaining, and creating application software suitable for a competitive, corporate “production” environment. We also will focus on the role of universities and national laboratories to help accelerate development of new and/or updated code. We invite the readers of HPC Wire to join us for this discussion and registration is open at http://www.hpcusersconference.com. In addition to our Users conference, we will be hosting a workshop this summer to examine some of these software issues.
We conduct yearly surveys of the HPC community on a variety of competitiveness-related topics. Last year's survey results, available on our web site http://www.compete.org/hpc/hpc_users_survey.asp, was the first to measure the impact of high performance computing on business competitiveness. This year's survey will provide an up-to-date understanding of the strength of the ISV industry and industry dependence on it for key application software; the market environment needed to prompt the updating/rewriting of key legacy software; and the potential role of public-private partnerships to ensure industry has scalable, “production-quality” application software
We recently completed five case studies that identify key industry “grand challenges” that could profoundly advance industrial productivity and national competitiveness if advanced software and petaflop or greater compute capability can be made available to solve them. These are also available on our web site http://www.compete.org/hpc/grand_challenge.asp and address such issues as increasing the yield from oil reservoirs, full vehicle design optimization, enhanced auto safety, designing specialize catalysts, and addressing a complex manufacturing problem in the textile industry.
Although we are not a lobbying organization, our approach also includes substantial outreach to Congress to educate and inform them on the links among HPC, productivity, innovation and competitiveness.
Ultimately, with each of these activities, the Council hopes to broaden the understanding and appreciation of the critical importance of HPC in the United States, reveal its potential to transform our economy by accelerating the innovation process, and help a wide range of industries reach for the horizon!
HPCwire: How is the government addressing this issue?
Tichenor: Our Users Survey last year revealed that one of the top factors inhibiting more aggressive use of HPC in the private sector is ease of use. DARPA's High Productivity Computing Systems (HPCS) project is supporting critical R&D to address this issue and increase the value of HPC systems, such as creating new generations of high end programming environments and accessible software tools. Addressing these programming challenges will help reduce the cost and development time of HPC application solutions. As “time to solution” is reduced, the innovation process is accelerated. With feedback from the commercial user community, DARPA's program is hastening the development of the productive, petascale systems that both the public and private sectors need to solve their grand challenge problems.
The government is also attuned to other challenges that have been revealed through our survey, conference and Advisory Committee discussions. Our ongoing dialog heightened DOE's awareness of the private sector's need for access to leadership class systems that reside in its labs to address “grand challenge” problems. As a result, when the Office of Science announced last week the new call for proposals for the Innovative and Novel Computational Impact on Theory and Experiment (INCITE) program, it specifically invited industry to join the university community in participating (see http://hpc.science.doe.gov/incite/incite_call.do). Industry now has the opportunity to submit proposals to run its most complex, and most competitively important problems on leadership class systems, accelerating the innovation and solution process. If a company is selected through DOE's peer review process, it will be able to both begin work on a current competitive challenge, as well as look into the “crystal ball” of high performance computing to effectively plan and dedicate resources for the future when such systems are more affordable and available for industry to purchase and access.
HPCwire: Are you collaborating with other organizations?
Tichenor: Absolutely. As I mentioned, one of our goals is to increase the dialogue within a variety of organizations to raise awareness of the need for HPC. Our Advisory Committee is a cross section of public and private sector users, funders and developers. Within the private sector, we work with IDC and the HPC Users Forum, whose efforts are quite complementary to our work. On the government side, DARPA helped us to launch this effort with an initial seed grant. The Department of Energy's (DOE) Office of Science and National Nuclear Security Administration are also key sponsors. We hope to begin working shortly with the National Science Foundation (NSF) on an interesting project and we speak regularly with the White House National Coordination Office. DARPA and DOE co-sponsored our Users Conference last year, and NSF joined as a sponsor this year. DARPA also co-sponsors our Users Survey. Finally, The President's Information and Technology Advisory Committee is apprised of our findings.
HPCwire: What about the User Forum, Paul? Are you also collaborating with others?
Muzio: In various ways, yes. We have about 150 members who represent a broad spectrum of organizations in government, industry and academia. The HPC User Forum's steering committee also relies heavily on IDC for market research and added perspective. We have ongoing dialogues with organizations like the National Coordination Office, the Council on Competitiveness, the DARPA HPCS program and many others. Obviously, wearing my other hat as the Support Infrastructure Director for the AHPCRC, I work to ensure that a constant dialogue on critical technologies issues is maintained between the Army, the Department of Defense High Performance Computing Modernization Program, other government agencies, academia, industry and the HPC User Forum. And through the HPC User Forum and other industry meetings, we've created an expanding circle of relationships with the broader user community, hardware vendors, ISVs and government officials.
HPCwire: Paul mentioned that the HPC User Forum will continue pursuing this issue as part of its technical agenda. What is the Council's plan from this point forward?
Tichenor: In the immediate future, we will host our Second Annual HPC Users Conference in July (mentioned above). During the conference we will reveal the results from our second HPC survey addressing the application software challenge (also mentioned above). Our Advisory Committee continues to meet and, among other activities, we will be launching a workshop on software. Our goal moving forward with each component of our project is to ensure the dialogue between business, academia and the government continues so that we can tackle the various impediments to broader usage of HPC and drive America's innovation potential. America's capacity to innovate is the foundation for bringing our competitiveness to full fruition, and HPC is a key ingredient in our innovation capacity.