Abstract
DEVS is a sound formal modeling and simulation (M&S) framework based on generic dynamic system concepts. Cell-DEVS is a DEVS-based formalism intended to model complex physical systems as cell spaces. Time Warp is the most well-known optimistic synchronization protocol for parallel and distributed simulations. This work is devoted to developing new techniques for executing DEVS and Cell-DEVS models in parallel and distributed environments based on the WARPED kernel, an implementation of the Time Warp protocol. The resultant optimistic simulator, called as PCD++, is built as a new simulation engine for CD++, an M&S toolkit that implements the DEVS and Cell-DEVS formalisms. Algorithms in CD++ and the WARPED kernel are redesigned to carry out optimistic simulations using a non-hierarchical approach that reduces the communication overhead. The message-passing paradigm is analyzed using a high-level abstraction called wall clock time slice. A two-level user-controlled state-saving mechanism is proposed to achieve efficient and flexible state saving at runtime. This mechanism is integrated with both the copy state-saving and periodic state-saving strategies to realize a hybrid technique that gives simulator developers the full power to dynamically choose the best possible combination of state-saving strategies at runtime. An optimization strategy called one log file per node is provided to break the bottleneck caused by file I/O operations. The number of file descriptors consumed in the simulation is upper-bounded and the operational overhead is reduced substantially under this strategy. Different Time Warp optimizations are integrated into PCD++, and their effects are analyzed quantitatively. It is shown that PCD++ markedly outperforms other alternatives, and considerable speedups can be achieved in parallel and distributed simulations, indicating that PCD++ is well-suited for simulating large and complex models.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have