HPX beats OpenMP by 26% in tiled Cholesky decomposition benchmark
New benchmark shows async tasks with HPX outperform traditional fork-join by up to 30%.
A new research paper by Alexander Strack et al. benchmarks tiled Cholesky decomposition—a canonical irregular kernel—comparing four parallelization strategies across two shared-memory runtimes: OpenMP (GCC and LLVM) and the HPX asynchronous many-task (AMT) runtime. The variants span classical fork-join, collapsed fork-join (exposing more inner-loop parallelism), synchronous tasking, and asynchronous tasking with explicit data dependencies. The study uses their new Cholesky-Bench tool on a dual-socket 128-core AMD Zen 2 node, testing multiple tile and problem sizes to isolate the true performance impact of runtime design.
Key results show that HPX outperforms OpenMP at the optimal tile size by 15–30% across all variants. Specifically, asynchronous HPX tasks are up to 26% faster than equivalent OpenMP tasks, and HPX exhibits roughly 3.8x smaller task creation and scheduling overhead. Removing redundant synchronization barriers—an optimization possible with async runtimes—yields an additional improvement of 7% for OpenMP and 14% for HPX. The collapsed fork-join variants close most of the gap to synchronous tasking, but asynchronous tasking still wins. A GCC vs. LLVM comparison also reveals compiler-specific differences in fork-join scheduling and task-creation costs, underscoring that runtime and compiler choices matter for real-world HPC performance.
- HPX asynchronous tasks are up to 26% faster and have 3.8x smaller task overhead than OpenMP synchronous tasks.
- Removing redundant synchronization barriers yields 7% (OpenMP) to 14% (HPX) additional speedup.
- Collapsed fork-join variants close most of the gap to synchronous tasking but still lag behind async HPX.
Why It Matters
Proves async task runtimes like HPX unlock significant performance for irregular workloads on modern many-core hardware.