| WEEK |
DAYS |
TOPICS |
| 1 |
Feb 12 |
Demand for Computational
Speed,
Preliminaries |
| 2 |
Feb 19 |
Types of Parallel Computers |
| 3 |
Feb 26 |
Interconnection Networks,
Embeddings,
Communication Methods |
| 4 |
Mar 5 |
Networked Computers as a
Multicomputer Platform |
| 5 |
Mar 12 |
Speedup, Efficiency,
Scalability, Amdahl's and Gustafson's Laws |
| 6 |
Mar 19 |
Basics of
Message Passing Programming & PVM |
| 7 |
Mar 26 |
Evaluating Parallel Programs:
Parallel Execution Time, Time Complexity, Debugging and Evaluating
Parallel Programs |
| 8 |
Apr 2 |
* Student Presentations |
| 9 |
Apr 9 |
Embarrassingly Parallel
Computations:
Geometrical Transformation of Images, Mandelbrot Set, Monte Carlo Methods,
Parallel Random Number Generation |
| 10 |
Apr 16 |
Partitioning
* Student Representations |
| 11 |
Apr 23 |
Divide and Conquer Examples:
Sorting Using Bucket Sort, Numerical Integration, Adaptive Quadrature,
N-Body Problem |
| 12 |
Apr 30 |
Pipelined
Computations,
Examples: Adding Numbers, Sorting Numbers, Prime Number Generation,
Solving a System of Linear Equations |
| 13 |
May 6 |
Midterm 1 |
| May 7 |
Synchronization, Counter
Implementation,
Synchronized Computations |
| 14 |
May 14 |
Synchronous Iteration Program
Examples |
| 15 |
May 21 |
Load
Balancing, Dynamic Load
balancing,
Distributed Termination Detection Algorithms, Examples |
| 16 |
May 28 |
Programming with Shared Memory,
Shared Memory Multiprocessors, Constructs for Specifying Parallelism,
Sharing Data
Program Examples. |
| May 28 |
Midterm 2 |
| |
June |
Final Exam |