Date/SubjectPrepIn Class Assignments
       
       
Tue Jan 14 Introductionslides: presentation pdf
       
Thu Jan 16 Task Creation and Termination (Async, Finish); Computation GraphsInitial Setup
Initial Setup Results Form
Prior Experience Survey
Topic 1.1: Task Creation and Termination (Async, Finish) --- Lecture, Demo, Quiz, Optional Reading
Topic 1.2: Computation Graphs --- Lecture, Demo, Quiz, Optional Reading
video: Finish & Async: Lower Upper Split
video: Dealing With Final: Using Array Slots
video: Dealing With Final: IntegerRange
video: Coarsening: N-Way Split
video: Finish & Async Coarsening: N-Way Split
quiz
slides: presentation pdf
>>> Assign Studio Slices
>>> Assign Lab Async/Finish: Nucleobase Counting
       
       
       
       
Tue Jan 21 Interfaces, Generics; Parallel QuicksortTopic 1.6: Parallel Quicksort --- Lecture, Demo, Quiz, Optional Reading
video: Using an Iteratable
video: ArrayIterator
video: Divide and Conquer: Array Sum Example
quiz
slides: presentation pdf
>>> Assign WarmUp Shape
>>> Assign Studio Merge Sort
>>> Extra Credit Merge Sort Parallel Combiner
Wed Jan 22<<< Submit Studio Slices
Thu Jan 23 Data Races; Functional & Structural DeterminismTopic 2.5: Data Races --- Lecture, Demo, Quiz, Optional Reading
Topic 2.6: Functional & Structural Determinism --- Lecture, Demo, Quiz, Optional Reading
quiz
slides: presentation pdf
>>> Assign Studio Race Conditions
Fri Jan 24<<< Submit Lab Async/Finish: Nucleobase Counting (Initial)
       
       
       
Tue Jan 28 Data Structures; Ideal Parallelism; Multiprocessor Scheduling; Parallel Speedup and Amdahl's LawTopic 1.3: Ideal Parallelism --- Lecture, Demo, Quiz, Optional Reading
Topic 1.4: Multiprocessor Scheduling --- Lecture, Demo, Quiz, Optional Reading
Topic 1.5: Parallel Speedup and Amdahl's Law --- Lecture, Demo, Quiz, Optional Reading
video: Using Slices
quiz
slides: presentation pdf
>>> Assign Studio Using Collections
>>> Assign Studio Powers Of 2 Iterable
Wed Jan 29<<< Submit Studio Merge Sort
<<< Submit Studio Race Conditions
Thu Jan 30 Loop-Level Parallelism; Parallel Matrix Multiplication; Iteration Grouping(Optional) video: matrix multiply
Topic 3.1: Loop-Level Parallelism --- Lecture, Demo, Quiz, Optional Reading
Topic 3.2: Parallel Matrix Multiplication --- Lecture, Demo, Quiz, Optional Reading
Topic 3.3: Iteration Grouping --- Lecture, Demo, Quiz, Optional Reading
quiz
slides: presentation pdf
>>> Assign Studio Matrix Multiply
       
       
       
Mon Feb 3<<< Submit Lab Async/Finish: Nucleobase Counting (Revisions)
Tue Feb 4 Floodfillvideo: Floodfill
quiz
slides: presentation pdf
>>> Assign Studio Floodfill
Wed Feb 5<<< Submit Studio Using Collections
<<< Submit Studio Powers Of 2 Iterable
<<< Submit Studio Matrix Multiply
Thu Feb 6 Backtrack Recursion: N-Queens; Finish AccumulatorsTopic 2.3: Finish Accumulators --- Lecture, Demo, Quiz, Optional Reading
quiz
slides: presentation pdf
>>> Assign Lab Backtrack Recursion: N-Queens & Sudoku
>>> Extra Credit Sudoku Advanced Constraint Propagation
       
       
       
       
Tue Feb 11 Backtrack Recursion: SudokuShort Reading: : Solving Every Sudoku Puzzle
quiz
slides: presentation pdf
Wed Feb 12<<< Submit Studio Floodfill
Thu Feb 13 Connect Fourvideo: Minimax and Alpha-Beta
quiz
slides: presentation pdf
>>> Assign Studio Hashtable
>>> Extra Credit Connect Four
       
       
       
       
Tue Feb 18 Map ReduceTopic 2.4: Map Reduce --- Lecture, Demo, Quiz, Optional Reading
video: Learn MapReduce with Playing Cards
quiz
slides: presentation pdf
>>> Assign Studio Int Sum MR Apps
Wed Feb 19<<< Submit Studio Hashtable
Thu Feb 20Javadoc: : Collector<T,A,R>
quiz
slides: presentation pdf
>>> Assign Studio Collector
Fri Feb 21<<< Submit Lab Backtrack Recursion: N-Queens & Sudoku (Initial)
       
       
       
Tue Feb 25 MapReduce: Simple FrameworkShort Reading: : Mutual Friends MapReduce
quiz
slides: presentation pdf
>>> Assign Studio MutualFriends MR App
>>> Assign Lab MapReduce Frameworks
Wed Feb 26<<< Submit Studio Int Sum MR Apps
<<< Submit Studio Collector
Thu Feb 27 MapReduce: Matrix Frameworkvideo: John Snow 1
video: John Snow 2
video: John Snow 3
quiz
slides: presentation pdf
>>> Assign Studio Cholera MR App
       
       
       
Mon Mar 2<<< Submit Lab Backtrack Recursion: N-Queens & Sudoku (Revisions)
Tue Mar 3 Work Stealingvideo: Work Stealing
quiz
slides: presentation pdf
>>> Assign OptionalFun Raytrace Scheduler
Wed Mar 4<<< Submit Studio MutualFriends MR App
<<< Submit Studio Cholera MR App
Thu Mar 5 Twitter and WindbagsShort Reading: : Why didn't #FreddieGray trend on Twitter?
Short Reading: : #FreddieGray--is not trending on Twitter?
Short Reading: : Data Reveals That "Occupying" Twitter Trending Topics is Harder Than it Looks!
quiz
slides: presentation pdf
>>> Assign Studio Windbag MR App
Fri Mar 6<<< Submit Lab MapReduce Frameworks (Initial)
       
       
       
Tue Mar 10 Spring Break (No Class)
       
Thu Mar 12 Spring Break (No Class)
       
       
       
       
Tue Mar 17 Spring Break (No Class)
       
Thu Mar 19 Spring Break (No Class)
       
       
       
       
Tue Mar 24 Future Tasks & Functional Parallelism; MemoizationTopic 2.1: Future Tasks & Functional Parallelism --- Lecture, Demo, Quiz, Optional Reading
Topic 2.2: Memoization --- Lecture, Demo, Quiz, Optional Reading
video: Futures: Upper Lower Split Example
quiz
slides: presentation pdf
video lecture
video: Future get() Clarification
>>> Assign Studio Fibonacci
Wed Mar 25<<< Submit Studio Windbag MR App
Thu Mar 26 Threads and ExecutorsShort Reading: : Threads and Executors
video: Quicksort
video: Thread Demo
video: ExecutorService submit and Future get
video: ExecutorService invokeAll
quiz
slides: presentation pdf
video lecture
>>> Assign Lab Threads and Executors
       
       
       
Mon Mar 30<<< Submit Lab MapReduce Frameworks (Revisions)
Tue Mar 31 Scanvideo: Hillis & Steele Scan
video: Blelloch Scan
quiz
slides: presentation pdf
video lecture play list
>>> Assign Studio Scan
>>> Assign Studio Pack
>>> Extra Credit Blelloch Scan
Wed Apr 1<<< Submit Studio Fibonacci
Thu Apr 2 Isolated Construct; Object-based Isolation; Parallel Spanning Tree AlgorithmTopic 5.1: Isolated Construct --- Lecture, Demo, Quiz, Optional Reading
Topic 5.2: Object-based Isolation --- Lecture, Demo, Quiz, Optional Reading
Topic 5.3: Parallel Spanning Tree Algorithm --- Lecture, Demo, Quiz, Optional Reading
quiz
slides: presentation pdf
video lecture play list
>>> Assign Lab Balance and Contention: k-mer Counting
Fri Apr 3<<< Submit Lab Threads and Executors (Initial)
       
       
       
Tue Apr 7 Atomic VariablesTopic 5.4: Atomic Variables --- Lecture, Demo, Quiz, Optional Reading
quiz
slides: presentation pdf
video lecture play list
>>> Assign Studio Atomicity
Wed Apr 8<<< Submit Studio Scan
<<< Submit Studio Pack
Thu Apr 9 Reader-Writer IsolationTopic 5.5: Reader-Writer Isolation --- Lecture, Demo, Quiz, Optional Reading
Short Reading: : Synchronized Methods
Short Reading: : Intrinsic Locks
quiz
slides: presentation pdf
video lecture play list
>>> Assign Studio Ordered Locks
       
       
       
Mon Apr 13<<< Submit Lab Threads and Executors (Revisions)
Tue Apr 14 Computation Graph & Metrics for IsolationTopic 5.6: Computation Graph & Metrics for Isolation --- Lecture, Demo, Quiz, Optional Reading
Short Reading: : Explicit Locks
quiz
slides: presentation pdf
video lecture play list
>>> Assign Studio All Or Nothing Locks
Wed Apr 15<<< Submit Studio Atomicity
<<< Submit Studio Ordered Locks
Thu Apr 16 Barriers in Parallel Loops; One-Dimensional Iterative Averaging; Single Program Multiple Data (SPMD) patternTopic 3.4: Barriers in Parallel Loops --- Lecture, Demo, Quiz, Optional Reading
Topic 3.5: One-Dimensional Iterative Averaging --- Lecture, Demo, Quiz, Optional Reading
Topic 3.6: Single Program Multiple Data (SPMD) pattern --- Lecture, Demo, Quiz, Optional Reading
quiz
slides: presentation pdf
video lecture play list
>>> Assign Studio Iterative Averaging
Fri Apr 17<<< Submit Lab Balance and Contention: k-mer Counting (Initial)
       
       
       
Tue Apr 21 Fuzzy Barriers; Phasers; Iterative Averaging with Point-to-Point SynchronizationTopic 4.1: Fuzzy Barriers --- Lecture, Demo, Quiz, Optional Reading
Topic 4.2: Phasers --- Lecture, Demo, Quiz, Optional Reading
Topic 4.3: Iterative Averaging with Point-to-Point Synchronization --- Lecture, Demo, Quiz, Optional Reading
quiz
slides: presentation pdf
video lecture play list
>>> Assign Studio Legged Races
Wed Apr 22<<< Submit Studio All Or Nothing Locks
<<< Submit Studio Iterative Averaging
Thu Apr 23 Pipeline Parallelism; Data-Driven Tasks; Semantic Classification of Parallel ProgramsTopic 4.4: Pipeline Parallelism --- Lecture, Demo, Quiz, Optional Reading
Topic 4.5: Data-Driven Tasks --- Lecture, Demo, Quiz, Optional Reading
Topic 4.6: Semantic Classification of Parallel Programs --- Lecture, Demo, Quiz, Optional Reading
quiz
slides: presentation pdf
video lecture play list
>>> Assign Studio Iced_Cakes_Pipeline
       
       
       
Mon Apr 27<<< Submit Lab Balance and Contention: k-mer Counting (Revisions)
       
Wed Apr 29<<< Submit Studio Legged Races
<<< Submit Studio Iced_Cakes_Pipeline