TY - JOUR
T1 - Lightweight task offloading exploiting MPI wait times for parallel adaptive mesh refinement
AU - Samfass, Philipp
AU - Weinzierl, Tobias
AU - Charrier, Dominic E.
AU - Bader, Michael
N1 - Publisher Copyright:
© 2020 The Authors. Concurrency and Computation: Practice and Experience published by John Wiley & Sons Ltd.
PY - 2020/12/25
Y1 - 2020/12/25
N2 - Balancing the workload of sophisticated simulations is inherently difficult, since we have to balance both computational workload and memory footprint over meshes that can change any time or yield unpredictable cost per mesh entity, while modern supercomputers and their interconnects start to exhibit fluctuating performance. We propose a novel lightweight balancing technique for MPI+X to accompany traditional, prediction-based load balancing. It is a reactive diffusion approach that uses online measurements of MPI idle time to migrate tasks temporarily from overloaded to underemployed ranks. Tasks are deployed to ranks which otherwise would wait, processed with high priority, and made available to the overloaded ranks again. This migration is nonpersistent. Our approach hijacks idle time to do meaningful work and is totally nonblocking, asynchronous and distributed without a global data view. Tests with a seismic simulation code developed in the ExaHyPE engine uncover the method's potential. We found speed-ups of up to 2-3 for ill-balanced scenarios without logical modifications of the code base and show that the strategy is capable to react quickly to temporarily changing workload or node performance.
AB - Balancing the workload of sophisticated simulations is inherently difficult, since we have to balance both computational workload and memory footprint over meshes that can change any time or yield unpredictable cost per mesh entity, while modern supercomputers and their interconnects start to exhibit fluctuating performance. We propose a novel lightweight balancing technique for MPI+X to accompany traditional, prediction-based load balancing. It is a reactive diffusion approach that uses online measurements of MPI idle time to migrate tasks temporarily from overloaded to underemployed ranks. Tasks are deployed to ranks which otherwise would wait, processed with high priority, and made available to the overloaded ranks again. This migration is nonpersistent. Our approach hijacks idle time to do meaningful work and is totally nonblocking, asynchronous and distributed without a global data view. Tests with a seismic simulation code developed in the ExaHyPE engine uncover the method's potential. We found speed-ups of up to 2-3 for ill-balanced scenarios without logical modifications of the code base and show that the strategy is capable to react quickly to temporarily changing workload or node performance.
KW - MPI+X
KW - adaptive mesh refinement
KW - reactive load balancing
KW - task-based parallelism
UR - http://www.scopus.com/inward/record.url?scp=85085254452&partnerID=8YFLogxK
U2 - 10.1002/cpe.5916
DO - 10.1002/cpe.5916
M3 - Article
AN - SCOPUS:85085254452
SN - 1532-0626
VL - 32
JO - Concurrency and Computation: Practice and Experience
JF - Concurrency and Computation: Practice and Experience
IS - 24
M1 - e5916
ER -