Mobile-Process-Based Parallel Simulation

Our focus is on the novel use of a process-oriented methodology in software systems for parallel simulation on distributed memory. To the best of our knowledge, the few existing systems which adopt a process view strictly use message passing to effect process interaction in distributed-memory settings. As a result, these systems avoid scenarios in which processes directly access passive but shared components. This can restrict the manner in which a system is modeled and hinder the phase of distributed model construction. In this paper, we propose an approach which utilizes mobile processes in distributed-memory simulation systems. The approach entails the migration of a requesting process with its timestamp to the remote site hosting the requested passive object. Major advantages of this approach include one-time transmission, fixed communication topology, and increased locality of reference. Empirical results based on lightweight processes show that the mobile process paradigm can be as efficient as the message-passing paradigm.

[1]  Allen D. Malony,et al.  Parallel Discrete Event Simulation Using Shared Memory , 1988, IEEE Trans. Software Eng..

[2]  Vernon Rego,et al.  EcliPse: A system for high performance concurrent simulation , 1991, Softw. Pract. Exp..

[3]  Ko-Yang Wang Intelligent program optimization and parallelization for parallel computers , 1991 .

[4]  Vaidy S. Sunderam,et al.  Experiments in Concurrent Stochastic Simulation: The EcliPSe Paradigm , 1992, J. Parallel Distributed Comput..

[5]  K. Mani Chandy,et al.  Distributed Simulation: A Case Study in Design and Verification of Distributed Programs , 1979, IEEE Transactions on Software Engineering.

[6]  Vernon Rego,et al.  A simulation testbed based on lightweight processes , 1994, Softw. Pract. Exp..

[7]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[8]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[9]  Herb Schwetman,et al.  CSIM: a C-based process-oriented simulation language , 1986, WSC '86.

[10]  W. R Franta,et al.  The process view of simulation (Operating and programming systems series) , 1977 .

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

[12]  Chung-Ta King,et al.  The Xthreads library: Design, implementation, and applications , 1993, Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93.

[13]  Jeffrey S. Chase,et al.  The Amber system: parallel programming on a network of multiprocessors , 1989, SOSP '89.

[14]  Carl Tropper,et al.  On Process Migration and Load Balancing in Time Warp , 1993, IEEE Trans. Parallel Distributed Syst..

[15]  J. Sang,et al.  Thread migration on heterogeneous systems via compile-time transformations , 1994, Proceedings of 1994 International Conference on Parallel and Distributed Systems.

[16]  Andrew Birrell,et al.  Implementing remote procedure calls , 1984, TOCS.

[17]  Vernon Rego,et al.  Efficient algorithms for simulating service disciplines , 1994, Simul. Pract. Theory.