Relaxed Data Types as Consistency Conditions †
AbstractIn the quest for higher-performance shared data structures, weakening consistency conditions and relaxing the sequential specifications of data types are two of the primary tools available in the literature today. In this paper, we show that these two approaches are in many cases different ways to specify the same sets of allowed concurrent behaviors of a given shared data object. This equivalence allows us to use whichever description is clearer, simpler, or easier to achieve equivalent guarantees. Specifically, for three common data type relaxations, we define consistency conditions such that the combination of the new consistency condition and an unrelaxed type allows the same behaviors as Linearizability and the relaxed version of the data type. Conversely, for the consistency condition k-Atomicity, we define a new data type relaxation such that the behaviors allowed by the relaxed version of a data type, combined with Linearizability, are the same as those allowed by k-Atomicity and the original type. As an example of the possibilities opened by our new equivalence, we use standard techniques from the literature on consistency conditions to prove that the three data type relaxations we consider are not comparable to one another or to several similar known conditions. Finally, we show a particular class of data types where one of our newly-defined consistency conditions is comparable to, and stronger than, one of the known consistency conditions we consider. View Full-Text
Share & Cite This Article
Talmage, E.; Welch, J.L. Relaxed Data Types as Consistency Conditions †. Algorithms 2018, 11, 61.
Talmage E, Welch JL. Relaxed Data Types as Consistency Conditions †. Algorithms. 2018; 11(5):61.Chicago/Turabian Style
Talmage, Edward; Welch, Jennifer L. 2018. "Relaxed Data Types as Consistency Conditions †." Algorithms 11, no. 5: 61.
Note that from the first issue of 2016, MDPI journals use article numbers instead of page numbers. See further details here.