The International Conference for High Performance Computing, Networking, Storage, and Analysis

Workshops Archive

Enhancing HPX with FleCSI: Automatic Detection of Implicit Task Dependencies


Workshop: The 8th Annual Parallel Applications Workshop: Alternatives To MPI+X (PAW-ATM 2025)

Authors: Davis Herring, Maxim Moraru, Scott Pakin, Julien Loiseau, Richard Berger, Philipp V. F. Edelmann, and Benjamin Bergen (Los Alamos National Laboratory (LANL))

Abstract: FleCSI is a compile-time-configurable programming model designed to support performance-portable parallel application development. In the programming model provided by FleCSI, tasks execute in parallel according to data dependencies specified by a directed acyclic graph. FleCSI natively supports distributed data structures and data access patterns commonly used by computational-science methods.

Without any code modifications, an application built using FleCSI can target one of three communication backends: MPI, Legion, and most recently, HPX. This paper presents the design and implementation of the HPX backend. Specifically, it shows how FleCSI's Legion-like programming model can be mapped efficiently onto HPX's semantically different programming model. The paper explains how FleCSI's task graph can be implemented in terms of HPX futures and introduces a novel optimization for minimizing the number of (costly) communicators HPX needs to create for inter-task communication. An empirical performance study quantifies the benefit of this optimization on two physics applications.


Back to The 8th Annual Parallel Applications Workshop: Alternatives To MPI+X (PAW-ATM 2025) Archive Listing Back to Full Workshop Archive Listing