| |
| |
| |
| |
| |
Preface | |
| |
| |
| |
Programming Environments and Development Tools | |
| |
| |
| |
Parallel Programming Models and Paradigms | |
| |
| |
| |
Introduction | |
| |
| |
| |
A Cluster Computer and its Architecture | |
| |
| |
| |
Parallel Applications and Their Development | |
| |
| |
| |
Code Granularity and Levels of Parallelism | |
| |
| |
| |
Parallel Programming Models and Tools | |
| |
| |
| |
Methodical Design of Parallel Algorithms | |
| |
| |
| |
Parallel Programming Paradigms | |
| |
| |
| |
Programming Skeletons and Templates | |
| |
| |
| |
Conclusions | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Parallel Programming Languages and Environments | |
| |
| |
| |
Introduction | |
| |
| |
| |
Early Mechanisms | |
| |
| |
| |
Shared Memory Environments | |
| |
| |
| |
Distributed Memory Environments | |
| |
| |
| |
Parallel Declarative Environments | |
| |
| |
| |
Summary | |
| |
| |
| |
Bibliography | |
| |
| |
| |
MPI and PVM Programming | |
| |
| |
| |
Introduction | |
| |
| |
| |
Comparison of MPI and PVM | |
| |
| |
| |
The All Pairs Shortest Path Problem | |
| |
| |
| |
The MPI Programming Environment | |
| |
| |
| |
The PVM Programming Environment | |
| |
| |
| |
Porting Hints | |
| |
| |
| |
Summary | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Linking Message-Passing Environments | |
| |
| |
| |
Interoperability Between Message-Passing Interfaces | |
| |
| |
| |
An Overview of the PLUS Library | |
| |
| |
| |
System Architecture | |
| |
| |
| |
Adding New Message-Passing Environments | |
| |
| |
| |
Performance Results | |
| |
| |
| |
Related Work | |
| |
| |
| |
Summary | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Active Objects | |
| |
| |
| |
Objects in Cluster-Based Parallel Systems | |
| |
| |
| |
Active Versus Passive Objects | |
| |
| |
| |
Objects and Atomicity | |
| |
| |
| |
BaLinda K Objects | |
| |
| |
| |
Speculative Processing | |
| |
| |
| |
Summary | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Using Scoped Behavior to Optimize Data Sharing Idioms | |
| |
| |
| |
Introduction | |
| |
| |
| |
Motivation: Data Sharing Idioms | |
| |
| |
| |
Aurora: A Distributed Shared Data System | |
| |
| |
| |
Implementation Overview | |
| |
| |
| |
Experience with Parallel Programs | |
| |
| |
| |
Discussion and Related Work | |
| |
| |
| |
Concluding Remarks | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Component-Based Development Approach | |
| |
| |
| |
Introduction | |
| |
| |
| |
Component-Based Application Development | |
| |
| |
| |
Advanced Features | |
| |
| |
| |
Reusing Simulation Software in a Distributed Setting | |
| |
| |
| |
Comparison Between Approaches | |
| |
| |
| |
Concluding Remarks | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Hypercomputing with LiPS | |
| |
| |
| |
Generative Communication | |
| |
| |
| |
Using LiPS | |
| |
| |
| |
The LiPS Runtime Systems | |
| |
| |
| |
The LiPS Development System | |
| |
| |
| |
Bibliography | |
| |
| |
| |
An Efficient Tuple Space Programming Environment | |
| |
| |
| |
Introduction | |
| |
| |
| |
Tuple Space Programming | |
| |
| |
| |
Compilation Environment | |
| |
| |
| |
Run-time Environment | |
| |
| |
| |
Extensions | |
| |
| |
| |
Conclusions | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Debugging Parallelized Code | |
| |
| |
| |
Introduction | |
| |
| |
| |
Automatic Parallelization | |
| |
| |
| |
The Debugging Problem | |
| |
| |
| |
Debugging with Code Liberation | |
| |
| |
| |
Experimental Results | |
| |
| |
| |
Conclusions | |
| |
| |
| |
Bibliography | |
| |
| |
| |
WebOS: Operating System Services for Wide-Area Applications | |
| |
| |
| |
Introduction | |
| |
| |
| |
WebOS Overview | |
| |
| |
| |
Naming | |
| |
| |
| |
Persistent Shared State | |
| |
| |
| |
Security and Authentication | |
| |
| |
| |
Process Control | |
| |
| |
| |
Rent-A-Server | |
| |
| |
| |
Related Work | |
| |
| |
| |
Conclusions | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Java for High Performance Computing | |
| |
| |
| |
Distributed-Object Computing | |
| |
| |
| |
Introduction | |
| |
| |
| |
CORBA | |
| |
| |
| |
Java RMI | |
| |
| |
| |
DCOM | |
| |
| |
| |
Voyager | |
| |
| |
| |
A Simple Performance Measurement | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Java and Different Flavors of Parallel Programming Models | |
| |
| |
| |
Introduction | |
| |
| |
| |
Java Threads--Built-in Support for Parallelism and Concurrency | |
| |
| |
| |
Parallel Programming Models | |
| |
| |
| |
Summary | |
| |
| |
| |
Bibliography | |
| |
| |
| |
The HPspmd Model and its Java Binding | |
| |
| |
| |
Introduction | |
| |
| |
| |
Java Language Binding | |
| |
| |
| |
Java Packages for HPspmd Programming | |
| |
| |
| |
Programming Examples | |
| |
| |
| |
Issues in the Language Design | |
| |
| |
| |
Projects in Progress | |
| |
| |
| |
Summary | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Web-Based Parallel Computing with Java | |
| |
| |
| |
Introduction | |
| |
| |
| |
Web-Based Parallel Computing | |
| |
| |
| |
Comparing Cluster with Web-Based Parallel Computing | |
| |
| |
| |
Examples of Internet-Based Parallel Computing | |
| |
| |
| |
Can Java be Used for Web-Based Parallel Computing? | |
| |
| |
| |
Problems to be Solved in Web-Based Parallel Computing | |
| |
| |
| |
A Case Study: The JET Platform | |
| |
| |
| |
Some Performance Results | |
| |
| |
| |
Conclusions | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Algorithms and Applications | |
| |
| |
| |
Object-Oriented Implementation of Parallel Genetic Algorithms | |
| |
| |
| |
Introduction | |
| |
| |
| |
Short Overview of GA Systems | |
| |
| |
| |
Object-Oriented Approach to PGAs | |
| |
| |
| |
Classes Representing Individuals | |
| |
| |
| |
Local Genetic Operations | |
| |
| |
| |
Island Model | |
| |
| |
| |
Global Population Model | |
| |
| |
| |
Load Balancing | |
| |
| |
| |
File and I/O Operations | |
| |
| |
| |
PGA Application Framework | |
| |
| |
| |
Sample Results | |
| |
| |
| |
Concluding Remarks | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Application-Specific Load Balancing on Heterogeneous Systems | |
| |
| |
| |
Introduction | |
| |
| |
| |
System Overview | |
| |
| |
| |
Implementation of a Complex FDTD Equation | |
| |
| |
| |
Load Balancing | |
| |
| |
| |
Analysis | |
| |
| |
| |
Conclusions | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Time Management in Parallel Simulation | |
| |
| |
| |
Introduction | |
| |
| |
| |
Major Issues of Parallel Simulation | |
| |
| |
| |
Principles of Parallel Simulation | |
| |
| |
| |
Conservative Synchronization Protocols | |
| |
| |
| |
Conclusion | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Hardware System Simulation | |
| |
| |
| |
Introduction | |
| |
| |
| |
NEPSi | |
| |
| |
| |
Discussion | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Real-Time Resource Management Middleware: Open Systems and Applications | |
| |
| |
| |
Introduction | |
| |
| |
| |
Architecture of Dynamic QoS Management Middleware | |
| |
| |
| |
Adaptive Resource Allocation | |
| |
| |
| |
Experiences with the Adaptive Resource Management Services | |
| |
| |
| |
Conclusions | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Data Placement in Shared-Nothing Database Systems | |
| |
| |
| |
Introduction | |
| |
| |
| |
Data Placement | |
| |
| |
| |
Declustering | |
| |
| |
| |
Placement | |
| |
| |
| |
Re-Distribution | |
| |
| |
| |
Dynamic Re-Organization | |
| |
| |
| |
Summary | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Parallel Inference with Very Large Knowledge Bases | |
| |
| |
| |
Introduction | |
| |
| |
| |
Shruti: A Structured Connectionist Reasoning System | |
| |
| |
| |
Mapping Shruti onto Parallel Machines | |
| |
| |
| |
Shruti on the CM-5--Design and Implementation | |
| |
| |
| |
Shruti-CM5--A Mathematical Analysis | |
| |
| |
| |
Shruti-CM5-Experiments with Large Knowledge Bases | |
| |
| |
| |
Conclusion | |
| |
| |
| |
Bibliography | |
| |
| |
| |
MaRT: Lazy Evaluation for Parallel Ray Tracing | |
| |
| |
| |
Introduction | |
| |
| |
| |
On Ray Tracing Parallelization Techniques | |
| |
| |
| |
MaRT: a Lazy Ray Tracer | |
| |
| |
| |
Parallel MaRT | |
| |
| |
| |
Concluding Remarks | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Fast Content-Based Image Retrieval | |
| |
| |
| |
Introduction | |
| |
| |
| |
Image Feature Extraction | |
| |
| |
| |
Dynamic Image Indexing | |
| |
| |
| |
Image Similarity Measurement | |
| |
| |
| |
Image Searching | |
| |
| |
| |
Parallel Implementation | |
| |
| |
| |
Experimental Results | |
| |
| |
| |
Parallel Image Feature Extraction - PVM Vs. DSM | |
| |
| |
| |
Conclusion | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Climate Ocean Modeling | |
| |
| |
| |
Introduction | |
| |
| |
| |
Model Description | |
| |
| |
| |
Parallel Partition on Irregular Geometries | |
| |
| |
| |
Ocean Modeling on Various Systems | |
| |
| |
| |
Scientific Results | |
| |
| |
| |
Summary | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Computational Electromagnetics | |
| |
| |
| |
Introduction | |
| |
| |
| |
Physical Optics Method | |
| |
| |
| |
Finite-Difference Time-Domain Method | |
| |
| |
| |
Finite-Element Integral-Equation Coupled Method | |
| |
| |
| |
Conclusions | |
| |
| |
| |
Bibliography | |
| |
| |
| |
CFD Simulation: A Case Study in Software Engineering | |
| |
| |
| |
Introduction | |
| |
| |
| |
TfC - a State-of-the-Art Industrial CFD Package | |
| |
| |
| |
Requirements for Parallel CFD Simulation | |
| |
| |
| |
Design and Implementation of ParTfC | |
| |
| |
| |
Object Oriented Design of Scientific Software | |
| |
| |
| |
Productive Use of Parallel Scientific Computing Software | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Quantum Reactive Scattering Calculations | |
| |
| |
| |
Introduction | |
| |
| |
| |
The Many Body Problem: Description, Decomposition, and Solutions | |
| |
| |
| |
Parallelization Strategies | |
| |
| |
| |
Parallel Implementations on CRAY T3E | |
| |
| |
| |
Parallel Implemention on SGI Origin 2000 | |
| |
| |
| |
Parallel Implementation on a Metacomputer | |
| |
| |
| |
Concluding Remarks | |
| |
| |
| |
Bibliography | |
| |
| |
| |
Biomedical Applications Modeling | |
| |
| |
| |
Introduction | |
| |
| |
| |
The Chromosome Reconstruction Problem | |
| |
| |
| |
PVM Algorithms for Chromosome Reconstruction | |
| |
| |
| |
Heart Rate Variability and Kolmogorov Entropy | |
| |
| |
| |
A Parallel Algorithm for K[subscript 2] Entropy Computation using PVM | |
| |
| |
| |
Optimal Scaling Region Determination Algorithm | |
| |
| |
| |
Experimental Results | |
| |
| |
| |
Conclusions | |
| |
| |
| |
Bibliography | |
| |
| |
A Glossary | |
| |
| |
Index | |