CS 635: Parallel Computer Architecture

PURPOSE

This is a first course in parallel architecture, with an emphasis on the description and evaluation of commercially available machines. Some historically important machines will also be considered, primarily for the sake of the lessons that can be learned about why they failed to survive. The intractable problems of scientific computing are the prime motivating forces for the intense focus of manpower and money on the development of parallel computing in the 1990's under the federal High Performance Computing and Communication initiative. Therefore, the course will look at parallel architectures from the point of view of the HPCC scientist, and evaluate their usefulness accordingly.

INTENDED AUDIENCE

This course is designed for students with some prior (serial) architecture course experience. However, students (including those from applications departments) lacking an earlier architecture course, but possessing good computational aptitude and prior programming experience, are welcome to enroll.

TEXTBOOK/READINGS

There is one required text: Advanced Computer Architecture: Parallelism, Scalability, Programmability by K. Hwang (McGraw-Hill, 1993). Planned coverage includes the entire text except for chapters 5, 6, and 8. Several supplements from Netlib and the World Wide Web will be distributed electronically.

TOPICS:


0. Parallelization Metrics
1. Performance Metrics
2. The ``Science'' of Benchmarking
3. Scalability and the ``Laws'' of Amdahl and Gustavson
4. Computational Similarity
5. Models of Computation
6. Parallelization Paradigms
7. Network Characteristics and Topology
8. Communication Calculus and Templates
9. Pipelining and Parallelism
10. Processor Types
11. Memory Hierarchy
12. Cache Coherence Protocols
13. Latency-hiding Mechanisms
14. Routing Algorithms
15. High Performance Fortran (HPF)
16. The Message Passing Interface (MPI)

wahab@duke.ncsl.nist.gov
Tue Apr 23 10:50:19 EDT 1996