Scientific Parallel Computing


Course Description

We will focus on the use of multiple processors cooperating to solve a common task. We will study issues related to this general problem in the areas of

The course will involve programming at least one parallel computer. Possibilities include one of the clusters of workstations connected by high-speed networks currently at the University of Chicago.

Students will be required to implement basic algorithms, including both non-numerical algorithms (e.g., sorting) and numerical algorithms (e.g., Gaussian elimination). There will also be written assignments emphasizing the fundamental concepts of parallel computing.

Students will be required to complete a term project which will require in-class presentations and a final written report.

The course will focus on the state of the art in parallel algorithms for scientific computing. Specific topics will be chosen based on the interests of the students in the class. Students with experience in scientific computing will benefit the most from the class. However, general principles of parallel computing will be emphasized, and all students are encouraged to discuss the course with the instructor.