Towards PDES in a Message-Driven Paradigm: A Preliminary Case Study Using Charm++
ACM SIGSIM Conference on Principles of Advanced Discrete Simulation (ACM SIGSIM PADS) 2016
Publication Type: Paper
Repository URL: https://charm.cs.illinois.edu/gerrit/papers/201601_CharmROSS
Discrete event simulations (DES) are central to exploration of ``what-if'' scenarios in many domains including networks, storage devices, and chip design. Accurate simulation of dynamically varying behavior of large components in these domains requires the DES engines to be scalable and adaptive in order to complete simulations in a reasonable time. This paper takes a step towards development of such a simulation engine by redesigning ROSS, a parallel DES engine in MPI, in Charm++, a parallel programming framework based on the concept of message-driven migratable objects managed by an adaptive runtime system. In the paper, we first show that the programming model of Charm++ is highly suitable for implementing a PDES engine such as ROSS. Next, the design and implementation of the Charm++ version of ROSS is described and its benefits are discussed. Finally, we demonstrate the performance benefits of the Charm++ version of ROSS over its MPI counterpart on IBM's Blue Gene/Q supercomputers. We obtain up to 40% higher event rate for the PHOLD benchmark on two million processes, and improve the strong-scaling of the dragonfly network model to 524,288 processes with up to 5x speed up at lower process counts.
- Eric Mikida
- Nikhil Jain
- Elsa Gonsiorowski
- Peter Barnes, Jr.
- David Jefferson
- Christopher Carothers
- Laxmikant Kale