This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Process Synchronization: Design and Performance Evaluation of Distributed Algorithms
September 1989 (vol. 15 no. 9)
pp. 1053-1065

The author presents a simple solution for the committee coordination problem, which encompasses the synchronization and exclusion problems associated with implementing multiway rendezvous, and shows how it can be implemented to develop a family of algorithms. The algorithms use message counts to solve the synchronization problem, and they solve the exclusion problem by using a circulating token or by using auxiliary resources as in the solutions for the dining or drinking philosophers' problems. Results of a simulation study of the performance of the algorithms are presented. The experiments measured the response time and message complexity of each algorithm as a function of variations in the model parameters, including network topology and level of conflict in the system. The results show that the response time for algorithms proposed is significantly better than for existing algorithms, whereas the message complexity is considerably worse.

[1] Reference Manual for the Ada Programming Language, U.S. Dep. Defense, 1982.
[2] R. Back and R. Kurki-Suonio, "Cooperation in distributed systems using symmetric multi-process handshaking," Dep. Processing Math., Swedish Univ. Abo, Finland, Tech. Rep. 34, Series A, 1984.
[3] R. Bagrodia, "A distributed algorithm to implement the generalized alternative command of CSP," inProc. 6th Int. Conf. Distributed Systems, Cambridge, May 1986.
[4] R. L. Bagrodia, "An environment for the design and performance analysis of distributed systems," Ph.D. thesis, Dept. Comput. Sci., Univ. Texas, Austin, May 1987.
[5] R. Bagrodia, K. M. Chandy, and J. Misra, "A message-based approach to discrete-event simulation,"IEEE Trans. Software Eng., vol. SE-13, pp. 654-665, June 1987.
[6] R. L. Bagrodia, "A distributed algorithm to implementn-party rendezvous," inFoundations of Software Technology and Theoretical Computer Science(LNCS 287), K. V. Nori, Ed. New York: Springer-Verlag, Dec. 1987, pp. 138-152.
[7] A. J. Bernstein, "Output guards and non-determinism in communicating sequential processes,"ACM TOPLAS, vol. 2, no. 2, pp. 234- 238, Apr. 1980.
[8] G. Buckley and A. Silberschatz, "An effective implementation of the generalized input-output construct of CSP,"ACM Trans. Prog. Languages Syst., vol. 5, no. 2, pp. 223-235, Apr. 1983.
[9] K. M. Chandy and J. Misra, "The drinking philosophers problem,"ACM Trans. Programming Lang. Syst., vol. 6, no. 4, pp. 632-646, 1984.
[10] K. M. Chandy and J. Misra,Parallel Program Design: A Foundation. Reading, MA: Addison-Wesley, 1988.
[11] A. Charlesworth, "The multi-way rendezvous,"ACM Trans. Programming Languages Syst., vol. 9, no. 2, pp. 350-366, July 1987.
[12] I. R. Forman, "On the design of large distributed systems," Microelectronics and Computer Technology Corp., Austin, TX, Tech. Rep. STP-098-86, Jan. 1987; preliminary version inProc. First Int. Conf. Computer Languages, Miami, FL, Oct. 25-27, 1986.
[13] N. Francez, B. Hailpern, and G. Taubenfeld, "Script: A communication abstraction mechanism and its verification,"Sci. Comput. Programming, vol. 6, pp. 35-88, 1986.
[14] C. A. R. Hoare, "Communicating sequential processes,"Commun. ACM, vol. 21, pp. 666-677, 1978.
[15] G. J. Milne, "CIRCAL and the representation of communication, concurrency and time,"ACM Trans. Prog. Lang. Sys., vol. 7, no. 2, Apr. 1985.
[16] N. Natarajan, "A distributed synchronization scheme for communicating processes,"Comput. J.vol. 29, no. 2, pp. 109-117, 1986.
[17] F. B. Schneider, "Synchronization in distributed programs,"ACM Trans. Programming Languages Syst., vol. 4, no. 2, pp. 125-148, Apr. 1982.
[18] J. L. A. Van De Snepscheut, "Synchronous communication between asynchronous components,"IPL, vol. 13, no. 3, pp. 127-130, Dec. 1981.

Index Terms:
process synchronization; performance evaluation; distributed algorithms; committee coordination problem; multiway rendezvous; message counts; synchronization problem; exclusion problem; circulating token; auxiliary resources; simulation study; response time; message complexity; model parameters; network topology; level of conflict; computational complexity; message switching; network topology; synchronisation
Citation:
R. Bagrodia, "Process Synchronization: Design and Performance Evaluation of Distributed Algorithms," IEEE Transactions on Software Engineering, vol. 15, no. 9, pp. 1053-1065, Sept. 1989, doi:10.1109/32.31364
Usage of this product signifies your acceptance of the Terms of Use.