|
1. Introduction to Advanced Computer Architecture and Parallel Processing. |
|
|
|
1.1 Four Decades of Computing. |
|
|
|
1.2 Flynn’s Taxonomy of Computer Architecture. |
|
|
|
|
|
|
|
|
|
1.5 Interconnection Networks. |
|
|
|
|
|
|
|
|
|
|
|
|
2. Multiprocessors Interconnection Networks. |
|
|
|
2.1 Interconnection Networks Taxonomy. |
|
|
|
2.2 Bus-Based Dynamic Interconnection Networks. |
|
|
|
2.3 Switch-Based Interconnection Networks. |
|
|
|
2.4 Static Interconnection Networks. |
|
|
|
2.5 Analysis and Performance Metrics. |
|
|
|
|
|
|
|
|
|
|
|
|
3. Performance Analysis of Multiprocessor Architecture. |
|
|
|
3.1 Computational Models. |
|
|
|
3.2 An Argument for Parallel Architectures. |
|
|
|
3.3 Interconnection Networks Performance Issues. |
|
|
|
3.4 Scalability of Parallel Architectures. |
|
|
|
3.5 Benchmark Performance. |
|
|
|
|
|
|
|
|
|
|
|
|
4. Shared Memory Architecture. |
|
|
|
4.1 Classification of Shared Memory Systems. |
|
|
|
4.2 Bus-Based Symmetric Multiprocessors. |
|
|
|
4.3 Basic Cache Coherency Methods. |
|
|
|
|
|
|
4.5 Directory Based Protocols. |
|
|
|
4.6 Shared Memory Programming. |
|
|
|
|
|
|
|
|
|
|
|
|
5. Message Passing Architecture. |
|
|
|
5.1 Introduction to Message Passing. |
|
|
|
5.2 Routing in Message Passing Networks. |
|
|
|
5.3 Switching Mechanisms in Message Passing. |
|
|
|
5.4 Message Passing Programming Models. |
|
|
|
5.5 Processor Support for Message Passing. |
|
|
|
5.6 Example Message Passing Architectures. |
|
|
|
5.7 Message Passing Versus Shared Memory Architectures. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6.1 The PRAM Model and Its Variations. |
|
|
|
6.2 Simulating Multiple Accesses on an EREW PRAM. |
|
|
|
6.3 Analysis of Parallel Algorithms. |
|
|
|
6.4 Computing Sum and All Sums. |
|
|
|
6.5 Matrix Multiplication. |
|
|
|
|
|
|
6.7 Message Passing Model. |
|
|
|
6.8 Leader Election Problem. |
|
|
|
6.9 Leader Election in Synchronous Rings. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7.1 Computer Networks Basics. |
|
|
|
7.2 Client/Server Systems. |
|
|
|
|
|
|
7.4 Interconnection Networks. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8. Parallel Programming in the Parallel Virtual Machine. |
|
|
|
8.1 PVM Environment and Application Structure. |
|
|
|
|
|
|
|
|
|
8.4 Communication Among Tasks. |
|
|
|
8.5 Task Synchronization. |
|
|
|
8.6 Reduction Operations. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9. Message Passing Interface (MPI). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9.5 Collective Operations. |
|
|
|
|
|
|
9.7 One-Sided Communication. |
|
|
|
|
|
|
|
|
|
|
|
|
10 Scheduling and Task Allocation. |
|
|
|
10.1 The Scheduling Problem. |
|
|
|
10.2 Scheduling DAGs without Considering Communication. |
|
|
|
10.3 Communication Models. |
|
|
|
10.4 Scheduling DAGs with Communication. |
|
|
|
10.5 The NP-Completeness of the Scheduling Problem. |
|
|
|
10.6 Heuristic Algorithms. |
|
|
|
|
|
|
10.8 Scheduling in Heterogeneous Environments. |
|
|
|
|
|
|
|
|