Tools and Environments for Parallel and Distributed Computing
暫譯: 平行與分散計算的工具與環境

Salim Hariri, Manish Parashar

  • 出版商: Wiley
  • 出版日期: 2004-01-28
  • 定價: $1,980
  • 售價: 6.0$1,188
  • 語言: 英文
  • 頁數: 232
  • 裝訂: Hardcover
  • ISBN: 0471332887
  • ISBN-13: 9780471332886
  • 相關分類: 大數據 Big-data軟體工程
  • 立即出貨(限量)

買這商品的人也買了...

商品描述

Today's most complete reference on the rapidly evolving software technology used in parallel and distributed computing
Designing, developing, and utilizing the kinds of versatile computing environments that will effectively support today's complex scientific and engineering applications is an ongoing research challenge. Tools and Environments for Parallel and Distributed Computing is the first comprehensive survey of the successful computing methodologies used in today's scientific communities, including both a summary of past techniques and an introduction to future technologies.

Covering a wide variety of approaches to parallel and distributed computing, with emphasis on such factors as tradeoffs between performance and cost, the authors present a thorough survey of today's most promising software applications, their strengths and limitations, including:

  • Grid computing
  • Message-passing tools
  • Distributed shared-memory tools
  • Distributed object computing tools

Each methodology is supported by detailed case studies.
An important hands-on reference for researchers, educators, and practitioners in the field, this is a practical guide for the development and selection of today's scientific and engineering software systems

Table of Contents:

Preface.

1. Parallel and Distributed Computing (S. Hariri & M. Parashar).

1.1 Introduction: Basic Concepts.

1.2 Promises and Challenges of Parallel and Distributed Systems.

1.2.1 Processing Technology.

1.2.2 Networking Technology.

1.2.3 Software Tools and Environments.

1.3 Distributed System Design Framework.

References and Further Reading.

2. Message-Passing Tools (S. Hariri & I. Ra).

2.1 Introduction.

2.2 Message-Passing Tools versus Distributed Shared Memory.

2.2.1 Distributed Shared Memory Model.

2.2.2 Message-Passing Model.

2.3 Message-Passing System: Desirable Features.

2.4 Classification of Message-Passing Tools.

2.4.1 Classification by Implementation.

2.5 Overview of Message-Passing Tools.

2.5.1 Socket-Based Message Passing.

2.5.2 p4.

2.5.3 Parallel Virtual Machine.

2.5.4 Message-Passing Interface.

2.5.5 Nexus.

2.5.6 Madeleine I and II.

2.5.7 Active Messages.

2.6 ACS.

2.6.1 Multithread Communications Services.

2.6.2 Separation of Data and Control Functions.

2.6.3 Programmable Communication, Control, and Management Service.

2.6.4 Multiple Communication Interfaces.

2.6.5 Adaptive Group Communication Services.

2.7 Experimental Results and Analysis.

2.7.1 Experimental Environment.

2.7.2 Performance of Primitives.

2.7.3 Application Performance Benchmarking.

2.7.4 Performance Results of Adaptive Schemes.

2.8 Conclusions.

References.

3. Distributed Shared Memory Tools (M. Parashar & S. Chandra).

3.1 Introduction.

3.2 Cache Coherence.

3.2.1 Directory-Based Cache Coherence.

3.3 Shared Memory Consistency Models.

3.4 Distributed Memory Architectures.

3.5 Classification of Distributed Shared Memory Systems.

3.5.1 Hardware-Based DSM Systems.

3.5.2 Mostly Software Page-Based DSM Systems.

3.5.3 All-Software Object-Based DSM Systems.

References.

4. Distributed-Object Computing Tools (R. Raje, et al.).

4.1 Introduction.

4.2 Basic Model.

4.2.1 RMI.

4.2.2 CORBA.

4.2.3 DCOM.

4.3 Examples.

4.3.1 Experimental Setup.

4.3.2 Developing Applications under RMI, CORBA, and DCOM.

4.3.3 Experiment 1: Ping.

4.3.4 Experiment 2: Producer-Consumer Problem.

4.3.5 Experiment 3: Numerical Computation.

4.4 Comparison of the Three Paradigms.

4.4.1 Dependency Issues.

4.4.2 Implementation Details.

4.4.3 Architecture Details.

4.4.4 Support for Additional Features.

4.4.5 Performance Comparison.

4.5 Conclusions.

References.

5. Gestalt of the Grid (G. von Laszewski & P. Wagstrom).

5.1 Introduction.

5.1.1 Motivation.

5.1.2 Enabling Factors.

5.2 Definitions.

5.3 Multifaceted Grid Architecture.

5.3.1 N-Tiered Grid Architecture.

5.3.2 Role-Based Grid Architecture.

5.3.3 Service-Based Grid Architecture.

5.3.4 Grid Challenges.

5.4 Grid Management Aspects.

5.4.1 Managing Grid Security.

5.4.2 Managing Grid Information.

5.4.3 Managing Grid Data.

5.4.4 Managing Grid Execution and Resources.

5.4.5 Managing Grid Software.

5.4.6 Managing Grid Hardware.

5.5 Grid Activities.

5.5.1 Community Activities.

5.5.2 Grid Middleware.

5.5.3 High-Throughput Computing.

5.6 Grid Applications.

5.6.1 Astrophysics Simulation Collaboratory.

5.6.2 Particle Physics Data Grid.

5.6.3 NEESgrid.

5.7 Portals.

5.7.1 HotPage.

5.7.2 Webflow and Gateway.

5.7.3 XCAT.

5.7.4 UNICORE.

5.7.5 JiPANG.

5.7.6 PUNCH.

5.7.7 Access Grid.

5.7.8 Commercial Grid Activities.

5.8 Conclusions.

References.

6. Software Development for Parallel and Distributed Computing (M. Parashar & S. Hariri).

6.1 Introduction.

6.2 Issues in HPC Software Development.

6.2.1 Models for Parallel Computation.

6.2.2 Portable Application Description Medium.

6.2.3 Parallel Algorithm Development.

6.2.4 Program Implementation and Runtime.

6.2.5 Visualization and Animation.

6.2.6 Maintainability.

6.2.7 Reliability.

6.2.8 Reusability.

6.3 HPC Software Development Process.

6.4 Parallel Modeling of Stock Option Pricing.

6.5 Inputs.

6.6 Application Analysis Stage.

6.7 Application Development Stage.

6.7.1 Algorithm Development Module.

6.7.2 System-Level Mapping Module.

6.7.3 Machine-Level Mapping Module.

6.7.4 Implementation/Coding Module.

6.7.5 Design Evaluator Module.

6.8 Compile-Time and Runtime Stage.

6.9 Evaluation Stage.

6.10 Maintenance/Evolution Stage.

6.11 Existing Software Support.

6.11.1 Application Specifications Filter.

6.11.2 Application Analysis Stage.

6.11.3 Application Development Stage.

6.11.4 Compile-Time and Runtime Stage.

6.11.5 Evaluation Stage.

6.11.6 Maintenance/Evolution Stage.

References. 

Index

商品描述(中文翻譯)

今天關於快速演變的平行與分散計算軟體技術的最完整參考資料
設計、開發和利用能有效支持當今複雜科學和工程應用的多功能計算環境是一項持續的研究挑戰。《平行與分散計算的工具與環境》是當今科學社群中成功計算方法的第一部綜合調查,包括過去技術的總結和未來技術的介紹。

本書涵蓋了多種平行與分散計算的方法,強調性能與成本之間的權衡,作者對當今最有前景的軟體應用進行了徹底的調查,並分析了它們的優勢和限制,包括:

- 網格計算
- 訊息傳遞工具
- 分散共享記憶體工具
- 分散物件計算工具

每種方法論都附有詳細的案例研究。
這是研究人員、教育工作者和實務工作者的重要實用參考資料,為當今科學和工程軟體系統的開發和選擇提供了實用指南。

**目錄:**

**前言。**

**1. 平行與分散計算** (*S. Hariri & M. Parashar*)。

1.1 介紹:基本概念。

1.2 平行與分散系統的承諾與挑戰。

1.2.1 處理技術。

1.2.2 網路技術。

1.2.3 軟體工具與環境。

1.3 分散系統設計框架。

參考文獻與進一步閱讀。

**2. 訊息傳遞工具** (*S. Hariri & I. Ra*)。

2.1 介紹。

2.2 訊息傳遞工具與分散共享記憶體的比較。

2.2.1 分散共享記憶體模型。

2.2.2 訊息傳遞模型。

2.3 訊息傳遞系統:理想特徵。

2.4 訊息傳遞工具的分類。

2.4.1 按實現分類。

2.5 訊息傳遞工具概述。

2.5.1 基於套接字的訊息傳遞。

2.5.2 p4。

2.5.3 平行虛擬機。

2.5.4 訊息傳遞介面。

2.5.5 Nexus。

2.5.6 Madeleine I 和 II。

2.5.7 主動訊息。

2.6 ACS。

2.6.1 多執行緒通訊服務。

2.6.2 數據與控制功能的分離。

2.6.3 可編程通訊、控制和管理服務。

2.6.4 多個通訊介面。

2.6.5 自適應群組通訊服務。

2.7 實驗結果與分析。

2.7.1 實驗環境。

2.7.2 原語的性能。

2.7.3 應用性能基準測試。

2.7.4 自適應方案的性能結果。

2.8 結論。

參考文獻。

**3. 分散共享記憶體工具** (*M. Parashar & S. Chandra*)。

3.1 介紹。

3.2 快取一致性。

3.2.1 基於目錄的快取一致性。

3.3 共享記憶體一致性模型。

3.4 分散記憶體架構。

3.5 分散共享記憶體系統的分類。

3.5.1 基於硬體的DSM系統。

3.5.2 主要基於軟體的頁面基DSM系統。

3.5.3 全部基於軟體的物件基DSM系統。

參考文獻。

**4. 分散物件計算工具** (*R. Raje 等*)。

4.1 介紹。

4.2 基本模型。

4.2.1 RMI。

4.2.2 CORBA。

4.2.3 DCOM。

4.3 範例。

4.3.1 實驗設置。

4.3.2 在RMI、CORBA和DCOM下開發應用。

4.3.3 實驗1:Ping。

4.3.4 實驗2:生產者-消費者問題。

4.3.5 實驗3:數值計算。

4.4 三種範式的比較。

4.4.1 依賴性問題。

4.4.2 實現細節。

4.4.3 架構細節。

4.4.4 對附加功能的支持。

4.4.5 性能比較。

4.5 結論。

參考文獻。

**5. 網格的整體性** (*G. von Laszewski & P. Wagstrom*)。

5.1 介紹。

5.1.1 動機。

5.1.2 促成因素。

5.2 定義。

5.3 多面向的網格架構。

5.3.1 *N*-層網格架構。

5.3.2 基於角色的網格架構。

5.3.3 基於服務的網格架構。

5.3.4 網格挑戰。

5.4 網格管理方面。

5.4.1 管理網格安全性。

5.4.2 管理網格資訊。

5.4.3 管理網格數據。

5.4.4 管理網格執行與資源。

5.4.5 管理網格軟體。

5.4.6 管理網格硬體。

5.5 網格活動。

5.5.1 社群活動。

5.5.2 網格中介軟體。

5.5.3 高吞吐量計算。

5.6 網格應用。

5.6.1 天體物理模擬合作平台。

5.6.2 粒子物理數據網格。

5.6.3 NEESgrid。

5.7 入口網站。

5.7.1 HotPage。

5.7.2 Webflow 和 Gateway。

5.7.3 XCAT。

5.7.4 UNICORE。

5.7.5 JiPANG。

5.7.6 PUNCH。

5.7.7 Access Grid。

5.7.8 商業網格活動。

5.8 結論。

參考文獻。

**6. 平行與分散計算的軟體開發** (*M. Parashar & S. Hariri*)。

6.1 介紹。

6.2 HPC軟體開發中的問題。

6.2.1 平行計算模型。

6.2.2 可攜式應用描述媒介。

6.2.3 平行演算法開發。

6.2.4 程式實現與執行時。

6.2.5 可視化與動畫。

6.2.6 可維護性。

6.2.7 可靠性。

6.2.8 可重用性。

6.3 HPC軟體開發過程。

6.4 股票選擇權定價的平行建模。

6.5 輸入。

6.6 應用分析階段。

6.7 應用開發階段。

6.7.1 演算法開發模組。

6.7.2 系統級映射模組。

6.7.3 機器級映射模組。

6.7.4 實現/編碼模組。

6.7.5 設計評估模組。

6.8 編譯時與執行時階段。

6.9 評估階段。

6.10 維護/演進階段。

6.11 現有軟體支持。

6.11.1 應用規格過濾器。

6.11.2 應用分析階段。

6.11.3 應用開發階段。

6.11.4 編譯時與執行時階段。

6.11.5 評估階段。

6.11.6 維護/演進階段。

參考文獻。

**索引**