Experiences Porting Distributed Applications to Asynchronous Tasks: A Multidimensional FFT Case-study

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Strack, Alexander, Taylor, Christopher, Diehl, Patrick, Pflüger, Dirk
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866913376038289408
author Strack, Alexander
Taylor, Christopher
Diehl, Patrick
Pflüger, Dirk
author_facet Strack, Alexander
Taylor, Christopher
Diehl, Patrick
Pflüger, Dirk
contents Parallel algorithms relying on synchronous parallelization libraries often experience adverse performance due to global synchronization barriers. Asynchronous many-task runtimes offer task futurization capabilities that minimize or remove the need for global synchronization barriers. This paper conducts a case study of the multidimensional Fast Fourier Transform to identify which applications will benefit from the asynchronous many-task model. Our basis is the popular FFTW library. We use the asynchronous many-task model HPX and a one-dimensional FFTW backend to implement multiple versions using different HPX features and highlight overheads and pitfalls during migration. Furthermore, we add an HPX threading backend to FFTW. The case study analyzes shared memory scaling properties between our HPX-based parallelization and FFTW with its pthreads, OpenMP, and HPX backends. The case study also compares FFTW's MPI+X backend to a purely HPX-based distributed implementation. The FFT application does not profit from asynchronous task execution. In contrast, enforcing task synchronization results in better cache performance and thus better runtime. Nonetheless, the HPX backend for FFTW is competitive with existing backends. Our distributed HPX implementation based on HPX collectives using MPI parcelport performs similarly to FFTW's MPI+OpenMP. However, the LCI parcelport of HPX accelerated communication up to a factor of 5.
format Preprint
id arxiv_https___arxiv_org_abs_2405_00015
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Experiences Porting Distributed Applications to Asynchronous Tasks: A Multidimensional FFT Case-study
Strack, Alexander
Taylor, Christopher
Diehl, Patrick
Pflüger, Dirk
Distributed, Parallel, and Cluster Computing
Parallel algorithms relying on synchronous parallelization libraries often experience adverse performance due to global synchronization barriers. Asynchronous many-task runtimes offer task futurization capabilities that minimize or remove the need for global synchronization barriers. This paper conducts a case study of the multidimensional Fast Fourier Transform to identify which applications will benefit from the asynchronous many-task model. Our basis is the popular FFTW library. We use the asynchronous many-task model HPX and a one-dimensional FFTW backend to implement multiple versions using different HPX features and highlight overheads and pitfalls during migration. Furthermore, we add an HPX threading backend to FFTW. The case study analyzes shared memory scaling properties between our HPX-based parallelization and FFTW with its pthreads, OpenMP, and HPX backends. The case study also compares FFTW's MPI+X backend to a purely HPX-based distributed implementation. The FFT application does not profit from asynchronous task execution. In contrast, enforcing task synchronization results in better cache performance and thus better runtime. Nonetheless, the HPX backend for FFTW is competitive with existing backends. Our distributed HPX implementation based on HPX collectives using MPI parcelport performs similarly to FFTW's MPI+OpenMP. However, the LCI parcelport of HPX accelerated communication up to a factor of 5.
title Experiences Porting Distributed Applications to Asynchronous Tasks: A Multidimensional FFT Case-study
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2405.00015