Professor: William Hesse
Office: Science Center 383
Official Course Description
The performance of single microprocessors is no longer increasing rapidly, and most of the increase in computing power in the future is anticipated to come from multiprocessor and parallel systems. But parallel programming is much more difficult than writing single-threaded sequential programs, and this course will introduce students to the techniques, design strategies, and programming interfaces for creating reliable and efficient parallel programs. Students will program for clusters of workstations using the MPI parallel message passing library, and will write multi-threaded programs for shared-memory multiprocessors. Students will learn methods and tools for predicting and measuring the performance of parallel algorithms. Students taking CS 543 will read and discuss research papers on parallel architectures and algorithms.
"Parallel Programming with MPI", by Peter Pacheco, published by Morgan
"Pthreads Programming: A POSIX Standard for Better Multiprocessing", by Bradford Nichols et. al., published by O'Reilly.
The grading in this class is a numerical score, based on all components of the course. Assignments, and tests will be curved at the time they are graded, and there will be no curve applied to the final class averages. The components are weighted according to this table:
There will be three exams during the semester, and a final exam. You are responsible for all material in the lecture, as well as the reading assignments. Important topics from the reading assignments will be reviewed in lecture.
Assignments must be completed individually, unless noted otherwise. This means all of the obvious things, like no copying of code, etc. Within these guidelines, I strongly encourage students to study and work together, and to discuss assignments. This is a major way to learn more and to get better grades. If you get a significant amount of help from someone else, note this on your submission. This won't affect your grade, it just verifies that you aren't getting excessive help from others and also trying to hide it. If you tell me about the help you are getting, then you are not cheating. I may tell you to get less help in the future, but you will not be subject to any penalties.
Class Participation includes presenting research papers you have been assigned to present (for graduate students), and participating in all discussions of research papers.
Late work is subject to a penalty of 20% per week.
Author: William Hesse
Last Modified: Mar 15, 2007