Non-blocking steal-half work queues

Danny Hendler, Nir Shavit

Research output: Contribution to conferencePaperpeer-review

80 Scopus citations

Abstract

The non-blocking work-stealing algorithm of Arora et al. has been gaining popularity as the multiprocessor load balancing technology of choice in both Industry and Academia. At its core is an ingenious scheme for stealing a single item in a non-blocking manner from an array based deque. In recent years, several researchers have argued that stealing more than a single item at a time allows for increased stability, greater overall balance, and improved performance. This paper presents StealHalf, a new generalization of the Arora et al. algorithm, that allows processes, instead of stealing one, to steal up to half of the items in a given queue at a time. The new algorithm preserves the key properties of the Arora et al. algorithm: it is non-blocking, and it minimizes the number of CAS operations that the local process needs to perform. We provide analysis that proves that the new algorithm provides better load distribution: the expected load of any process throughout the execution is less than a constant away from the overall system average.

Original languageEnglish
Pages280-289
Number of pages10
DOIs
StatePublished - 1 Jan 2002
Externally publishedYes
EventProceedings of the Twenty - First Annual ACM Symposium on Principles of Distributed Computing PODC 2002 - Monterey, CA, United States
Duration: 21 Jul 200224 Jul 2002

Conference

ConferenceProceedings of the Twenty - First Annual ACM Symposium on Principles of Distributed Computing PODC 2002
Country/TerritoryUnited States
CityMonterey, CA
Period21/07/0224/07/02

ASJC Scopus subject areas

  • Software
  • Hardware and Architecture
  • Computer Networks and Communications

Fingerprint

Dive into the research topics of 'Non-blocking steal-half work queues'. Together they form a unique fingerprint.

Cite this