A coded shared atomic memory algorithm for message passing architectures

Viveck R. Cadambe, Nancy Lynch, Muriel Mèdard, Peter Musial

    Research output: Contribution to journalArticle

    2 Citations (Scopus)

    Abstract

    This paper considers the communication and storage costs of emulating atomic (linearizable) multi-writer multi-reader shared memory in distributed message-passing systems. The paper contains three main contributions: (1) we present an atomic shared-memory emulation algorithm that we call Coded Atomic Storage (CAS). This algorithm uses erasure coding methods. In a storage system with N servers that is resilient to f server failures, we show that the communication cost of CAS is NN-2f. The storage cost of CAS is unbounded. (2) We present a modification of the CAS algorithm known as CAS with garbage collection (CASGC). The CASGC algorithm is parameterized by an integer δ and has a bounded storage cost. We show that the CASGC algorithm satisfies atomicity. In every execution of CASGC where the number of server failures is no bigger than f, we show that every write operation invoked at a non-failing client terminates. We also show that in an execution of CASGC with parameter δ where the number of server failures is no bigger than f, a read operation terminates provided that the number of write operations that are concurrent with the read is no bigger than δ. We explicitly characterize the storage cost of CASGC, and show that it has the same communication cost as CAS. (3) We describe an algorithm known as the Communication Cost Optimal Atomic Storage (CCOAS) algorithm that achieves a smaller communication cost than CAS and CASGC. In particular, CCOAS incurs read and write communication costs of NN-f measured in terms of number of object values. We also discuss drawbacks of CCOAS as compared with CAS and CASGC.

    Original languageEnglish (US)
    Pages (from-to)49-73
    Number of pages25
    JournalDistributed Computing
    Volume30
    Issue number1
    DOIs
    StatePublished - Feb 1 2017

    Fingerprint

    Message passing
    Message Passing
    Garbage Collection
    Data storage equipment
    Communication Cost
    Costs
    Communication
    Servers
    Server
    Architecture
    Terminate
    Shared Memory
    Atomicity
    Emulation
    Computer systems
    Storage System
    Concurrent

    All Science Journal Classification (ASJC) codes

    • Theoretical Computer Science
    • Hardware and Architecture
    • Computer Networks and Communications
    • Computational Theory and Mathematics

    Cite this

    Cadambe, Viveck R. ; Lynch, Nancy ; Mèdard, Muriel ; Musial, Peter. / A coded shared atomic memory algorithm for message passing architectures. In: Distributed Computing. 2017 ; Vol. 30, No. 1. pp. 49-73.
    @article{66b5410869284f42852287f6ae2a8333,
    title = "A coded shared atomic memory algorithm for message passing architectures",
    abstract = "This paper considers the communication and storage costs of emulating atomic (linearizable) multi-writer multi-reader shared memory in distributed message-passing systems. The paper contains three main contributions: (1) we present an atomic shared-memory emulation algorithm that we call Coded Atomic Storage (CAS). This algorithm uses erasure coding methods. In a storage system with N servers that is resilient to f server failures, we show that the communication cost of CAS is NN-2f. The storage cost of CAS is unbounded. (2) We present a modification of the CAS algorithm known as CAS with garbage collection (CASGC). The CASGC algorithm is parameterized by an integer δ and has a bounded storage cost. We show that the CASGC algorithm satisfies atomicity. In every execution of CASGC where the number of server failures is no bigger than f, we show that every write operation invoked at a non-failing client terminates. We also show that in an execution of CASGC with parameter δ where the number of server failures is no bigger than f, a read operation terminates provided that the number of write operations that are concurrent with the read is no bigger than δ. We explicitly characterize the storage cost of CASGC, and show that it has the same communication cost as CAS. (3) We describe an algorithm known as the Communication Cost Optimal Atomic Storage (CCOAS) algorithm that achieves a smaller communication cost than CAS and CASGC. In particular, CCOAS incurs read and write communication costs of NN-f measured in terms of number of object values. We also discuss drawbacks of CCOAS as compared with CAS and CASGC.",
    author = "Cadambe, {Viveck R.} and Nancy Lynch and Muriel M{\`e}dard and Peter Musial",
    year = "2017",
    month = "2",
    day = "1",
    doi = "10.1007/s00446-016-0275-x",
    language = "English (US)",
    volume = "30",
    pages = "49--73",
    journal = "Distributed Computing",
    issn = "0178-2770",
    publisher = "Springer Verlag",
    number = "1",

    }

    A coded shared atomic memory algorithm for message passing architectures. / Cadambe, Viveck R.; Lynch, Nancy; Mèdard, Muriel; Musial, Peter.

    In: Distributed Computing, Vol. 30, No. 1, 01.02.2017, p. 49-73.

    Research output: Contribution to journalArticle

    TY - JOUR

    T1 - A coded shared atomic memory algorithm for message passing architectures

    AU - Cadambe, Viveck R.

    AU - Lynch, Nancy

    AU - Mèdard, Muriel

    AU - Musial, Peter

    PY - 2017/2/1

    Y1 - 2017/2/1

    N2 - This paper considers the communication and storage costs of emulating atomic (linearizable) multi-writer multi-reader shared memory in distributed message-passing systems. The paper contains three main contributions: (1) we present an atomic shared-memory emulation algorithm that we call Coded Atomic Storage (CAS). This algorithm uses erasure coding methods. In a storage system with N servers that is resilient to f server failures, we show that the communication cost of CAS is NN-2f. The storage cost of CAS is unbounded. (2) We present a modification of the CAS algorithm known as CAS with garbage collection (CASGC). The CASGC algorithm is parameterized by an integer δ and has a bounded storage cost. We show that the CASGC algorithm satisfies atomicity. In every execution of CASGC where the number of server failures is no bigger than f, we show that every write operation invoked at a non-failing client terminates. We also show that in an execution of CASGC with parameter δ where the number of server failures is no bigger than f, a read operation terminates provided that the number of write operations that are concurrent with the read is no bigger than δ. We explicitly characterize the storage cost of CASGC, and show that it has the same communication cost as CAS. (3) We describe an algorithm known as the Communication Cost Optimal Atomic Storage (CCOAS) algorithm that achieves a smaller communication cost than CAS and CASGC. In particular, CCOAS incurs read and write communication costs of NN-f measured in terms of number of object values. We also discuss drawbacks of CCOAS as compared with CAS and CASGC.

    AB - This paper considers the communication and storage costs of emulating atomic (linearizable) multi-writer multi-reader shared memory in distributed message-passing systems. The paper contains three main contributions: (1) we present an atomic shared-memory emulation algorithm that we call Coded Atomic Storage (CAS). This algorithm uses erasure coding methods. In a storage system with N servers that is resilient to f server failures, we show that the communication cost of CAS is NN-2f. The storage cost of CAS is unbounded. (2) We present a modification of the CAS algorithm known as CAS with garbage collection (CASGC). The CASGC algorithm is parameterized by an integer δ and has a bounded storage cost. We show that the CASGC algorithm satisfies atomicity. In every execution of CASGC where the number of server failures is no bigger than f, we show that every write operation invoked at a non-failing client terminates. We also show that in an execution of CASGC with parameter δ where the number of server failures is no bigger than f, a read operation terminates provided that the number of write operations that are concurrent with the read is no bigger than δ. We explicitly characterize the storage cost of CASGC, and show that it has the same communication cost as CAS. (3) We describe an algorithm known as the Communication Cost Optimal Atomic Storage (CCOAS) algorithm that achieves a smaller communication cost than CAS and CASGC. In particular, CCOAS incurs read and write communication costs of NN-f measured in terms of number of object values. We also discuss drawbacks of CCOAS as compared with CAS and CASGC.

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

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

    U2 - 10.1007/s00446-016-0275-x

    DO - 10.1007/s00446-016-0275-x

    M3 - Article

    AN - SCOPUS:84974844211

    VL - 30

    SP - 49

    EP - 73

    JO - Distributed Computing

    JF - Distributed Computing

    SN - 0178-2770

    IS - 1

    ER -