On learning algorithms and balancing loads in Time Warp

We present an algorithm which integrates flow control and dynamic load balancing in order to improve the performance and stability of Time Warp. The algorithm is intended for use in a distributed memory environment such as a cluster of workstations connected by a high speed switch. Our flow control algorithm makes use of stochastic learning automata and operates in the fashion of the leaky-bucket flow control algorithm used in computer networks. It regulates the flow of messages between processors continuously throughout the course of the simulation, while the dynamic load balancing algorithm is invoked only when a load imbalance is detected. Both algorithms make use of a space-time product metric and collect the requisite information via a snapshot-based GVT algorithm. We compare the performance of the flow control algorithm, the dynamic load balancing algorithm and the integrated algorithm with that of a simulation without any of these controls. We simulated large shuffle ring networks with and without hot spots and a PCS network on an SGI Origin 2000 system. Our results indicate that the flow control scheme alone succeeds in greatly reducing the number and length of roll-backs as well as the number of anti-messages, thereby increasing the number of non-rolled back messages processed per second. It results in a large reduction in the amount of memory used and outperforms the dynamic load balancing algorithm for these measures. The integrated scheme produces even better results for all of these measures and results in reduced execution times as well.

[1]  H. Avril,et al.  The Dynamic Load Balancing of Clustered Time Warp for Logic Simulation , 1996, Proceedings of Symposium on Parallel and Distributed Tools.

[2]  Carl Tropper,et al.  An Efficient Gvt Computation Using Snapshots , 1998 .

[3]  Christopher D. Carothers,et al.  Background execution of time warp programs , 1996, Workshop on Parallel and Distributed Simulation.

[4]  L. G. Mason,et al.  Learning Automata Models for Adaptive Flow Control in Packet-Switching Networks , 1986 .

[5]  Richard M. Fujimoto,et al.  Adaptive Flow Control in Time Warp , 1997, Workshop on Parallel and Distributed Simulation.

[6]  Herbert Bauer,et al.  Dynamic load balancing of a multi-cluster simulator on a network of workstations , 1995, PADS.

[7]  J. Turner,et al.  New directions in communications (or which way to the information age?) , 1986, IEEE Communications Magazine.

[8]  David Jefferson,et al.  Virtual time II: storage management in conservative and optimistic systems , 1990, PODC '90.

[9]  Richard M. Fujimoto,et al.  An Adaptive Memory Management Protocol for Time Warp Simulation , 1994, SIGMETRICS.

[10]  Jed Marti,et al.  Load Balancing Strategies for Time Warp on Multi-User Workstations , 1993, Comput. J..

[11]  R. Fujimoto,et al.  Background Execution of Time Warp Programs , 1996, Proceedings of Symposium on Parallel and Distributed Tools.

[12]  Kumpati S. Narendra,et al.  Learning Automata - A Survey , 1974, IEEE Trans. Syst. Man Cybern..

[13]  J. Steinman,et al.  SPEEDES: Synchronous Parallel Environment for Emulation and Discrete-Event Simulation , 1991 .

[14]  Alois Ferscha,et al.  Estimating rollback overhead for optimism control in Time Warp , 1995, Proceedings of Simulation Symposium.

[15]  David R. Jefferson,et al.  Virtual time , 1985, ICPP.