NCSA/Illinois Enhanced Intellectual Services for Petascale Performance (NEIS-P2)
NCSA and University of Illinois launched a comprehensive program to provide enhanced intellectual services to the science and engineering teams using petascale computing in their research. The goal of the NEIS-P2 program is achieving the full potential of the new Blue Waters system on a broad range of science and engineering applications, from applications that are compute-intensive to those that are data- and memory-intensive. NEIS-P2 is an example of NCSA's committment to working closely with science and engineering teams — and the larger computational science and engineering community — to enable them to take advantage of the extraordinary capabilities of Blue Waters, as well as similar systems such as Kraken, Stampede, Keeneland, Titan, and future petascale computing systems. The program was designed to enhance the functionality and performance of existing petascale applications; help the migration of other applications to petascale computers; and expand the petascale-ready community.
The NEIS-P2 activities addressed major challenges that stem from the increased reliance on the use of parallelism and locality to achieve performance goals. These challenges include:
- Scaling applications to large core counts on general-purpose CPU nodes, including making enhanced use of topology information.
- Effectively using throughput-oriented numerical computing devices, e.g., NVIDIA GPUs or Intel MICs.
- Using general-purpose and accelerated nodes of a highly parallel, heterogeneous system in a single, coordinated simulation.
- Enhancing application flexibility for increased effective, efficient use of systems.
- Efficient use of storage and I/O resources.
The NEIS-P2 program brought together science and engineering team members, external experts, NCSA staff, Illinois faculty and students, Cray/NVIDIA staff, academic partners, national laboratories, and software providers. The program targeted the introduction of new fundamental application approaches in addition to optimization of current applications for Blue Waters. Its goal was to have a broad impact—up and down and across the NSF science portfolio, not just on a single system like Blue Waters, but for all major computational science and engineering for the next decade. The impact of NEIS-P2 will extend beyond any single investigator or PRAC science and/or engineering team, ensuring that existing resources are used effectively and efficiently and inspiring new research and development efforts that are far reaching. The program was structured in three major components.
Improving code for Blue Waters
In the initial component, Blue Waters directly funded science teams to make improvements in their code implementations to enable them to realize the full potential of the Cray XE6/XK7 system. The program started in summer 2012 and included 21 PRAC science teams. The work focused on scaling applications to large core counts on general-purpose CPU nodes and large-scale storage, effectively using accelerators, using general purpose and accelerated nodes in a single, coordinated simulation and enhancing application flexibility for more effective, efficient use of systems. Each team documented results in a final report and presented and shared these results among the teams at a symposium held in May 2013.
Outreach and Education
In the second component, NEIS-P2 expanded efforts in Community Outreach and Education to enable the general NSF computational science and engineering community to make effective use of petascale systems. This component also included activities to help train the next generation of petascale computational experts through a coordinated set of courses, workshops, and fellowships.
Petascale Application Improvement Discovery
The third component of NEIS-P2, the Petascale Application Improvement Discovery (PAID) program, facilitated the creation of new methods and approaches that will dramatically improve the ability to achieve sustained science on petascale systems. By providing new methods and technological insights, the program assisted the general computational science community in making effective use of systems at all scales.
The goals of NEIS-P2 are ambitious but directly support the vision and all five strategies expressed in OCI's Advanced Computing Infrastructure Vision and Strategic Plan (February 2012). It is critical that these issues are addressed and solutions implemented if science and engineering are to continue to benefit from the ongoing revolution in computing technology.
- Application Functionality & Performance
- Increase application efficiency and scaling in the face of limited bandwidth (interconnect, memory, etc.) and other architectural constraints with new methods and enhancements.
- Enable the effective use of highly parallel heterogeneous systems (e.g., those with GPU computing devices and/or many-core processors).
- Enable application-based topology awareness to more effectively and efficiently use limited bandwidth resources.
- Application Flexibility
- Enable the use by single applications of heterogeneous systems that have both general-purpose CPUs and acceleration units.
- Enable and explore the use of application-based fault tolerant methods and algorithms to increase the effective and efficient use of resources.
- Improve the use of advanced storage and data movement methods to increase the efficiency and time to solution of applications.