This tutorial introduces the fundamental principles and algorithms underlying parallel/distributed discrete event simulation (PDES), with a special focus on synchronization methods and their scalable implementation. The tutorial is designed to help the audience gain a detailed understanding of the core concepts and terminology in PDES. Further, classical conservative and optimistic algorithms such as null messages and Time Warp will be described. An overview of approaches customized for different computing platforms will be provided, including supercomputers, cloud computing, and GPUs. Implementations customized for different communication types will be described, including 1-sided and 2-sided messaging using Portals and Message Passing Interface (MPI) respectively. The critical influence of event granularity, timestamp distributions, and inter-logical process event exchange behaviors on runtime dynamics will be described. Important systems issues such as computation and communication overheads will be highlighted, along with illustrative performance results on benchmarks from multiple domains including transportation, epidemiology, and supercomputer simulation.
[Pub 147]