Funding Opportunity Announcement: 2012 X-Stack: Programming Challenges, Runtime Systems, and Tools

Due Date: 
February 6, 2012

The Office of Advanced Scientific Computing Research (ASCR) of the Office of Science (SC), U.S. Department of Energy (DOE), hereby invites applications for basic research that represents significant advances in programming models, languages, compilers, runtime systems and tools that address fundamental challenges related to the system software stack for Exascale computing platforms (X-Stack).

Programming models, languages, and related technologies that have sustained High Performance Computing (HPC) application software development for the past decade are inadequate for Exascale era computers. The significant increase in complexity of Exascale platforms due to energy-constrained, billion-way parallelism, with major changes to processor and memory architecture, requires new energy-efficient and resilient programming techniques that are portable across multiple future machine generations. We expect to make research investments that address fundamental Exascale challenges, while offering a transition path for existing scientific applications to fully explore the challenges and rewards of Exascale platforms. Exascale programming challenges and strategies were identified in the ASCR Exascale Programming Challenges Workshop [1] and carefully captured in the workshop report [2]. Challenges and strategies related to tools for Exascale platforms were identified in the ASCR Exascale Tools Workshop [3], and captured in the workshop report [4].

Sought are complete solutions that will address multiple components of the system software stack and that will have the following characteristics:
• Scalability: enable applications to strongly scale to Exascale levels of parallelism;
• Programmability: clearly reduce the burden we are placing on high performance programmers;
• Performance Portability: eliminate or significantly minimize requirements for porting to future platforms;
• Resilience: properly manage fault detection and recovery at all components of the software stack; and
• Energy Efficiency: maximally exploit dynamic energy saving opportunities, leveraging the tradeoffs between energy efficiency, resilience, and performance.

We encourage solutions that involve radically new approaches to programming Exascale applications and algorithms. New approaches are required in order to address the complexities of Exascale systems. It is important to demonstrate the viability of such solutions in a broad high performance programming context by showing how the proposed solution:
• interoperates with existing programming environments based on the MPI+X model, so that a smooth migration path is enabled, and/or
• enables the automatic transformation of applications (possibly with users in the loop) from the “old” programming environment to the “new” one, such that the transformations are semantics and performance preserving.

More specific information is included under SUPPLEMENTARY INFORMATION below.

A companion Program Announcement to DOE National Laboratories, LAB 12-619, will be posted on the SC Grants and Contracts web site at: