This article was accepted into the corpus but its outbound wikilinks were never NER-processed — typical at the deepest BFS hop or when the run's entity cap was reached. No expansion funnel to show.
| HPX (High Performance ParalleX) | |
|---|---|
| Name | HPX (High Performance ParalleX) |
| Developer | High Performance Concurrency Group at LSU; Stepanov Research Group; Intel Corporation; AMD Research |
| Initial release | 2012 |
| Programming language | C++ |
| Operating system | Linux; FreeBSD; macOS |
| License | Boost Software License |
HPX (High Performance ParalleX) is a C++ runtime system for parallel and distributed applications emphasizing fine‑grained concurrency, asynchronous task execution, and global address space semantics. It provides an alternative to traditional message passing and threading models by exposing a standards‑conforming C++ API that targets scalable systems from multicore servers to large clusters. HPX integrates with existing ecosystems and research communities around scalable computing and parallel programming.
HPX originated from research groups at institutions such as Louisiana State University and collaborations with industrial partners like Intel and AMD, and it builds on ideas from the ParalleX execution model advocated by researchers in the high‑performance computing community. It targets problems explored by projects at organizations including Lawrence Livermore National Laboratory, Oak Ridge National Laboratory, and Los Alamos National Laboratory, and intersects with efforts by standards bodies such as the ISO C++ Committee and the OpenMP Architecture Review Board. HPX emphasizes lightweight user‑level threads, futures, and global objects to address challenges encountered in exascale initiatives led by agencies like the US Department of Energy and research programs at the European Commission.
HPX's architecture implements a distributed global address space and an active message layer compatible with commodity interconnects used in centers such as CERN and Jülich Supercomputing Centre. The design uses concepts similar to actor models investigated at Microsoft Research and concurrency abstractions discussed in academic groups at MIT, Stanford, and ETH Zurich. Core components include a task scheduler, parcel transport layer, component framework, and an active global address space (AGAS), enabling locality‑aware load balancing on hardware from vendors like NVIDIA, IBM, and Cray. The architecture draws inspiration from programming systems developed at institutions such as Rice University, University of Illinois Urbana‑Champaign, and University of California, Berkeley.
HPX offers a C++17/C++20 compliant API that exposes futures, continuations, parallel algorithms, and executors, aligning with proposals discussed within the ISO C++ Committee and implementations by compiler projects such as GCC, Clang/LLVM, and Microsoft Visual Studio. The model uses lightweight user threads similar to work in research groups at Carnegie Mellon University and Princeton University, and composes with parallel patterns investigated at INRIA and the Barcelona Supercomputing Center. The API supports asynchronous remote procedure calls and parallel STL‑like algorithms reminiscent of efforts at NVIDIA, AMD, Intel, and ARM to standardize heterogeneous parallel programming. HPX integrates with libraries and frameworks developed at institutions like Google, Facebook, and Amazon in cloud and cluster orchestration contexts.
The runtime is implemented in modern C++ and maintained by contributors from academic labs and industry research teams affiliated with institutions such as LSU, University of Tennessee, and Clemson University. It contains modules for parcel transport that can use interconnects supported by Mellanox and OpenFabrics, schedulers influenced by work at IBM Research and Sandia National Laboratories, and instrumentation hooks compatible with performance tools from Intel VTune, Google Performance Tools, and the Score-P infrastructure used in European projects. The component model supports plugin architectures and bindings similar to those developed at Apache Software Foundation projects and research groups at the Max Planck Institute.
HPX is designed to scale on systems examined by benchmarking efforts at the National Energy Research Scientific Computing Center and related evaluations by the Top500 project and the Green500 initiative. Performance studies compare HPX with implementations of MPI from vendors such as Open MPI, MPICH, and vendor stacks by Cray and IBM, and with shared‑memory models like OpenMP and Intel TBB. Results published by research teams at Oak Ridge, Lawrence Berkeley National Laboratory, and Karlsruhe Institute of Technology demonstrate benefits for irregular, latency‑sensitive workloads and dynamic load balancing on hardware platforms provided by HPE, Dell, and Fujitsu.
HPX has been applied in domains represented by research labs and industrial partners, including computational fluid dynamics at NASA centers, particle methods in plasma physics studied at Princeton Plasma Physics Laboratory, large‑scale graph analytics explored at Facebook and Twitter research groups, and finite element workflows used by Siemens and General Electric. Scientific applications from climate modeling groups at NOAA and ECMWF, molecular dynamics work at the Scripps Research Institute, and cosmology simulations conducted by researchers associated with the Simons Foundation have used HPX concepts for concurrency and distribution.
Adoption of HPX is evident in academic projects and collaborations with national labs, and it is compared to other runtime systems and models developed by the OpenMP Forum, MPI Forum, Chapel project at Cray, X10 from IBM Research, and Legion from Stanford University. Comparative studies by researchers at ETH Zurich, University of Edinburgh, and RIKEN evaluate tradeoffs in programmability, latency hiding, and resource utilization against languages and systems like UPC, Coarray Fortran, Charm++, and Erlang. HPX's compliance with ISO C++ work positions it alongside efforts by compiler and toolchain ecosystems such as LLVM and GCC, while its architectural choices resonate with research directions pursued at institutions including MIT, Caltech, and the University of Cambridge.
Category:Parallel computing Category:Runtime systems Category:C++ libraries