Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

 

Day

Date (2013)

Topic

Reading

Slides

Audio (Panopto)

Code Examples

Homework Assigned

Homework Due

1

Mon

Jan 7

Lecture 1: The What and Why of Parallel Programming

Module 1: Sections1.1, 1.2, 2.1, 2.2

lec1-slides

lec1-audio

ArraySum0.hj

 

 

2

Wed

Jan 9

Lecture 2: Async-Finish Parallel Programming and Computation Graphs

Module 1: Sections 1.3, 2. 3, 2.41, 3.12

 

  

HW1

 

3

Fri

Jan 11

Lecture 3: Computation Graphs, Abstract Performance Metrics, Array Reductions

      

4

Mon

Jan 14

Lecture 4: Parallel Speedup, Efficiency, Amdahl's Law

      

5

Wed

Jan 16

Lecture 5: Data & Control Flow with Async Tasks, Data Races

      

6

Fri

Jan 18

Lecture 6: Memory Models, Atomic Variables

      

-

Mon

Jan 21

School Holiday (Martin Luther King, Jr. Day)

      

7

Wed

Jan 23

Lecture 7: Memory Models (contd), Futures --- Tasks with Return Values

    HW2HW1

8

Fri

Jan 25

Lecture 8: Futures (contd), Dataflow Programming, Data-Driven Tasks

      

9

Mon

Jan 28

Lecture 9: Abstract vs. Real Performance, seq clause, forasync loops

      

10

Wed

Jan 30

Lecture 10: Forasync Chunking, Parallel Prefix Sum algorithm

      

11

Fri

Feb 1

Lecture 11: Parallel Prefix Sum (contd), Parallel Quicksort

      

12

Mon

Feb 04

Lecture 12: Finish Accumulators, Forall Loops and Barrier Synchronization

      

13

Wed

Feb 06

Lecture 13: Forall Loops and Barrier Synchronization (contd)

    HW3HW2

14

Fri

Feb 08

Lecture 14: Point-to-point Synchronization and Phasers

      

15

Mon

Feb 11

Lecture 15: Phaser Accumulators, Bounded Phasers

      

16

Wed

Feb 13

Lecture 16: Summary of Barriers and Phasers

      

17

Fri

Feb 15

Lecture 17: Task Affinity with Places

      

18

Mon

Feb 18

Lecture 18: Task Affinity with Places (contd)

      

19

Wed

Feb 20

Lecture 19: Midterm Summary, Take-home Exam 1 distributed

    HW4HW3

-

F

Feb 22

No Lecture (Exam 1 due by 4pm today)

      

-

M-F

Feb 25- Mar 01

Spring Break

 

 

 

 

 

 

20

Mon

Mar 04

Lecture 20: Critical sections and the Isolated statement

     

 

21

Wed

Mar 06

Lecture 21: Isolated statement (contd), Monitors, Actors

     

 

22

Fri

Mar 08

Lecture 22: Actors (contd)

     

 

23

Mon

Mar 11

Lecture 23: Linearizability of Concurrent Objects

   

 

 

 

24

Wed

Mar 13

Lecture 24: Linearizability of Concurrent Objects (contd)

    

 

 

25

Fri

Mar 15

Lecture 25: Safety and Liveness Properties

   

 

 

 

26

Mon

Mar 18

Lecture 26: Parallel Programming Patterns

   

 

 

 

27

Wed

Mar 20

Lecture 27: Introduction to Java Threads

    HW5

HW4

28

Fri

Mar 22

Lecture 28: Bitonic Sort

   

 

 

 

29

Mon

Mar 25

Lecture 29: Java Threads (contd), Java synchronized statement

   

 

 

 

30

Wed

Mar 27

Lecture 30: Java synchronized statement (contd), advanced locking

   

 

 

 

-

Fri

Mar 29

Midterm Recess

      

31

Mon

Apr 01

Lecture 31: Java Executors and Synchronizers

    

 

 

32

Wed

Apr 03

Lecture 32: Volatile Variables and Java Memory Model

   

 

HW6

HW5

33

Fri

Apr 05

Lecture 33: Message Passing Interface (MPI)

   

 

 

 

34

Mon

Apr 08

Lecture 34: Message Passing Interface (MPI, contd)

     

 

35

Wed

Apr 10

Lecture 35: Cloud Computing, Map Reduce

   

 

 

 

36

Fri

Apr 12

Lecture 36: Map Reduce (contd)

   

 

 

 

37

Mon

Apr 15

Lecture 37: Speculative parallelization of isolated blocks

   

 

 

 

38

Wed

Apr 17

Lecture 38: Comparison of Parallel Programming Models

   

 

 

HW6

39

Fri

Apr 19

Lecture 39: Course Review, Take-home Exam 2 distributed

      

-

Fri

Apr 25

Exam 2 due

 

 

 

 

 

 

...