CS 410 Top: Parallel Algorithms

Credit Hours: 4
Course Coordinator: N/A
Course Description: Definition and nature of parallel computation. Parallel computation from the point of view of hardware/architechture, program/scheduling, and algorithms. Why and how parallel computation is different from serial computation. Examples to highlight the differences. Parallel algorithms in general: illustration of the most important features and techniques. Illustration of the limitations. A survey of major results, general form of results, and limitations on speedup. Prerequisite: CS 350.
Prerequisites: Mathematical maturity and general algorithm theory.
Goals: Introduce students to the intricacies of parallel algorithms.
Textbooks: None.
References: Papers on parallel algorithms published since 1965.
Major Topics: 1. Introduction to parallel computation.
2. Parallel computation from the point of view of hardware/architecture, program/scheduling, and algorithms.
3. Why and how it is different from serial computation.
4. Parallel algorithms: Illustration of the most important features and techniques; Illustration of the limitations.
5. A survey of major results, general form of the results, limitations on speed-up.
Laboratory Exercises: None.

CAC Category Credits Core Advanced
Data Structures
Algorithms 2 2
Software Design
Computer Architecture
Programming Languages

Oral and Written Communications: Each student gives a 30 minute oral presentation with questions from the class at the end.
Social and Ethical Issues: None.
Theoretical Content: The class is theoretical throughout.
Problem Analysis: None.
Solution Design: None.