Advanced optimizations for large scale parallel discrete event simulations

LaPre, Justin M.
Thumbnail Image
Other Contributors
Carothers, Christopher D.
Shephard, M. S. (Mark S.)
Milanova, Ana
Krishnamoorthy, M. S.
Zhang, Tong
Issue Date
Computer science
Terms of Use
Attribution-NonCommercial-NoDerivs 3.0 United States
This electronic version is a licensed copy owned by Rensselaer Polytechnic Institute, Troy, NY. Copyright of original work retained by author.
Full Citation
This thesis has four specific contributions to parallel discrete-event simulation. First, we demonstrate the efficacy of ultra large-scale wireless networking simulations utilizing the OLSR protocol on HPC platforms. In particular we provide a solution to the "broadcast problem" in the context of wireless network simulation. Next, we show how replacing a hash table with a balanced tree reduces the memory requirements thereby enabling the system to scale up to 1,966,080 cores. Third, we demonstrate the use of static analysis tools for supporting optimistic simulation through reverse computation. Finally, we introduce a new approach to both find and compress state deltas between adjacent events.
The purpose of this thesis is to present new strategies to mitigate performance issues pertaining to parallel discrete-event simulations. This work builds a foundation which explores multiple avenues of improving performance through: avoiding problematic simulation scenarios, data structure refinement, compiler-assisted techniques, and novel state-saving implementations. A conservative parallel simulation provides a starting point and often results in a simulation which is "fast enough." Pairing this approach with a novel twist to standard routing results in a high performance, wireless network model. Next, we will explore the realm of optimistic simulation and observe the limits of its potential on one of the world's largest supercomputers. Third, the process of migrating codes from conservative to optimistic is far from trivial yet that is the goal of the Low Overhead Runtime-Assisted Instruction Negation tool, LORAIN. LORAIN performs various compiler analysis passes in order to determine state changes and random number generation, both of which are required for inverting an erroneous event. Last, we apply a delta encoding technique for the efficient support of state saving in optimistic simulation. In this approach, the state delta is computed and compressed upon completion of every event. From the model developer's perspective this is ideal: write the code once in a conservative manner and potentially approach optimistic performance in an incremental manner.
December 2015
School of Science
Dept. of Computer Science
Rensselaer Polytechnic Institute, Troy, NY
Rensselaer Theses and Dissertations Online Collection
CC BY-NC-ND. Users may download and share copies with attribution in accordance with a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License. No commercial use or derivatives are permitted without the explicit approval of the author.