PARALLEL DISCRETE EVENT SIMULATION

PARALLEL DISCRETE EVENT SIMULATION

1989 | Richard M. Fujimoto
This tutorial surveys the state of the art in executing discrete event simulation programs on a parallel computer. It focuses on asynchronous simulation programs where few events occur at any single point in simulated time, requiring the concurrent execution of events at different points in time. The paper discusses the challenges of parallel discrete event simulation (PDES), which is difficult due to the complexity of precedence constraints and data dependencies. It reviews several simulation strategies, critiques existing approaches, and discusses the underlying ideas on which they are based. PDES is challenging because the precedence constraints that dictate which computations must be executed before others are complex and highly data-dependent. This contrasts with other areas of parallel computation where the structure of the computation is known at compile time. PDES mechanisms broadly fall into two categories: conservative and optimistic. Conservative approaches avoid causality errors by ensuring events are processed in non-decreasing timestamp order, while optimistic approaches detect and recover from causality errors. Conservative mechanisms include deadlock avoidance, deadlock detection and recovery, synchronous operation, conservative time windows, improving lookahead, conditional knowledge, and conservative performance. These methods rely on predicting the future to determine which events can be safely processed. However, they may not fully exploit parallelism if events are not independent. Optimistic mechanisms, such as the Time Warp protocol, detect and recover from causality errors by rolling back computations when errors are detected. These methods allow for more parallelism by not strictly avoiding errors, but they may suffer from performance issues if errors propagate widely. Optimistic methods also include lazy cancellation, jump forward, optimistic time windows, wolf calls, and direct cancellation. The paper discusses the performance of both conservative and optimistic methods, highlighting their strengths and weaknesses. It concludes that while conservative methods are effective in certain scenarios, optimistic methods offer greater flexibility and performance in many cases. However, both approaches have limitations, and the choice between them depends on the specific simulation application and requirements.This tutorial surveys the state of the art in executing discrete event simulation programs on a parallel computer. It focuses on asynchronous simulation programs where few events occur at any single point in simulated time, requiring the concurrent execution of events at different points in time. The paper discusses the challenges of parallel discrete event simulation (PDES), which is difficult due to the complexity of precedence constraints and data dependencies. It reviews several simulation strategies, critiques existing approaches, and discusses the underlying ideas on which they are based. PDES is challenging because the precedence constraints that dictate which computations must be executed before others are complex and highly data-dependent. This contrasts with other areas of parallel computation where the structure of the computation is known at compile time. PDES mechanisms broadly fall into two categories: conservative and optimistic. Conservative approaches avoid causality errors by ensuring events are processed in non-decreasing timestamp order, while optimistic approaches detect and recover from causality errors. Conservative mechanisms include deadlock avoidance, deadlock detection and recovery, synchronous operation, conservative time windows, improving lookahead, conditional knowledge, and conservative performance. These methods rely on predicting the future to determine which events can be safely processed. However, they may not fully exploit parallelism if events are not independent. Optimistic mechanisms, such as the Time Warp protocol, detect and recover from causality errors by rolling back computations when errors are detected. These methods allow for more parallelism by not strictly avoiding errors, but they may suffer from performance issues if errors propagate widely. Optimistic methods also include lazy cancellation, jump forward, optimistic time windows, wolf calls, and direct cancellation. The paper discusses the performance of both conservative and optimistic methods, highlighting their strengths and weaknesses. It concludes that while conservative methods are effective in certain scenarios, optimistic methods offer greater flexibility and performance in many cases. However, both approaches have limitations, and the choice between them depends on the specific simulation application and requirements.
Reach us at info@study.space