Writing-all deterministically and optimally using a nontrivial number of asynchronous processors

Dariusz R. Kowalski, Alexander A. Shvartsman

Research output: Contribution to journalArticle

Abstract

The problem of performing n tasks on p asynchronous or undependable processors is a basic problem in distributed computing. This article considers an abstraction of this problem called Write-All: using p processors write 1's into all locations of an array of size n. In this problem writing 1 abstracts the notion of performing a simple task. Despite substantial research, there is a dearth of efficient deterministic asynchronous algorithms for Write-All/. Efficiency of algorithms is measured in terms of work that accounts for all local steps performed by the processors in solving the problem. Thus, an optimal algorithm would have work Θ(n), however it is known that optimality cannot be achieved when p = (n). The quest then is to obtain work-optimal solutions for this problem using a nontrivial, compared to n, number of processors p. The algorithm presented in this article has work complexity of O(n + p2 + ε), and it achieves work optimality for p = O(n 1/(2 + ε)) for any ε > 0, while the previous best result achieved optimality for p4n/log n. Additionally, the new result uses only the atomic read/write memory, without resorting to using the test-and-set primitive that was necessary in the previous solution.

Original languageEnglish (US)
Article number33
JournalACM Transactions on Algorithms
Volume4
Issue number3
DOIs
StatePublished - Jun 1 2008
Externally publishedYes

Fingerprint

Optimality
Asynchronous Algorithms
Deterministic Algorithm
Distributed Computing
Optimal Algorithm
Optimal Solution
Necessary
Abstraction

Keywords

  • Asynchrony
  • Distributed algorithms
  • Shared memory
  • Work
  • Write-All

ASJC Scopus subject areas

  • Mathematics (miscellaneous)

Cite this

Writing-all deterministically and optimally using a nontrivial number of asynchronous processors. / Kowalski, Dariusz R.; Shvartsman, Alexander A.

In: ACM Transactions on Algorithms, Vol. 4, No. 3, 33, 01.06.2008.

Research output: Contribution to journalArticle

@article{68b89b80a71048f4b1a1485af82f384d,
title = "Writing-all deterministically and optimally using a nontrivial number of asynchronous processors",
abstract = "The problem of performing n tasks on p asynchronous or undependable processors is a basic problem in distributed computing. This article considers an abstraction of this problem called Write-All: using p processors write 1's into all locations of an array of size n. In this problem writing 1 abstracts the notion of performing a simple task. Despite substantial research, there is a dearth of efficient deterministic asynchronous algorithms for Write-All/. Efficiency of algorithms is measured in terms of work that accounts for all local steps performed by the processors in solving the problem. Thus, an optimal algorithm would have work Θ(n), however it is known that optimality cannot be achieved when p = (n). The quest then is to obtain work-optimal solutions for this problem using a nontrivial, compared to n, number of processors p. The algorithm presented in this article has work complexity of O(n + p2 + ε), and it achieves work optimality for p = O(n 1/(2 + ε)) for any ε > 0, while the previous best result achieved optimality for p4n/log n. Additionally, the new result uses only the atomic read/write memory, without resorting to using the test-and-set primitive that was necessary in the previous solution.",
keywords = "Asynchrony, Distributed algorithms, Shared memory, Work, Write-All",
author = "Kowalski, {Dariusz R.} and Shvartsman, {Alexander A.}",
year = "2008",
month = "6",
day = "1",
doi = "10.1145/1367064.1367073",
language = "English (US)",
volume = "4",
journal = "ACM Transactions on Algorithms",
issn = "1549-6325",
publisher = "Association for Computing Machinery (ACM)",
number = "3",

}

TY - JOUR

T1 - Writing-all deterministically and optimally using a nontrivial number of asynchronous processors

AU - Kowalski, Dariusz R.

AU - Shvartsman, Alexander A.

PY - 2008/6/1

Y1 - 2008/6/1

N2 - The problem of performing n tasks on p asynchronous or undependable processors is a basic problem in distributed computing. This article considers an abstraction of this problem called Write-All: using p processors write 1's into all locations of an array of size n. In this problem writing 1 abstracts the notion of performing a simple task. Despite substantial research, there is a dearth of efficient deterministic asynchronous algorithms for Write-All/. Efficiency of algorithms is measured in terms of work that accounts for all local steps performed by the processors in solving the problem. Thus, an optimal algorithm would have work Θ(n), however it is known that optimality cannot be achieved when p = (n). The quest then is to obtain work-optimal solutions for this problem using a nontrivial, compared to n, number of processors p. The algorithm presented in this article has work complexity of O(n + p2 + ε), and it achieves work optimality for p = O(n 1/(2 + ε)) for any ε > 0, while the previous best result achieved optimality for p4n/log n. Additionally, the new result uses only the atomic read/write memory, without resorting to using the test-and-set primitive that was necessary in the previous solution.

AB - The problem of performing n tasks on p asynchronous or undependable processors is a basic problem in distributed computing. This article considers an abstraction of this problem called Write-All: using p processors write 1's into all locations of an array of size n. In this problem writing 1 abstracts the notion of performing a simple task. Despite substantial research, there is a dearth of efficient deterministic asynchronous algorithms for Write-All/. Efficiency of algorithms is measured in terms of work that accounts for all local steps performed by the processors in solving the problem. Thus, an optimal algorithm would have work Θ(n), however it is known that optimality cannot be achieved when p = (n). The quest then is to obtain work-optimal solutions for this problem using a nontrivial, compared to n, number of processors p. The algorithm presented in this article has work complexity of O(n + p2 + ε), and it achieves work optimality for p = O(n 1/(2 + ε)) for any ε > 0, while the previous best result achieved optimality for p4n/log n. Additionally, the new result uses only the atomic read/write memory, without resorting to using the test-and-set primitive that was necessary in the previous solution.

KW - Asynchrony

KW - Distributed algorithms

KW - Shared memory

KW - Work

KW - Write-All

UR - http://www.scopus.com/inward/record.url?scp=47249162476&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=47249162476&partnerID=8YFLogxK

U2 - 10.1145/1367064.1367073

DO - 10.1145/1367064.1367073

M3 - Article

AN - SCOPUS:47249162476

VL - 4

JO - ACM Transactions on Algorithms

JF - ACM Transactions on Algorithms

SN - 1549-6325

IS - 3

M1 - 33

ER -