Skip to main navigation Skip to search Skip to main content

Scalable flat-combining based synchronous queues

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

    22 Scopus citations

    Abstract

    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
    Pages79-93
    Number of pages15
    DOIs
    StatePublished - 13 Dec 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

    Conference

    Conference24th International Symposium on Distributed Computing, DISC 2010
    Country/TerritoryUnited States
    CityCambridge, MA
    Period13/09/1015/09/10

    ASJC Scopus subject areas

    • Theoretical Computer Science
    • General Computer Science

    Fingerprint

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

    Cite this