Wait-free sorting algorithm

Nir Shavit*, Eli Upfal, Asaph Zemach

*Corresponding author for this work

Research output: Contribution to conferencePaperpeer-review

4 Scopus citations

Abstract

Sorting is one of a set of fundamental problems in computer science. In this paper we present the first wait-free algorithm for sorting an input array of size N using P ≤ N processors to achieve optimal running time. Known sorting algorithms, when made wait-free through previously established transformation techniques have complexity O(log3 N). The randomized algorithm we present here, when run in the CRCW PRAM model executes in optimal O(log N) time when P = N and O(N log N/P) otherwise. The wait-free property guarantees that the sort will complete despite any delays or failures incurred by the processors. This is a very desirable property from an operating systems point of view, since it allows oblivious thread scheduling as well as thread creation and deletion, without fear of losing the algorithm's correctness. We further present a variant of the algorithm which is shown to suffer no more than O(√P) contention when run synchronously.

Original languageEnglish
Pages121-128
Number of pages8
StatePublished - 1997
EventProceedings of the 1997 16th Annual ACM Symposium on Principles of Distributed Computing - Santa Barbara, CA, USA
Duration: 21 Aug 199724 Aug 1997

Conference

ConferenceProceedings of the 1997 16th Annual ACM Symposium on Principles of Distributed Computing
CitySanta Barbara, CA, USA
Period21/08/9724/08/97

Funding

FundersFunder number
National Science Foundation9731477

    Fingerprint

    Dive into the research topics of 'Wait-free sorting algorithm'. Together they form a unique fingerprint.

    Cite this