TY - GEN
T1 - The F-snapshot problem
AU - Amram, Gal
N1 - Publisher Copyright:
© Springer International Publishing AG 2016.
PY - 2016/1/1
Y1 - 2016/1/1
N2 - Aguilera, Gafni and Lamport introduced the signaling problem in [3]. In this problem, two processes numbered 0 and 1 can call two procedures: update and Fscan. A parameter of the problem is a two variable function F(x0, x1). Each process pi can assign values to variable xi by calling update(v) with some data value v, and compute the value: F(x0, x1) by executing an Fscan procedure. The problem is interesting when the domain of F is infinite and the range of F is finite. In this case, some “access restrictions” are imposed that limit the size of the registers that the Fscan procedure can access. Aguilera et al. provided a non-blocking solution and asked whether a wait-free solution exists. A positive answer can be found in [5]. The natural generalization of the two-process signaling problem to an arbitrary number of processes turns out to yield an interesting generalization of the fundamental snapshot problem, which we call the F-snapshot problem. In this problem n processes can write values to an n-segment array (each process to its own segment), and can read and obtain the value of an n-variable function F on the array of segments. In case that the range of F is finite, it is required that only bounded registers are accessed when the processes apply the function F to the array, although the data values written to the segments may be taken from an infinite set. We provide here an affirmative answer to the question of Aguilera et al. for an arbitrary number of processes. Our solution employs only single-writer atomic registers, and its time complexity is O(n log n).
AB - Aguilera, Gafni and Lamport introduced the signaling problem in [3]. In this problem, two processes numbered 0 and 1 can call two procedures: update and Fscan. A parameter of the problem is a two variable function F(x0, x1). Each process pi can assign values to variable xi by calling update(v) with some data value v, and compute the value: F(x0, x1) by executing an Fscan procedure. The problem is interesting when the domain of F is infinite and the range of F is finite. In this case, some “access restrictions” are imposed that limit the size of the registers that the Fscan procedure can access. Aguilera et al. provided a non-blocking solution and asked whether a wait-free solution exists. A positive answer can be found in [5]. The natural generalization of the two-process signaling problem to an arbitrary number of processes turns out to yield an interesting generalization of the fundamental snapshot problem, which we call the F-snapshot problem. In this problem n processes can write values to an n-segment array (each process to its own segment), and can read and obtain the value of an n-variable function F on the array of segments. In case that the range of F is finite, it is required that only bounded registers are accessed when the processes apply the function F to the array, although the data values written to the segments may be taken from an infinite set. We provide here an affirmative answer to the question of Aguilera et al. for an arbitrary number of processes. Our solution employs only single-writer atomic registers, and its time complexity is O(n log n).
UR - http://www.scopus.com/inward/record.url?scp=84996931981&partnerID=8YFLogxK
U2 - 10.1007/978-3-319-48314-6_11
DO - 10.1007/978-3-319-48314-6_11
M3 - Conference contribution
AN - SCOPUS:84996931981
SN - 9783319483139
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 159
EP - 176
BT - Structural Information and Communication Complexity - 23rd International Colloquium, SIROCCO 2016, Revised Selected Papers
A2 - Suomela, Jukka
PB - Springer Verlag
T2 - 23rd International Colloquium on Structural Information and Communication Complexity, SIROCCO 2016
Y2 - 19 July 2016 through 21 July 2016
ER -