Pipelining the Fast Multipole Method over a Runtime System

Fast Multipole Methods (FMM) are a fundamental operation for the simulation of many physical problems. The high performance design of such methods usually requires to carefully tune the algorithm for both the targeted physics and the hardware. In this paper, we propose a new approach that achieves high performance across architectures. Our method consists of expressing the FMM algorithm as a task flow and employing a state-of-the-art runtime system, StarPU, in order to process the tasks on the different processing units. We carefully design the task flow, the mathematical operators, their Central Processing Unit (CPU) and Graphics Processing Unit (GPU) implementations, as well as scheduling schemes. We compute potentials and forces of 200 million particles in 48.7 seconds on a homogeneous 160 cores SGI Altix UV 100 and of 38 million particles in 13.34 seconds on a heterogeneous 12 cores Intel Nehalem processor enhanced with 3 Nvidia M2090 Fermi GPUs.

Data and Resources

Additional Info

Field Value
Source https://inria.hal.science/hal-00703130
Author Agullo, Emmanuel, Bramas, Bérenger, Coulaud, Olivier, Darve, Eric, Messner, Matthias, Takahashi, Toru
Maintainer CCSD
Last Updated May 16, 2026, 10:38 (UTC)
Created May 16, 2026, 10:38 (UTC)
Identifier Report N°: RR-7981
Language en
Rights https://about.hal.science/hal-authorisation-v1/
contributor Laboratoire Bordelais de Recherche en Informatique (LaBRI) ; Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)
creator Agullo, Emmanuel
date 2012-05-31T00:00:00
harvest_object_id 16c56439-0ca8-4a8e-927d-6042690f13d4
harvest_source_id 3374d638-d20b-4672-ba96-a23232d55657
harvest_source_title test moissonnage SELUNE
metadata_modified 2025-05-26T00:00:00
relation info:eu-repo/semantics/altIdentifier/arxiv/1206.0115
set_spec type:REPORT