Efficient Partial Snapshot Implementations

06/10/2020
by   Nikolaos D. Kallimanis, et al.
0

In this work, we propose the λ-scanner snapshot, a variation of the snapshot object, which supports any fixed amount of 0 < λ≤ n different SCAN operations being active at any given time. Whenever λ is equal to the number of processes n in the system, the λ-scanner object implements a multi-scanner object, while in case that λ is equal to 1, the λ-scanner object implements a single-scanner object. We present the λ-Snap snapshot object, a wait-free λ-scanner snapshot implementation that has a step complexity of O(λ) for UPDATE operations and O(λ m) for SCAN operations. The space complexity of λ-Snap is O(λ m). λ-Snap provides a trade-off between the step/space complexity and the maximum number of SCAN operations that the system can afford to be active on any given point in time. The low space complexity that our implementations provide makes them more appealing in real system applications. Moreover, we provide a slightly modified version of the λ-Snap implementation, which is called partial λ-Snap, that is able to support dynamic partial scan operations. In such an object, processes can execute modified SCAN operations called PARTIAL_SCAN that could obtain a part of the snapshot object avoiding to read the whole set of components. In this work, we first provide a simple single-scanner version of λ-Snap, which is called 1-Snap. We provide 1-Snap just for presentation purposes, since it is simpler than λ-Snap. The UPDATE in 1-Snap has a step complexity of O(1), while the SCAN has a step complexity of O(m). This implementation uses O(m) CAS registers.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/10/2020

An Efficient Universal Construction for Large Objects

This paper presents L-UC, a universal construction that efficiently impl...
research
02/26/2020

Upper and Lower Bounds on the Space Complexity of Detectable Object

The emergence of systems with non-volatile main memory (NVM) increases t...
research
05/25/2018

A Multi-Scan Labeled Random Finite Set Model for Multi-object State Estimation

State space models in which the system state is a finite set--called the...
research
01/19/2018

Towards a Theory of Data-Diff: Optimal Synthesis of Succinct Data Modification Scripts

This paper addresses the Data-Diff problem: given a dataset and a subseq...
research
01/31/2023

Durable Algorithms for Writable LL/SC and CAS with Dynamic Joining

We present durable implementations for two well known universal primitiv...
research
07/23/2019

BPPSA: Scaling Back-propagation by Parallel Scan Algorithm

In an era when the performance of a single compute device plateaus, soft...
research
02/01/2021

Jiffy: A Lock-free Skip List with Batch Updates and Snapshots

In this paper we introduce Jiffy, the first lock-free, linearizable orde...

Please sign up or login with your details

Forgot password? Click here to reset