Improving Productivity at NASA's Largest Supercomputing Center
Overview
With key modeling and simulation problems continually growing in size and complexity, optimizing the performance of high-end computing applications is essential for NASA missions. Faster time-to-solution increases user productivity—it also means the compute resources are more productive, as the time saved can be used for other work. The goal of the Application Performance and Productivity (APP) team at NASA's Ames Research Center is to maximize both user and system productivity for NASA's High End Computing Capability Project (HECC).
Project Details
The APP team supports a variety of activities aimed at improving productivity. They assist users in solving compiler and runtime issues with their codes, and provide tools to simplify the programming and use of large parallel computing systems. They also develop and maintain benchmark suites to ensure that current systems are working efficiently and that future systems will maximize the science and engineering value to NASA.
Results and Impact
The APP team's recent work in a variety of areas to improve both current and future productivity includes:
- Combining the strengths of two different tools, the team conducted a study of the I/O characteristics of 12 application codes, including 8 that were among the top 10 usage applications on the Pleiades supercomputer. The I/O performance for one of these applications increased 36-fold.
- Studying the performance of the Intel Xeon Phi "Knights Landing" (KNL) processor. The current impression is that system usability and the application porting process have significantly improved over KNL's predecessor. For several key applications, KNL performance was better than nodes based on Xeon "Haswell" and "Broadwell" processors.
- Redefining the benchmark suite used to evaluate system performance. The suite represents a typical NASA workload and measures relative performance of different resource types, as part of a protocol for establishing charging rates. It is also used for system procurements to make sure that new acquisitions perform well on a typical workload.
In the last year, the team has had several significant optimization successes, including a 93-fold speedup from the parallelization of an image comparison code used to analyze data from the Solar Dynamics Observatory, and a 1.8x speedup from the optimization of a computational fluid dynamics code used to study a flow separation problem.
What's Next
In the coming year, the team will characterize the performance of a supercomputer deployed in the HECC project's new modular data center environment, including measurements of the electrical power requirements of applications. They also plan to explore techniques for using lightweight instrumentation on a large number of batch jobs to help identify poor resource utilization and potential system issues. In addition, they will investigate ways to transform codes to maximize performance on a KNL-based cluster.
More Media
See additional images/videos related to this demo in our media gallery.
haoqiang.jin@nasa.gov Robert Hood, NASA Ames Research Center
robert.hood@nasa.gov
