On the performance of distributed lock-based synchronization?

  • Authors:
  • Yuval Lubowich;Gadi Taubenfeld

  • Affiliations:
  • The Interdisciplinary Center, Herzliya 46150, Israel;The Interdisciplinary Center, Herzliya 46150, Israel

  • Venue:
  • ACM SIGOPS Operating Systems Review
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Distributed mutual exclusion locks are the de facto mechanism for concurrency control on distributed data structures. A process accesses the data structure only while holding the lock, and hence the process is guaranteed exclusive access. The popularity of this approach is largely due to the apparently simple programming model of such locks and the availability of efficient implementations. We study the relation between classical types of distributed locking mechanisms and several distributed data structures which use locking for synchronization. Our objectives are: To determine which one of the two classical locking techniques -- token-based locking or permission-based locking -- is more efficient. Our strategy to achieve this objective is to implement several locks and to compare their performance. To propose, implement and test several distributed data structures, namely, two different types of counters, a queue, a stack and a linked list; and for each one of the data structures to determine what is the preferred mutual exclusion lock to be used as the underling locking mechanism. To determine which one of the two proposed counters is better to be used either as a stand-alone data structure or when used as a building block for implementing other high level data structures. Our testing environment is consisting of 20 Intel XEON 2.4 GHz machines running theWindows XP OS with 2GB of RAM and using a JRE version 1.4.2_08. All the machines were located inside the same LAN and were connected using a 20 port Cisco switch.