ECE 66600 - Advanced Computer Systems: Parallel Computer Architecture

Course Details

Credits: 3

Areas of Specialization:

  • Computer Engineering

Counts as:

Normally Offered:

Each Spring


On-campus only

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):


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

Assessment Method: