|
Spring 2006: Parallel and Concurrent Computing, CS 5334
Course Title and Number: Parallel and Concurrent Computing, CS 5334
Instructor: Dr. Michela Taufer
Time: Tuesday and Thursday 6:00PM-7:20PM
Room: CS 321
Office Hours: Tuesday and Thursday 2:30AM-3:30AM or per appointment.
Email Address: taufer AT acm DOT org
Campus Office Number: 6957
NEWS: Click HERE to see the presentations of our semester project
Topics:
- Overview of Parallel Computing, Parallel Algorithm Design and Performance Analysis: parallel computing concepts, parallel computer architectures, standard programming models for parallel computers, models to facilitate the development of efficient parallel programs, and methods for performance analysis of parallel algorithms.
- Distributed Memory Programming with Message Passing Interface (MPI): MPI features and syntax, examples of parallelizing serial codes with MPI, discussion of performance issues, future of MPI.
- Shared Memory Parallel Programming with OpenMP: OpenMP features and syntax, examples of parallelizing serial codes with OpenMP, discussion of performance issues, future of OpenMP.
- Other Programming Models and Specific Topics in Parallel Computing: combining OpenMP and MPI, scalable programming and algorithms, libraries (BLAS, PETSc, PLAPACK), potential future 'standard' programming languages and tools, debugging parallel codes, parallel I/O, and other parallel programming topics of interest as time allow.
Textbooks:
Reference books:
- Parallel Programming in C with MPI and OpenMP by Michael J. Quinn (Hardcover)
- Parallel Programming in OpenMP by Rohit Chandra, et al (Paperback)
Other suggested books:
- Parallel Programming with MPI by Peter Pacheco (Paperback)
- Using MPI - 2nd Edition: Portable Parallel Programming with the Message Passing Interface (Scientific and Engineering Computation) by William Gropp, et al (Paperback)
- MPI: The Complete Reference (2-volume set) by Marc Snir, William Gropp (Paperback)
Tentative Class Schedule:
Week 1: Parallel Computing Overview
Week 2: Parallel Computing Overview
Week 3: Parallel Algorithm Design
Week 4: Perfromance Anlaysis
Week 5: Distributed Memory Programming: MPI
Week 6: Distributed Memory Programming: MPI
Week 7: Distributed Memory Programming: MPI
Week 8: Distributed Memory Programming: MPI
Week 9: Shared Memory Programming: OpenMP
Week 10: Shared Memory Programming: OpenMP
Week 11: Spring break Special Topics in Parallel Computing
Week 12: Special Topics in Parallel Computing
Week 13: Special Topics in Parallel Computing
Week 14: Special Topics in Parallel Computing
|