Louisiana State University's Center for Computation & Technology (CCT) has delivered the first freely available open-source runtime systemimplementation of the ParalleX execution model. The HPX, or High Performance Parallex, runtime softwarepackage is a modular, feature-complete, and performance oriented representation of the ParalleX execution model targeted at conventional parallel computing architectures such as SMP nodes and commodity clusters.
HPX is being provided to the open community for experimentation and application to achieve high efficiency and scalability for dynamic adaptive and irregular computational problems. HPX is a library of C†† functions that supports a set of critical mechanisms for dynamic adaptive resource management and lightweight task scheduling within the context of a global address space. It is solidly based on many years of experience in writing highly parallel applications for HPC systems.
The two-decade success of the communicating sequential processes (CSP) execution model and its message passing interface (MPI) programming model has been seriously eroded by challenges of power, processor core complexity, multi-core sockets, and heterogeneous structures of GPUs. Both efficiency and scalability for some current (strong scaled) applications and future Exascale applications demand new techniques to expose new sources of algorithm parallelism and exploit unused resources through adaptive use of runtime information.
The ParalleX execution model replaces CSP to provide a new computing paradigm embodying the governing principles for organizing and conducting highly efficient scalable computations greatly exceeding the capabilities of today's problems. HPX is the first practical, reliable, and performance-oriented runtime system incorporating the principal concepts of ParalleX model publicly provided in open source release form.
HPX is designed by the CCT STE||AR Group (STE||AR: Systems Technology, Emergent Parallelism, and Algorithm Research) to enable developers to exploit the full processing power of many-core systems with an unprecedented degree of parallelism. STE||AR is a research group focusing on system software solutions and scientific application development for hybrid and many-core hardware architectures.
"This technology has the potential to transform the way we program and run applications today, and to massively increase the possible parallelism and thus the efficiency of our codes," said Hartmut Kaiser, lead of the STE||AR group and adjunct associate research professor of LSU's Department of Computer Science. "The highly modular structure of HPX guarantees a smooth migration path from today's systems towards future architectures, which provides a stable implementation platform for application developers over the next years. We are very proud to to enable scientists to achieve results today that they couldn't achieve purely using conventional programming models."
HPX incorporates routines to manage lightweight user-threads; it provides an active global address space and a dynamic hierarchy of ParalleX processes that provide context for code execution and data protection, the threads that operate upon the data, and child processes. HPX supports a special form of active messages, Parcels, for message-driven computation to move work to data or to GPU resources. Lastly, HPX implements a set of powerful synchronization objects to eliminate global barriers and permit overlap of successive phases of computation as well as communication. Together these runtime techniques of the HPX system provide a new means of constructing, coordinating, and conducting new generations of parallel applications at unprecedented performance.
"HPX provides an early reference implementation and first open source version of ParalleX to drive towards the next paradigm shift for high performance systems and computing," said Thomas Sterling, professor at Indiana University and creator of the ParalleX execution model. "It will address many of the problems currently challenging HPC and permit many more applications to benefit from HPC in this decade," he said.
HPX development has been sponsored, in part, by the National Security Agency, National Science Foundation, DARPA (Defense Advanced Research Projects Agency), and Microsoft as well as by the LSU CCT. It is central to the X-Caliber Project led by Sandia National Laboratories. More information and means for accessing the HPX libraries may be found at http://stellar.cct.lsu.edu.