ECE 669 Parallel Computer Architecture

University of Massachusetts

Welcome to the 669 Course Home Page! This serves as the syllabus for the course. The URL is: /ece/tessier/courses/669/index.html

Instructor: Russell Tessier, Associate Professor, Department of Electrical and Computer Engineering, tel: 413-545-0160, email: tessier@ecs.umass.edu

TA: David Howland, dhowland@ecs.umass.edu, (413) 545-0370


Course Description

Parallel processing has matured to the point where it has begun to make a considerable impact on the computer marketplace. This course seeks to equip students to specify, design, and evaluate parallel architectures for special-purpose and general-purpose applications. The course will devote special attention to compiler techniques for parallel machines. The course will begin with discussions of several typical numeric and combinatorial applications and focus on one or more of them to concretely illustrate the tradeoffs in application implementation. Students will then be shown how to classify parallel machines, with a discussion of the issues in controlling and programming in each class. Then follows a discussion of general-purpose multiprocessors. This includes a detailed study of interconnection networks such as hypercube, butterfly, and mesh. We will then perform a detailed study of cache coherency procedures for multiprocessors. The course will be closed with an analysis of compiler technology for parallel computers including loop tiling, data partitioning, processor allocation, and data alignment. Students will be provided with readings from the technical literature, to expose them to the state-of-the-art, and also to train them in the art of reading papers from research and development journals. (3 credits)

Prerequisites: Any introductory computer architecture class

Grading: 6 Homeworks (30%), Mid-term (35%), and Final Exam/Project (35%).

Textbook (Required): Parallel Computer Architectures: A Hardware/Software Approach , by David Culler, Jaswinder Pal Singh, and Anoop Gupta, Morgan-Kaufman, 1999, ISBN: 1-558-603433. Textbook Errata

Honesty Policy: Consultation with fellow students is encouraged, especially on design issues. However, directly copying another student's work defeats the purpose of the assignments and is an honor code violation.

Computer Requirements: Students will be doing labs using CAD software on UNIX workstations. Access to an on or off-campus SparcStation running SunOs/Solaris will be required. VIP students may choose to access computing resources via an ECS account.

Reference Material: Research papers will be suggested reading to help stimulate discussion.


Schedule (this WILL change throughout the initial semester )
 

Event 

Fall 04

Topics

Notes

Reading 

Homework 

Lecture 1

Sept 8 

Course Introduction 

(PPT ) (PDF )

Culler, 1.1, 1.2

 

Lecture 2

Sept 13 

Architectural Perspective 

(PPT ) (PDF )

Culler, 1.2

 

Lecture 3

Sept 15 

Design Issues 

(PPT ) (PDF )

Culler, 1.3

HW 1

Lecture 4

Sept 20 

Parallel Applications 

(PPT ) (PDF )

Culler, 2.1, 2.2

 

Lecture 5

Sept 22 

Grid Computations 

(PPT ) (PDF )

Culler, 2.3.1-2.3.3

HW 2

Lecture 6

Sept 27 

Programming for Performance 

(PPT ) (PDF )

Culler, 3.1, 3.3.1

 

Lecture 7

Sept 29 

Resource Balancing I 

(PPT ) (PDF )

Nussbaum paper , Kung paper

 

Lecture 8

Oct 4 

Resource Balancing II 

no notes

Culler 4.1, 4.3

 

Lecture 9

Oct 6 

Workload Evaluation 

(PPT ) (PDF )

Culler 4.1, 4.3

HW 3

Lecture 10

Oct 11 

Graph Applications 

(PPT ) (PDF )

Little paper

 

Lecture 11

Oct 13 

Static Routing Architectures 

(PPT ) (PDF )

NuMesh paper

 

Lecture 12

Oct 18 

Interconnection Network Performance 

(PPT ) (PDF )

Agarwal paper , Dally paper

 

Lecture 13

Oct 20 

Shared Memory Multiprocessors I 

(PPT ) (PDF )

Culler 5.1, 5.2

HW 4

Lecture 14

Oct 25 

Shared Memory Multiprocessors II 

no notes

Culler 5.1, 5.2

 

Lecture 15

Oct 27 

Mid-Term Review 

(PPT ) (PDF )

 

 

Lecture 16

Nov 1 

Interconnection Topologies 

(PPT ) (PDF )

Culler 10.4

 

Lecture 17

Nov 3 

Memory Systems 

(PPT ) (PDF )

Alewife paper

HW 5

Lecture 18

Nov 10 

Scalable Parallel Caches 

(PPT ) (PDF )

Culler 8.1, 8.2

 

Lecture 19

Nov 15 

Processor Design 

(PPT ) (PDF )

Kurihara paper

 

Lecture 20

Nov 17 

Evaluation and Message Passing 

(PPT ) (PDF )

Culler 7.2.3-7.2.5

HW 6

Lecture 21

Nov 22 

Routing 

(PPT ) (PDF )

Culler 10.6-10.8

 

Lecture 22

Nov 24 

Guest Lecture on Interconnect: Prof. W. Burleson 

(PPT ) (PDF )

Venkatraman paper

 

Lecture 23

Nov 29 

Parallel Compilation 

(PPT ) (PDF )

Babb paper

 

Lecture 24

Dec 1 

Adaptive System on a Chip 

(PPT ) (PDF )

Liang paper

 

Lecture 25

Dec 6 

Final Exam Review 

(PPT ) (PDF )

 

 

Lecture 26

Dec 8 

Reconfigurable Computing 

(PPT ) (PDF )

Tessier paper

 

Lecture 27

Dec 13 

Course Wrap Up 

(PPT ) (PDF )

Culler 12.1, 12.2

 


Other information


tessier@ecs.umass.edu (Last Update: 5/10/04)