Scalable flat-combining based synchronous queues

Danny Hendler*, Itai Incze, Nir Shavit, Moran Tzafrir

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review


In a synchronous queue, producers and consumers handshake to exchange data. Recently, new scalable unfair synchronous queues were added to the Java JDK 6.0 to support high performance thread pools. This paper applies flat-combining to the problem of designing a synchronous queue algorithm. We first use the original flat-combining algorithm, a single "combiner" thread acquires a global lock and services the other threads' combined requests with very low synchronization overheads. As we show, this single combiner approach delivers superior performance up to a certain level of concurrency, but unfortunately does not continue to scale beyond that point. In order to continue to deliver scalable performance as concurrency increases, we introduce a new parallel flat-combining algorithm. The new algorithm dynamically adds additional concurrently executing flat-combiners that coordinate their work. It enjoys the low coordination overheads of sequential flat combining, with the added scalability that comes with parallelism. Our novel unfair synchronous queue using parallel flat combining exhibits scalability far and beyond that of the JDK 6.0 algorithm: it matches it in the case of a single producer and consumer, and is superior throughout the concurrency range, delivering up to 11 (eleven) times the throughput at high concurrency.

Original languageEnglish
Title of host publicationDistributed Computing - 24th International Symposium, DISC 2010, Proceedings
Number of pages15
StatePublished - 2010
Event24th International Symposium on Distributed Computing, DISC 2010 - Cambridge, MA, United States
Duration: 13 Sep 201015 Sep 2010

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume6343 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Conference24th International Symposium on Distributed Computing, DISC 2010
Country/TerritoryUnited States
CityCambridge, MA


FundersFunder number
Seventh Framework Programme216852


    Dive into the research topics of 'Scalable flat-combining based synchronous queues'. Together they form a unique fingerprint.

    Cite this