Particle in Cell Algorithms and Codes Toward the Next Generation Architectures

ORAL

Abstract

Massively parallel and heterogeneous next-generation platforms present unprecedented challenges for maximizing efficiency of plasma simulation kernels. Asynchronous many-task (AMT) frameworks use deferred execution and asynchronous tasking to enable runtime capabilities ranging from load balance to data reuse to communication overlap. Many AMT systems are large full stack frameworks with certain programmability or stability concerns, limiting their use in Sandia production codes. We have developed DARMA (Distributed Asynchronous Resilient Models for Application), which instead provides a light-weight translation layer for embedding tasking and deferred execution in C$++$ codes that encourages, rather than restricts, flexible and diverse AMT software stacks. In this work, we focus on leveraging DARMA to better express asynchrony and load imbalance present in particle in cell kernels. In particular, we present empirical performance and productivity results, where DARMA implementation of these kernels is compared to more traditional implementations.

Authors

  • Aram Markosyan

    • Sandia National Laboratories
  • Chris Moore

    • Sandia National Laboratories
    • Sandia Natl Labs
  • Matthew Bettencourt

    • Sandia National Laboratories
  • Janine Bennett

    • Sandia National Laboratories
  • Jonathan Lifflander

    • Sandia National Laboratories
  • David Hollman

    • Sandia National Laboratories
  • Jeremiah Wilke

    • Sandia National Laboratories
  • Hemanth Kolla

    • Sandia National Laboratories