| |
| |
| |
Introduction to Advanced Computer Architecture and Parallel Processing | |
| |
| |
| |
Four Decades of Computing | |
| |
| |
| |
Flynn's Taxonomy of Computer Architecture | |
| |
| |
| |
SIMD Architecture | |
| |
| |
| |
MIMD Architecture | |
| |
| |
| |
Interconnection Networks | |
| |
| |
| |
Chapter Summary | |
| |
| |
Problems | |
| |
| |
References | |
| |
| |
| |
Multiprocessors Interconnection Networks | |
| |
| |
| |
Interconnection Networks Taxonomy | |
| |
| |
| |
Bus-Based Dynamic Interconnection Networks | |
| |
| |
| |
Switch-Based Interconnection Networks | |
| |
| |
| |
Static Interconnection Networks | |
| |
| |
| |
Analysis and Performance Metrics | |
| |
| |
| |
Chapter Summary | |
| |
| |
Problems | |
| |
| |
References | |
| |
| |
| |
Performance Analysis of Multiprocessor Architecture | |
| |
| |
| |
Computational Models | |
| |
| |
| |
An Argument for Parallel Architectures | |
| |
| |
| |
Interconnection Networks Performance Issues | |
| |
| |
| |
Scalability of Parallel Architectures | |
| |
| |
| |
Benchmark Performance | |
| |
| |
| |
Chapter Summary | |
| |
| |
Problems | |
| |
| |
References | |
| |
| |
| |
Shared Memory Architecture | |
| |
| |
| |
Classification of Shared Memory Systems | |
| |
| |
| |
Bus-Based Symmetric Multiprocessors | |
| |
| |
| |
Basic Cache Coherency Methods | |
| |
| |
| |
Snooping Protocols | |
| |
| |
| |
Directory Based Protocols | |
| |
| |
| |
Shared Memory Programming | |
| |
| |
| |
Chapter Summary | |
| |
| |
Problems | |
| |
| |
References | |
| |
| |
| |
Message Passing Architecture | |
| |
| |
| |
Introduction to Message Passing | |
| |
| |
| |
Routing in Message Passing Networks | |
| |
| |
| |
Switching Mechanisms in Message Passing | |
| |
| |
| |
Message Passing Programming Models | |
| |
| |
| |
Processor Support for Message Passing | |
| |
| |
| |
Example Message Passing Architectures | |
| |
| |
| |
Message Passing Versus Shared Memory Architectures | |
| |
| |
| |
Chapter Summary | |
| |
| |
Problems | |
| |
| |
References | |
| |
| |
| |
Abstract Models | |
| |
| |
| |
The PRAM Model and Its Variations | |
| |
| |
| |
Simulating Multiple Accesses on an EREW PRAM | |
| |
| |
| |
Analysis of Parallel Algorithms | |
| |
| |
| |
Computing Sum and All Sums | |
| |
| |
| |
Matrix Multiplication | |
| |
| |
| |
Sorting | |
| |
| |
| |
Message Passing Model | |
| |
| |
| |
Leader Election Problem | |
| |
| |
| |
Leader Election in Synchronous Rings | |
| |
| |
| |
Chapter Summary | |
| |
| |
Problems | |
| |
| |
References | |
| |
| |
| |
Network Computing | |
| |
| |
| |
Computer Networks Basics | |
| |
| |
| |
Client/Server Systems | |
| |
| |
| |
Clusters | |
| |
| |
| |
Interconnection Networks | |
| |
| |
| |
Cluster Examples | |
| |
| |
| |
Grid Computing | |
| |
| |
| |
Chapter Summary | |
| |
| |
Problems | |
| |
| |
References | |
| |
| |
| |
Parallel Programming in the Parallel Virtual Machine | |
| |
| |
| |
PVM Environment and Application Structure | |
| |
| |
| |
Task Creation | |
| |
| |
| |
Task Groups | |
| |
| |
| |
Communication Among Tasks | |
| |
| |
| |
Task Synchronization | |
| |
| |
| |
Reduction Operations | |
| |
| |
| |
Work Assignment | |
| |
| |
| |
Chapter Summary | |
| |
| |
Problems | |
| |
| |
References | |
| |
| |
| |
Message Passing Interface (MPI) | |
| |
| |
| |
Communicators | |
| |
| |
| |
Virtual Topologies | |
| |
| |
| |
Task Communication | |
| |
| |
| |
Synchronization | |
| |
| |
| |
Collective Operations | |
| |
| |
| |
Task Creation | |
| |
| |
| |
One-Sided Communication | |
| |
| |
| |
Chapter Summary | |
| |
| |
Problems | |
| |
| |
References | |
| |
| |
| |
Scheduling and Task Allocation | |
| |
| |
| |
The Scheduling Problem | |
| |
| |
| |
Scheduling DAGs without Considering Communication | |
| |
| |
| |
Communication Models | |
| |
| |
| |
Scheduling DAGs with Communication | |
| |
| |
| |
The NP-Completeness of the Scheduling Problem | |
| |
| |
| |
Heuristic Algorithms | |
| |
| |
| |
Task Allocation | |
| |
| |
| |
Scheduling in Heterogeneous Environments | |
| |
| |
Problems | |
| |
| |
References | |