Cooperative Task-Oriented Computing

Book description

Cooperative network supercomputing is becoming increasingly popular for harnessing the power of the global Internet computing platform. A typical Internet supercomputer consists of a master computer or server and a large number of computers called workers, performing computation on behalf of the master. Despite the simplicity and benefits of a single master approach, as the scale of such computing environments grows, it becomes unrealistic to assume the existence of the infallible master that is able to coordinate the activities of multitudes of workers. Large-scale distributed systems are inherently dynamic and are subject to perturbations, such as failures of computers and network links, thus it is also necessary to consider fully distributed peer-to-peer solutions.

We present a study of cooperative computing with the focus on modeling distributed computing settings, algorithmic techniques enabling one to combine efficiency and fault-tolerance in distributed systems, and the exposition of trade-offs between efficiency and fault-tolerance for robust cooperative computing. The focus of the exposition is on the abstract problem, called Do-All, and formulated in terms of a system of cooperating processors that together need to perform a collection of tasks in the presence of adversity. Our presentation deals with models, algorithmic techniques, and analysis. Our goal is to present the most interesting approaches to algorithm design and analysis leading to many fundamental results in cooperative distributed computing. The algorithms selected for inclusion are among the most efficient that additionally serve as good pedagogical examples. Each chapter concludes with exercises and bibliographic notes that include a wealth of references to related work and relevant advanced results.

Table of Contents: Introduction / Distributed Cooperation and Adversity / Paradigms and Techniques / Shared-Memory Algorithms / Message-Passing Algorithms / The Do-All Problem in Other Settings / Bibliography / Authors' Biographies

Table of contents

  1. Acknowledgments
  2. Introduction
    1. Motivation and Landscape
    2. Book Roadmap and Conventions
      1. Roadmap
      2. Conventions
  3. Distributed Cooperation and Adversity
    1. Distributed Computing and Efficiency
    2. Cooperation Problem: Do-All Computing
    3. Computation and Adversarial Settings
    4. Fault Tolerance, Efficiency, and Lower Bounds
    5. Bibliographic Notes
  4. Paradigms and Techniques
    1. Algorithmic Paradigms
      1. Global Allocation Paradigm
      2. Local Allocation Paradigm
      3. Hashed Allocation Paradigm
    2. Algorithmic Techniques in the Shared-Memory Model
      1. Basic Techniques for Implementing Allocation Paradigms
      2. Techniques for Improving Algorithm Efficiency
    3. Algorithmic Techniques in the Message-Passing Model
      1. Basic Techniques for Implementing Allocation Paradigms
      2. Techniques for Improving Algorithm Efficiency
    4. Exercises
    5. Bibliographic Notes
  5. Shared-Memory Algorithms
    1. Algorithm W
      1. Description of Algorithm W
      2. Analysis of Algorithm W
      3. Improving Efficiency with Oversaturation
    2. Algorithm X
      1. Description of Algorithm X
      2. Analysis of Algorithm X
    3. Algorithm Groote
      1. A High-level View of the Algorithm.
      2. The Algorithm for p = 2k and n = mk
    4. Algorithm AWT
      1. Contention of Permutations
      2. Description of Algorithm AWT
      3. Analysis of algorithm AWT
    5. Algorithm TwoLevelAW
      1. Description of Algorithm TLAW(q,t) (1/2)
      2. Description of Algorithm TLAW(q,t) (2/2)
      3. Analysis of Algorithm TLAW(q,t)
    6. Exercises
    7. Bibliographical Notes
  6. Message-Passing Algorithms
    1. Solving Do-All through Shared-Memory Emulation
      1. Message-Passing Setting, Quorums, and Adversity
      2. Shared-Memory Emulation Service AM
      3. The Message-Passing Algorithm XMP
      4. Algorithm Analysis
    2. Algorithm AN
      1. Data Structures and Phases of Algorithm AN
      2. Details of Algorithm AN
      3. Analysis of Algorithm AN
    3. Algorithm GKS
      1. The Gossip Problem
      2. Combinatorial Tools
      3. The Gossip Algorithm (1/2)
      4. The Gossip Algorithm (2/2)
      5. The Do-All Algorithm (1/2)
      6. The Do-All Algorithm (2/2)
    4. Algorithms KSAW and KSPA
      1. Adversarial Model, Complexity and Lower Bounds
      2. Family of Deterministic Algorithms KSAW (1/2)
      3. Family of Deterministic Algorithms KSAW (2/2)
      4. Algorithm KSPA
    5. Exercises
    6. Bibliographical Notes
  7. The Do-All Problem in Other Settings
    1. Do-All with Byzantine Processors
    2. Do-All with Broadcast Channels
    3. Do-All in Partitionable Networks
    4. Do-All in the Absence of Communication
  8. Bibliography (1/2)
  9. Bibliography (2/2)
  10. Authors' Biographies
  11. Index

Product information

  • Title: Cooperative Task-Oriented Computing
  • Author(s): Chryssis Georgiou, Alexander Shvartsman
  • Release date: August 2011
  • Publisher(s): Morgan & Claypool Publishers
  • ISBN: 9781608452880