Parallel Computer Achitectures

ECOM 6305: Parallel Computer Architectures (PCAs)

Dept. of Computer Engineering

Islamic University of Gaza

Fall 2010-2011

Syllabus

Course Website:

http://moodle.iugaza.edu.ps

Instructor

Mohammad A. Mikki 

Professor of Computer Engineering

Room: IT 216

ECE Department , Faculty of Engineering, IUG, Gaza, Palestine

mmikki@iugaza.edu.ps

http://site.iugaza.edu.ps/mmikki/

Tel.:  +970-8-2860700  Ext. 2872

Mobile: +970-0599-727187

Fax: +970-8-2860800

Text

  Parallel Computer Architecture:   a Hardware/Software Approach 
David E. Culler, University of California, Berkeley;  
Jaswinder Pal Singh, Princeton University;  
with Anoop Gupta, Stanford University  

 

Morgan Kaufmann Publishers

 

Course Objective

Students will gain fundamental knowledge and understanding of principles and practice in parallel computer architecture and computing, emphasizing both hardware and software challenges and the interactions between them, as well as exposure to research challenges in this field, through class lectures and discussions, reading assignments, homework, and a major research project.

 

Prerequisites by Topic

Fundamentals of computer design; performance and cost; instruction set principles, examples, and measurements; basic and advanced pipelining; superscalar and VLIW instruction-level parallelism; memory-hierarchy design; storage systems; and interconnect technology.

Suggested Reference Texts

  • J.L. Hennessy and D.A. Patterson, Computer Architecture: A Quantitative Approach, 4th Edition, Morgan Kaufmann Publishers Inc., San Francisco, CA, 2006, ISBN 978-0123704900.
  • P.S. Pacheco, Parallel Programming with MPI, Morgan Kaufmann Publishers Inc., San Francisco, CA, 1997, ISBN 1-55860-339-5.
  • T. El-Ghazawi, W. Carlson, T. Sterling, and K. Yelik, UPC: Distributed Shared Memory Programming, Wiley Publishers, 2005, ISBN 978-0-471-22048-0.
  • J.M. May, Parallel I/O for High Performance Computing, Morgan Kaufmann Publishers Inc., San Francisco, CA, 2001, ISBN 1-55860-664-5.
  • K. Hwang and Z. Xu, Scalable Parallel Computing: Technology, Architecture, Programming, WCB/McGraw-Hill, 1998, ISBN 0070317984.
  • A.E. Koniges (ed), Industrial Strength Parallel Computing, Morgan Kaufmann Publishers Inc., San Francisco, CA, 2000, ISBN 1-55860-540-1.
  • G.R. Andrews, Multithreaded, Parallel, and Distributed Programming, Addison-Wesley, Reading, Mass., 2000, ISBN 0-201-35752-6.

Course Description

This course provides an in-depth study of the design, engineering, and evaluation of modern  parallel computers.  It begins with an overview of the field focusing on the convergence of many diverse architectural approaches around the communication architecture. It extracts fundamental design issues: naming, replication, synchronization, latency, overhead, and bandwidth and explores these across the spectrum of modern machines.  A sound basis is built up in workload-driven evaluation, with a brief overview of parallel programming.  It studies small-scale shared memory multiprocessors in some detail to lay groundwork for understanding large-scale designs.  It then examines scalable multiprocessors thoroughly, including realizing programming models via network transactions, directory-based cache coherence, interconnection network design, software-based virtual shared memory, COMA techniques, and latency tolerance through multithreading and other means. Lectures will be interactive, drawing on readings from a text – Parallel Computer Architecture:  a Hardware/Software Approach - There will be written assignments and some experience with real machines to secure understanding of the material. There will be a term project consisting of a conference-paper scale research study.

 

Topics I intend to cover, in no particular order 

 

Related Websites

 

 

Schedule

Week Lecture Topic Tasks
1

 

 

1 Chapter 1 in Culler & Singh (Introduction)  
2 Chapter 1 in Culler & Singh (Introduction)  
2

 

 

3 Chapter 1 in Culler & Singh (Introduction) -Quiz #1 on L1 &L2
4 Chapter 1 in Culler & Singh (Introduction) -Research project proposals issued

 

 

3

 

 

5 Chapter 2 in Culler & Singh (Parallel Programs) - Quiz #2 on L3 & L4
6 Chapter 2 in Culler & Singh (Parallel Programs)  
4

 

 

7 Chapter 2 in Culler & Singh (Parallel Programs) - Research project proposals due

 

 

8 Chapter 2 in Culler & Singh (Parallel Programs) - MPI assignment # 1 issued

 

- Research project proposals Approval

-Quiz #3 on L5, L6 & L7

5

 

 

9 Chapter 3 in Culler & Singh (Programming for Performance)  
10 Chapter 3 in Culler & Singh (Programming for Performance)  
6 11 Chapter 3 in Culler & Singh (Programming for Performance) -Quiz #4 on L9 & L10

 

-MPI assignment # 1 due

12 Chapter 3 in Culler & Singh (Programming for Performance)  
7 13 Chapter 5 in Culler & Singh (Shared-Memory Multiprocessors) -MPI assignment # 2 issued

 

-Quiz #5 on L11 & L12

14 Chapter 5 in Culler & Singh (Shared-Memory Multiprocessors)  
8

 

 

15 Chapter 5 in Culler & Singh (Shared-Memory Multiprocessors) -Quiz #6 on L13 & L14
16 Chapter 5 in Culler & Singh (Shared-Memory Multiprocessors)  
9 17 Chapter 7 in Culler & Singh (Scalable Multiprocessors) -MPI assignment # 2 due

 

-Quiz #7 on L15 & L16

18 Chapter 7 in Culler & Singh (Scalable Multiprocessors)  
10

 

 

19 Chapter 7 in Culler & Singh (Scalable Multiprocessors)  

 

-Quiz #8 on L17 & L18

20 Chapter 7 in Culler & Singh (Scalable Multiprocessors) -MPI assignment # 3 issued
11 21 Chapter 8 in Culler & Singh (Directory-based Cache Coherence) -Quiz #9 on L19 & L20
  22 Chapter 8 in Culler & Singh (Directory-based Cache Coherence) -Research project intermediate report due

 

 

12 23   - Research project intermediate report presentations

 

-MPI assignment # 3 due

  24   - Research project intermediate report presentations

 

- MPI assignment # 4 issued

13 25 Chapter 8 in Culler & Singh (Directory-based Cache Coherence) - Quiz #10 on L21 & L22

 

 

  26 Chapter 8 in Culler & Singh (Directory-based Cache Coherence)  
14 27 Chapter 10 in Culler & Singh (Interconnection Network Design)  
28 Chapter 10 in Culler & Singh (Interconnection Network Design) -MPI assignment # 4 due
15 29   -Final research project report due

 

 

 
30   -One hour exam
16 31   -Final research project presentations
32   -Final research project presentations

Evaluation

Quizzes (at most 10) 15%
MPI programming assignments 15%
Term research project 40%
One hour exam 20%
Contribution to collaborative tools through moodle 10%