ECE 66600 - Parallel Computer Architecture

Credits: 3

Areas of Specialization(s):

Computer Engineering

Counts as:

Normally Offered: Each Spring

Catalog Description:
This course studies parallel computer architectures including architectures of bus-based symmetric multiprocessors and general-interconnection network based multiprocessor systems. Topics include programming models (with emphasis on shared memory and message passing) partitioning, load balancing, scheduling, synchronization, cache coherence and memory consistency models.

Required Text(s):
  1. Parallel Computer Architecture, A Hardware/Software Approach, D. Culler, J. Singh and A. Gupta, Morgan Kaufman, 1998, ISBN No. 1-55860-343-3.

Recommended Text(s): None.

Lecture Outline:

Weeks Topic
1 Introduction to parallel computing, Motivation.
2 Programming models, Programming for performance
1 Workload characteristics, Performance Evaluation
3 Bus-based Symmetric Multiprocessor Design (including snoop-based coherence protocols.)
3 Scalable Multiprocessor Design (including directory-based coherence protocols.)
2 Communication issues, Interconnection networks
1 Hardware/software tradeoffs, Computation/communication tradeoffs
1 Advanced topics
1 Project presentation/discussion