Time and Place: 3rd period (9:35-10:25am) MWF, 202 NEB.
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: Topics covered in EEL5764, which include: 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. More information for graduate students without the formal prequisites that may be interested in this course, such as engineering students outside of ECE and CISE, can be found here.
Required Textbook: D.E. Culler and J.P. Singh, Parallel Computer Architecture: A Hardware/Software Approach, Morgan Kaufmann Publishers Inc., San Francisco, CA, 1999, ISBN 1-55860-343-3. Click here and here to access errata for the first and second printings of this textbook, respectively. Readings from the textbook will be supplemented by readings from selected technical publications.
Professor:
General Topics:
Project: A major research project will be assigned in order to explore fundamental issues in parallel computer architectures, systems, and applications. This project will span most of the semester, and it will provide students the opportunity to more deeply explore fundamental issues in PCA. Students will form teams of two or three persons and propose then conduct an experimental research project on a topic in PCA of their choosing (subject to professor approval). Each project will involve elements of both hardware and software in parallel computing, although the balance need not necessarily be 50-50. Facilities and tools to support these projects will be provided as needed and available via special resources in the professor's research laboratory. The culmination of each project will be a clear and concise technical report suitable for potential publication discussing project concepts, development, experiments, results, and analyses. The most important outcome of each project will be the research results that are achieved, analyses rendered, and conclusions drawn with demonstrable insight.
POLICIES
Grading Policy:
Attendance Policy: A significant portion of the lectures in this course will be complementary but not duplicative of the textbook. Therefore, students are strongly advised to attend all lectures and take good notes. Tardiness for lectures is disruptive and thus NOT permitted.
Conduct Policy: We, the members of the University of Florida community, pledge to hold ourselves and our peers to the highest standards of honesty and integrity. All assignments are to be considered an individual effort unless otherwise specified by the instructor.
Academic Honesty: Your instructor in this course requires the utmost degree of academic honesty and thus violations will be handled most seriously. All students admitted to the University of Florida have signed a statement of academic honesty committing themselves to be honest in all academic work and understanding that failure to comply with this commitment will result in disciplinary action. This statement is a reminder to uphold your obligation as a student at the University of Florida and to be honest in all work submitted and exams taken in this class and all others. If at any time questions arise regarding what is or is not appropriate, the student should ask the instructor for guidance or clarification before proceeding.
Accommodation: From the university regarding accommodations for students with disabilities: "Students requesting classroom accommodation must first register with the Dean of Students Office. The Dean of Students Office will provide documentation to the student who must then provide this documentation to the Instructor when requesting accommodation."
| ASSIGNED | DESCRIPTION | MATERIALS |
| 01/07/09 Wednesday | Chapter 1 in Culler & Singh (Introduction) | Lecture notes |
| 01/21/09 Wednesday | Short Course on MPI (c/o Adam Jacobs) | Lecture notes, Tutorials on web |
| 01/23/09 Friday | Chapter 2 in Culler & Singh (Parallel Programs) | Lecture notes |
| 01/30/09 Friday | Short Course on UPC (c/o Max Billingsley) | Lecture notes, Tutorials on web |
| 02/04/09 Wednesday | Chapter 3 in Culler & Singh (Programming for Performance) | Lecture notes |
| 02/04/09 Wednesday | Tutorial on SHMEM (c/o Hung-Hsun Su) | Lecture notes |
| 02/13/09 Friday | Overview of BSP, LogP, RAT (c/o Brian Holland) | Lecture notes, RAT paper |
| 02/18/09 Wednesday | Chapter 4 in Culler & Singh (Workload-Driven Evaluation) | Lecture notes |
| 03/02/09 Monday | Formulation Modeling (c/o Casey Reardon) | Lecture notes |
| 03/02/09 Monday | Chapter 5 in Culler & Singh (Shared-Memory Multiprocessors) & Section 6.1 | Lecture notes |
| 03/06/09 Friday | Parallel Performance Wizard (c/o Max Billingsley) | Lecture notes |
| 03/16/09 Monday | Nonconventional PCA Devices (c/o Vikas Aggarwal) | Lecture notes |
| 03/30/09 Monday | Parallel Scientific Computing (c/o Greg Cieslewski) | Lecture notes |
| 04/01/09 Wednesday | Chapter 7 in Culler & Singh (Scalable Multiprocessors) | Lecture notes |
| 04/06/09 Monday | Chapter 8 in Culler & Singh (Directory-based Cache Coherence) | Lecture notes |
| 04/10/08 Friday | Chapter 10 in Culler & Singh (Interconnection Network Design) | Lecture notes |
| NAME | ASSIGNED | DUE | DESCRIPTION |
| HW #1 | 01/07/09 Wednesday | 01/16/09 Friday | Carefully survey the literature and then write a 4-6 page technical paper (single-spaced, 11-point font) in your own words that provides a concise history of "supercomputing" (a.k.a. high-performance computing or HPC). Find and cite at least five scholarly references using the same citation format as that used in our textbook. Based upon the material that you analyze, render conclusions about the future of computing and supercomputing in your opinion. |
| HW #2 | 01/26/09 Monday | 02/04/09 Wednesday | MPI assignment (see handout); Wiki with access info for PCA students |
| HW #3 | 02/04/09 Wednesday | 02/13/09 Friday | UPC assignment (see handout); Wiki with UPC info for PCA students |
| Class Project | 02/06/09 Friday | 02/23/09 Monday (proposal); 04/29/09 Wednesday (report) | PCA project assignment (see handout) |
| Practice Set #1 | 02/20/09 Friday | N/A | Exercises 1.3, 1.7, 1.8, 1.12, 1.13, 1.16, 2.3a, 2.5, 2.7a, 3.2, 3.3, 3.4, 3.13, 4.5, 4.6 |
| Practice Set #2 | 04/06/09 Monday | N/A | Exercises 5.1, 5.3 (note: "data 2 cycles after" should be "data 2 bus cycles after"), 5.4, 5.6ab, 5.11, 5.25, 5.27, 7.1-7.4, 7.6, 7.7, 7.13, 8.1, 8.3, 8.4, 8.7, 8.8, 8.10, 8.11, 10.1, 10.2, and 10.9. |
| DAY AND TIME | TYPE |
| 02/27/09 Friday, in-class exam | Exam #1 |
| 04/17/09 Friday, in-class exam | Exam #2 |
Introduction
to Parallel Computing by LLNL
HCS Lab, CHREC Center
University HPC
Center
National Lambda Rail
and Florida Lambda
Rail