文章基本信息
- 标题:Intermediate Value Linearizability: A Quantitative Correctness Criterion
- 本地全文:下载
- 作者:Arik Rinberg ; Idit Keidar
- 期刊名称:LIPIcs : Leibniz International Proceedings in Informatics
- 电子版ISSN:1868-8969
- 出版年度:2020
- 卷号:179
- 页码:1-17
- DOI:10.4230/LIPIcs.DISC.2020.2
- 出版社:Schloss Dagstuhl -- Leibniz-Zentrum fuer Informatik
- 摘要:Big data processing systems often employ batched updates and data sketches to estimate certain properties of large data. For example, a CountMin sketch approximates the frequencies at which elements occur in a data stream, and a batched counter counts events in batches. This paper focuses on correctness criteria for concurrent implementations of such objects. Specifically, we consider quantitative objects, whose return values are from a totally ordered domain, with a particular emphasis on (ε,δ)-bounded objects that estimate a numerical quantity with an error of at most ε with probability at least 1 - δ. The de facto correctness criterion for concurrent objects is linearizability. Intuitively, under linearizability, when a read overlaps an update, it must return the objectâs value either before the update or after it. Consider, for example, a single batched increment operation that counts three new events, bumping a batched counterâs value from 7 to 10. In a linearizable implementation of the counter, a read overlapping this update must return either 7 or 10. We observe, however, that in typical use cases, any intermediate value between 7 and 10 would also be acceptable. To capture this additional degree of freedom, we propose Intermediate Value Linearizability (IVL), a new correctness criterion that relaxes linearizability to allow returning intermediate values, for instance 8 in the example above. Roughly speaking, IVL allows reads to return any value that is bounded between two return values that are legal under linearizability. A key feature of IVL is that we can prove that concurrent IVL implementations of (ε,δ)-bounded objects are themselves (ε,δ)-bounded. To illustrate the power of this result, we give a straightforward and efficient concurrent implementation of an (ε, δ)-bounded CountMin sketch, which is IVL (albeit not linearizable). Finally, we show that IVL allows for inherently cheaper implementations than linearizable ones. In particular, we show a lower bound of Ω(n) on the step complexity of the update operation of any wait-free linearizable batched counter from single-writer objects, and propose a wait-free IVL implementation of the same object with an O(1) step complexity for update.
- 关键词:concurrency; concurrent objects; linearizability