Copyright © 1999 Published by Elsevier Science B.V.
Contribution
Timing conditions for linearizability in uniform counting networks*1
Available online 13 July 1999.
Abstract
Counting networks are concurrent data structures that serve as building blocks in the design of highly scalable concurrent data structures in a way that eliminates sequential bottlenecks and contention. Linearizable counting networks assure that the order of the values returned by the network reflects the real-time order in which they were requested. Linearizability is an important consistency condition for concurrent data structures, as it simplifies proofs and enhances compositionality.
Though most counting networks are not linearizable, this paper presents a precise characterization of the timing conditions under which uniform non-linearizable networks exhibit linearizable behavior. Uniformity is a common structuring property of almost all published counting networks: a uniform network is made of “balancers” and “wires” so that each balancer lies on some path from inputs to outputs, and all paths from inputs to outputs have equal lengths. Our results include the following simple condition: if the time it takes a slow token to traverse a “wire” or “balancer” is no more than twice that of a fast token, the network is linearizable. Surprisingly, the timing measure in this condition is local to the individual “wires” and “balancers” of the network, that is, it is independent of network depth.
We use our timing measure to mathematically explain our empirical findings: that in a variety of highly concurrent execution scenarios tested on a simulated shared memory multiprocessor, the Bitonic counting networks of Aspnes, Herlihy, and Shavit exhibit completely linearizable behavior, and when linearizability is violated, the percentage of violations is relatively small.
Herlihy, Shavit, and Waarts have shown that counting networks that achieve linearizability under all circumstances must pay the penalty of linear time latency. Our results suggest that for systems in which timing anomalies occur infrequently, such linear delays may be an unnecessary burden on applications that are willing to incur occasional non-linearizability.
Author Keywords: Counting network; Timing analysis; Linearizability; Data structure; Empirical evaluation
Article Outline
Corresponding author. Correspondence address.
*1 This work was supported by the following contracts and grants: ARPA N00014-92-J-4033 and F19628-95-C-0118, NSF 9225124-CCR, 9520298-CCR and 9804665-CCR, ONR-AFOSR F49620-94-1-01997, and AFOSR F49620-97-1-0337. A preliminary version of this work appears as Counting networks are Practically Linearizable in the Proceedings of the 15th Annual ACM Symposium on Principles of Distributed Computing, Philadelphia, PA, May 1996, pp. 280–289.






E-mail Article
Add to my Quick Links

Cited By in Scopus (6)






