Abstract
One of the essential aspects of distributed simulations is to order events according to a causal consistency model. Traditionally, implementing causal consistency can be made using a conservative or optimistic approach. However, traditional techniques are costly in processing time to ensure causality. A promising approach to order events is a hybrid synchronization approach, where processes can change dynamically between optimistic and conservative approaches. Unfortunately, synchronizing processes running a hybrid synchronization is a complex problem. In this work, we discuss a multi-objective scheduling of hybrid synchronization messages problem. Beyond that, we propose using a scheduling algorithm to reach an equilibrium between processing and causality violations and describe how to integrate the algorithm in an existing distributed simulator. The algorithm uses two memoization phases, making the scheduling suitable for a dynamic environment. Finally, to demonstrate the feasibility of our scheduling approach, we implemented it in an existing distributed simulation architecture. Analysis based on the experiments demonstrates the behavior of the simulation regarding the number of discarding/processed messages and work performed.
Publisher
Sociedade Brasileira de Computacao - SB
Reference12 articles.
1. Brown, R. (1988). Calendar queues: a fast 0 (1) priority queue implementation for the simulation event set problem. Communications of the ACM, 31(10):1220-1227. DOI: 10.1145/63039.63045.
2. Eker, A., Arafa, Y., Badawy, A.-H. A., Santhi, N., Eidenbenz, S., and Ponomarev, D. (2021). Load-aware dynamic time synchronization in parallel discrete event simulation. pages 95-105. DOI: 0.1145/3437959.3459249.
3. Jefferson, D. R. and Barnes, P. D. (2017). Virtual time iii: unification of conservative and optimistic synchronization in parallel discrete event simulation. In 2017 Winter Simulation Conference (WSC), pages 786-797. IEEE. DOI: 10.1109/WSC.2017.8247832.
4. Junior, E. M., Terra, A., Parizotto, R., and Mello, B. (2020). Closing the gap between lookahead and checkpointing to provide hybrid synchronization. In Anais do XLVII Seminário Integrado de Software e Hardware, pages 104-115, Porto Alegre, RS, Brasil. SBC. DOI: 10.5753/semish.2020.11321.
5. Kleinberg, J. and Tardos, E. (2006). Algorithm design. Pearson Education India. Book.