Credits:
Semesters Offered
Topics Covered
- Introduction to Parallel Algorithms: Performance of Parallel Algorithms Including Work and Depth, Optimality Notions
- Basic Techniques: Balanced Trees, Pointer Jumping, Divide-and-Conquer, Partitioning, Pipelining, Accelerated Cascading, Breaking Symmetry
- Trees and Lists: List Ranking, The Euler Tour Techniques, Tree Connection, Evaluation of Arithmetic Expressions
- Searching, Merging and Sorting
- Graphs: Connected Components, Transitive Closure, Paths Problems
- Strings: Some string matching algorithms
- Introduction to Parallel Processing
- Matrix multiplication, in particular on GPU, and its role in deep learning
- Introduction to state-of-the-art of parallel computing and discussion of the question: Can fine-grained large scale on-chip parallel computing be harnessed towards faster completion time of a single general-purpose computing task?