This course examines the basic principles and methodlogies used in the design and evaluation of parallel computer architectures. Fundamental concepts and principles of parallel processing will be stressed and their relation with the underlying program execution and architecture models. Topics will include basic parallel terminology, pipelining and vector processing, intstruction level parallelism (ILP) and thread level parallelism (TLP) architectures, multiprocessor architectures and high speed interconnection networks, memory consistency models and cache coherence issues, fine grain parallelism and multithreaded architectures, plus the role of optimizing and parallelizing compilers.
Basic knowledge of computer organization and systems is required. Knowledge of programming languages and compilers is also useful.
- Lecture Classes -- 8:00 AM to 9:15 AM, Monday and Wednesday in Dupont 140
- Homework Assignments issued every two weeks
- Two Quizzes: One after Topic 3 and one during final week
| Assignment and Labs: | 33% | Quiz One: | 13% |
| Quiz Two: | 20% | Final Project: | 33% |
| Participation: | 1% | ||
Undergraduate students who are interested in the subject are encouraged to see the instructor for permission.
|
Instructor: Joseph B. Manzano |
Teaching Assistant: Tom St. John |