Parallel and Distributed Processing Symposium, International (2001)
San Francisco, California, USA
Apr. 23, 2001 to Apr. 27, 2001
<p>This paper describes a distributed monitor construct implemented in Java. The monitor construct has been widely used for ensuring mutual exclusion and achieving process synchronization in a centralized multi-programming environment. Extending the monitor to a distributed environment facilitates the development of distributed applications which require resource sharing and synchronization.</p> <p>The distributed monitor construct presented in this paper is based on a well-known tree-based distributed mutual exclusion algorithm proposed by Kerry Raymond, augmented with of a two-level system structure for scalability and efficiency. The design and implementation of the facility in Java has been presented in a previous paper. In this paper we focus on the correctness analysis and performance evaluation of the construct. Using a Java application for solving the distributed version of the producer-consumer problem, experiments have been carried out to evaluate the performance of the proposed distributed constructor. The results show that, with the use of the two-level system architecture, the average amount of time and the average number of messages used by a process to gain permission to enter its critical section are improved. Furthermore, factors that affect the performance including the tree configuration, the distribution of processes over the nodes, the workload, and the length of the critical sections, are discussed and the observations from the results are reported.</p>
J. Cao, N. K. Cheung and A. Chan, "Analysis and Evaluation of a Distributed Monitor Construct in Java," Parallel and Distributed Processing Symposium, International(IPDPS), San Francisco, California, USA, 2001, pp. 30108b.