Skip to main content

Research Repository

Advanced Search

SWIFT: Using task-based parallelism, fully asynchronous communication, and graph partition-based domain decomposition for strong scaling on more than 100,000 cores

Schaller, Matthieu; Gonnet, Pedro; Chalk, Aidan B.G.; Draper, Peter W.

SWIFT: Using task-based parallelism, fully asynchronous communication, and graph partition-based domain decomposition for strong scaling on more than 100,000 cores Thumbnail


Authors

Pedro Gonnet

Aidan B.G. Chalk

Peter W. Draper



Abstract

We present a new open-source cosmological code, called SWIFT, designed to solve the equations of hydrodynamics using a particle-based approach (Smooth Particle Hydrodynamics) on hybrid shared / distributed-memory architectures. SWIFT was designed from the bottom up to provide excellent strong scaling on both commodity clusters (Tier-2 systems) and Top100-supercomputers (Tier-0 systems), without relying on architecture-specific features or specialized accelerator hardware. This performance is due to three main computational approaches: • Task-based parallelism for shared-memory parallelism, which provides fine-grained load balancing and thus strong scaling on large numbers of cores. • Graph-based domain decomposition, which uses the task graph to decompose the simulation domain such that the work, as opposed to just the data, as is the case with most partitioning schemes, is equally distributed across all nodes. • Fully dynamic and asynchronous communication, in which communication is modelled as just another task in the task-based scheme, sending data whenever it is ready and deferring on tasks that rely on data from other nodes until it arrives. In order to use these approaches, the code had to be re-written from scratch, and the algorithms therein adapted to the task-based paradigm. As a result, we can show upwards of 60% parallel efficiency for moderate-sized problems when increasing the number of cores 512-fold, on both x86-based and Power8-based architectures.

Citation

Schaller, M., Gonnet, P., Chalk, A. B., & Draper, P. W. (2016). SWIFT: Using task-based parallelism, fully asynchronous communication, and graph partition-based domain decomposition for strong scaling on more than 100,000 cores. In PASC '16 : Proceedings of the Platform for Advanced Scientific Computing Conference : Lausanne, Switzerland — June 08 - 10, 2016. https://doi.org/10.1145/2929908.2929916

Conference Name PASC '16 Proceedings of the Platform for Advanced Scientific Computing Conference
Conference Location Lausanne, Switzerland
Start Date Jun 8, 2016
End Date Jun 10, 2016
Online Publication Date Jun 8, 2016
Publication Date Jun 8, 2016
Deposit Date Aug 15, 2016
Publicly Available Date Sep 14, 2016
Publisher Association for Computing Machinery (ACM)
Book Title PASC '16 : Proceedings of the Platform for Advanced Scientific Computing Conference : Lausanne, Switzerland — June 08 - 10, 2016.
DOI https://doi.org/10.1145/2929908.2929916
Related Public URLs http://arxiv.org/abs/1606.02738

Files

Accepted Conference Proceeding (597 Kb)
PDF

Copyright Statement
© 2016 ACM. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in PASC '16 Proceedings of the Platform for Advanced Scientific Computing Conference, 2016, http://doi.acm.org/10.1145/2929908.2929916




You might also like



Downloadable Citations