Task-based adaptive multiresolution for time-space multi-scale reaction-diffusion systems on multi-core architectures
Résumé
Reaction-diffusion systems involving a large number of unknowns and a wide spectrum of scales in space and time model various complex phenomena across different disciplines such as combustion science, plasma physics, or biomedical engineering. The numerical solution of these strongly multi-scale systems of partial differential equations entails specific challenges due to the potentially large stiffness stemming from the broad range of temporal scales in the nonlinear source term or from the presence of steep spatial gradients at the localized reaction fronts, thus hindering high-fidelity solutions at reasonable computational cost. A new generation of techniques featuring adaptation in space and time as well as error control has been introduced recently, yielding accurate solutions to such complex models while considering the entire spectrum of scales. Based on operator splitting, finite volume adaptive multiresolution, and high order time integrators with specific stability properties for each operator, these methods yield a high computational efficiency for stiff reaction-diffusion problems and were specifically designed to carry out large multidimensional simulations on standard architectures such as powerful workstations. While demonstrating the potential of such techniques the data structures of the original implementation,
based on trees of pointers, provided limited opportunities for computational efficiency optimizations and posed challenges in terms of parallel programming and load balancing. The present contribution proposes a new implementation of the whole set of numerical methods including Radau5 and Rock4, relying on fully different data structures together with the use of a specific library, TBB, for shared-memory, task-based parallelism with work stealing. The performance of our implementation is assessed in a series of test-cases of increasing difficulty in two and three dimensions on multi-core and many-core architectures, demonstrating high scalability.
Origine | Fichiers produits par l'(les) auteur(s) |
---|