Here is a rough schedule. Each item is meant to be about one lecture,
but I expect some topics will go into a second lecture. I will fill
this in over the next few days, and add readings as we approach the
topic.
- Introduction and Models: PRAM, Vector Models, Circuits, MP-RAM
Lecture Video and Lecture "Slides"
- Basic building blocks : e.g. scan, merging, searching
Further readings (some original papers on topic)
- Sorting: mergesort, quicksort, sample sort, integer sort
Further readings (some original papers on topic)
- BFS and Low diameter decomposition
Further readings (some original papers on topic)
- Work efficient Graph Connectivity and MIS
Further readings (some original papers on topic)
- Reachability and Shortest Paths (Transitive closure bottleneck)
Further readings (some original papers on topic)
- Strongly Connected Components
Further readings (some original papers on topic)
- * Coppersmith, Fleischer, Hendrickson, and Pinar,
A Divide-and-conquer Algorithm for Identifying Strongly Connected Components (2006)
- Shudy, Finding Strongly Connected Components in Parallel using O(log^2 n) Reachability Queries (2008)
- * Blelloch, Gu, Shun, Sun, Parallelism in Randomized Incremental Algorithms (2020) (Just sections 6.2 and 2.3, in that order, or interleaved).
- Least Elements Lists and Tree Embeddings
Further readings (some original papers on topic)
- Fakcharoenphol, Rao and Talwar, A tight bound on approximating arbitrary metrics by tree metrics (2003)
- Blelloch, Gupta, and Tangwongsan, Parallel Approximate Tree Embeddings (2012)
- * Blelloch, Gu, Shun, Sun, Parallelism in Randomized Incremental Algorithms (2020) (Just sections 6.1 and 2.3).
- Michael Dinitz, Course Notes on Tree Embedings.
- Graph Spanners
Further readings (some original papers on topic)
- List ranking and tree contraction
Further readings (some original papers on topic)
- Minimum Spanning Trees
Further readings (some original papers on topic)
- Parallel Batch Dynamic Algorithms
Further readings (some original papers on topic)
- Tseng, Dhulipala, Blelloch, Batch Parallel Euler-Tour Trees (2019)
- Acar, Anderson, Blelloch, Dhulipala, Parallel Batch-Dynamic Connectivity (2019)
- Anderson, Blelloch, and Tangwonsan, Work-Efficient Batch-Incremental Minimum Spanning Trees with Applications to the Sliding-Window Model (2020)
- Acar, Anderson, Blelloch, Dhulipala, and Westrick, Parallel Batch-Dynamic Trees via Change Propagation (2020)
- Anderson, and Blelloch, Parallel Minimum Cuts in O(m log^2 n) Work and Low Depth (2021) (Just Section 3 on Batched Mixed Operations on Trees)
- Convex Hull
Further readings (some original papers on topic)
- Suffix Arrays and Suffix Trees
Further readings (some original papers on topic)
- Works stealing scheduling
Further readings (some original papers on topic)
- Concurrent data structures
Further readings (some original papers on topic)
- Concurrent BSTs
Further readings (some original papers on topic)
- Parallel cache oblivious model
Further readings (some original papers on topic)