Skip to main content
Log in

Pseudosimulation: An algorithm for distributed simulation with limited memory

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

In this paper we present a new algorithm for the distributed simulation of systems that may be modeled as a network of processes which exchange event messages (e.g., computer networks, telephone systems). We focus upon the case of fully distributed processes with limited memory available to simulate each process. The synchronization algorithm employed is a blocking algorithm. The simulation of different processes is allowed to proceed in parallel until deadlock occurs, at which time a deadlock-breaking algorithm is invoked as in the Chandy/Misra scheme.(1) A central controller is emploled to detect and aid in the efficient resolution of deadlocks. We solve some problems which were not clearly addressed in the Chandy/Misra scheme. Our deadlock-breaking algorithm, christened Pseudosimulation, is a “look-ahead” algorithm, which undertakes to fill empty buffers with future event messages. Correctness and termination of the algorithm are proven. An analysis of the memory requirements and running time is performed. A lower bound on the memory requirements is also established which simplifies the deadlock-breaking algorithm.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. K. M. Chandy and J. Misra, Asynchronous Distributed Simulation via a Sequence of Parallel Computations,Comm. of the ACM 24:198–206 (April 1981).

    Article  Google Scholar 

  2. D. R. Jefferson, Virtual Time,ACM Trans. Prog. Lang. Syst. 7(3):404–425 (July 1985).

    Article  Google Scholar 

  3. J. K. Peacock, J. W. Wong, and E. G. Manning, Distributed Simulation Using a Network of Processors,Computer Networks 3(1):44–56 (February 1979).

    Article  Google Scholar 

  4. K. M. Chandy and J. Misra, Distributed Simulation: A Case Study in Design and Verification of Distributed Programs,IEEE Transactions on Software Engineering,SE-5(5):440–452 (September 1979).

    Google Scholar 

  5. D. R. Jefferson and H. Sowizral, Fast Concurrent Simulation Using the Time Warp Mechanism, Part I: Local Control, Computer Science Department, U.S.C., TR-83-204, Los Angeles, Cal. 90089-0782.

  6. J. Misra, Distributed Discrete-Event Simulation,ACM Computing Surveys,18(1):39–65 (March 1986).

    Article  Google Scholar 

  7. E. W. Dijkstra and C. S. Scholten, Termination Detection in Diffusing Computations,Information Processing Letters,11(1):1–4 (August 1980).

    Article  Google Scholar 

  8. K. M. Chandy, J. Misra, and L. M. Haas, Distributed Deadlock Detection,ACM Trans. Comput. Syst. 1(2):144–156 (May 1984).

    Article  Google Scholar 

  9. J. Misra, Detecting Termination of Distributed Computations Using Markers,Proc. of the 2nd Annual ACM Symp. on Principles of Distributed Computing, Montreal, Quebec, Canada, pp. 290–294 (August 1983).

  10. P. M. Merlin and P. J. Schweitzer, Deadlock Avoidance in Store-and-Forward Networks — In: Store-and-Forward Deadlock, — II: Other Deadlock Types,IEEE Transactions on Comm. Com.-28(3):334–360 (March 1980).

    Article  Google Scholar 

  11. G. Gambosi, D. P. Bovet, and D. A. Menascé, A Detection and Removal of Deadlocks in Store and Forward Communication Networks,Performance of Computer-Communication Systems, H. Rudin and W. Bux (ed.), Elsevier Science Publishers B.V. (North-Holland), IFIP (1984).

  12. B. Grošelj, Ph.D. Thesis, School of Computer Science, McGill University (in preparation).

Download references

Author information

Authors and Affiliations

Authors

Additional information

Research supported by grants from the National Sciences and Engineering Research Council of Canada and Centre de recherche informatique de Montréal.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Grošelj, B., Tropper, C. Pseudosimulation: An algorithm for distributed simulation with limited memory. Int J Parallel Prog 15, 413–456 (1986). https://doi.org/10.1007/BF01414465

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01414465

Key Words

Navigation