×

HPX

swMATH ID: 40105
Software Authors: Kaiser, H.; et al.
Description: HPX is a C++ Standard Library for Concurrency and Parallelism. It implements all of the corresponding facilities as defined by the C++ Standard. Additionally, in HPX we implement functionalities proposed as part of the ongoing C++ standardization process. We also extend the C++ Standard APIs to the distributed case. The goal of HPX is to create a high quality, freely available, open source implementation of a new programming model for conventional systems, such as classic Linux based Beowulf clusters or multi-socket highly parallel SMP nodes. At the same time, we want to have a very modular and well designed runtime system architecture which would allow us to port our implementation onto new computer system architectures. We want to use real-world applications to drive the development of the runtime system, coining out required functionalities and converging onto a stable API which will provide a smooth migration path for developers. The API exposed by HPX is not only modeled after the interfaces defined by the C++11/14/17/20 ISO standard, it also adheres to the programming guidelines used by the Boost collection of C++ libraries. We aim to improve the scalability of today’s applications and to expose new levels of parallelism which are necessary to take advantage of the exascale systems of the future.
Homepage: https://www.theoj.org/joss-papers/joss.02352/10.21105.joss.02352.pdf
Source Code:  https://github.com/STEllAR-GROUP/hpx
Related Software: Peridigm; PETSc; SciPy; OpenCL; ParaView; PeriPy; kdtree++; FEniCS; Eigen; VTK; NLMech; VisIt; MOOSE; Python; LAMMPS; CUDA; Blaze; HLLE; GitHub; Trilinos
Cited in: 11 Documents

Citations by Year