Versions Compared

Key

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

...

 

Day

Date (2011)

Topic

Handouts

Slides

Homework Assigned

Homework Due

1

Mon

Jan 10

Lecture 1: The What and Why of Parallel Programming

lec1-handout

lec1-slides

HW1 (Written Assignment)

 

2

Wed

Jan 12

Lecture 2: Task Creation & Termination using Async & Finish

lec2-handout

lec2-slides

 

 

3

Fri

Jan 14

Lecture 3: Computation Graphs, Abstract Performance Metrics

lec3-handout
(rev 1/14/2011)

lec3-slides

HW2 (Written Assignment)

HW1

-

Mon

Jan 17

School Holiday

 

 

 

 

4

Wed

Jan 19

Lecture 4: Futures --- Tasks with Return Values

lec4-handout

lec4-slides

 

 

5

Fri

Jan 21

Lecture 5: Parallel Array Sum and Array Reductions

lec5-handout

lec5-slides

 

HW2

6

Mon

Jan 24

Lecture 6: Data Races and How to Avoid Them

lec6-handout

lec6-slides

HW3 (Programming Assignment)

 

7

Wed

Jan 26

Lecture 7: Parallel Prefix Sum, Forall parallel loops

lec7-handout

lec7-slides

 

 

8

Fri

Jan 28

Lecture 8: Parallel Quicksort

lec8-handout
(rev 1/28/2011)

lec8-slides

 

 

9

Mon

Jan 31

Lecture 9: PRAM model, Amdahl's Law

lec9-handout

lec9-slides

 

 

10

Wed

Feb 02

Lecture 10: Critical sections and the Isolated statement

lec10-handout

 

 

 

-

Fri

Feb 04

No Lecture, School closed due to bad inclement weather

 

 

 

 

11

Mon

Feb 07

Lecture 1211: Abstract vs Real Performance, Work-sharing & Work-stealing schedulers

 

 

HW4 (Written Assignment)  

HW3

12

Wed

Feb 09

Lecture 1312: Guest Lecture (John Mellor-Crummey Barrier Synchronization (Phasers I)

 

  

HW4 (Written Assignment)

 

13

Fri

Feb 11

Lecture 14: Guest Lecture (John Mellor-Crummey13: Split-phase Barriers (Phasers II)

 

 

 

 

14

Mon

Feb 14

Lecture 15: Barrier 14: Point-to-point Synchronization (Phasers IIII)

 

 

 

 

15

Wed

Feb 16

Lecture 16: Split-phase Barriers (Phasers II) 15: Successive Over Relaxation case study

 

 

 

 

16

Fri

Feb 18

Lecture 17: Point-to-point Synchronization (Phasers III16: Guest Lecture (John Mellor-Crummey)

 

 

 

HW4

17

Mon

Feb 21

Lecture 18: Successive Over Relaxation case study 17: Isolated statement vs Java Atomic Variables

 

 

 

 

18

Wed

Feb 23

Lecture 1918: Midterm Summary

 

 

Midterm Exam (Take-home)

 

-

Fri

Feb 25

No lecture, Exam1 due today

 

 

HW5 (Written Assignment)

Midterm Exam (Take-home)

-

M-F

Feb 28 - Mar 04

Spring Break

 

 

 

 

19

Mon

Mar 07

Lecture 2019: Map Reduce

 

 

 

 

20

Wed

Mar 09

Lecture 2120: Generalized Scan

 

 

 

 

21

Fri

Mar 11

Lecture 2221: Task Affinity with Places

 

 

HW6 (Programming Assignment)

HW5

22

Mon

Mar 14

Lecture 2322: Task Affinity with Places, contd.

 

 

 

 

23

Wed

Mar 16

Lecture 2423: Bounded Buffers

 

 

 

 

24

Fri

Mar 18

Lecture 2524: Java Concurrent Collections

 

 

 

 

25

Mon

Mar 21

Lecture 2625: Data Flow Programming

 

 

 

 

26

Wed

Mar 23

Lecture 2726: Data Flow Programming, contd

 

 

 

 

-

Fri

Mar 25

Midterm Recess

 

 

 

 

27

Mon

Mar 28

Lecture 2827: Java Threads and synchronized statement

 

 

 

 

28

Wed

Mar 30

Lecture 2928: GUI Applications

 

 

 

 

29

Fri

Apr 01

Lecture 3029: Java Executors

 

 

HW7 (Programming Assignment)

HW6

30

Mon

Apr 04

Lecture 3130: Java Locks & Conditions

 

 

 

 

31

Wed

Apr 06

Lecture 3231: Java Synchronizers

 

 

 

 

32

Fri

Apr 08

Lecture 3332: Deadlock, Livelock, Liveness

 

 

 

 

33

Mon

Apr 11

Lecture 3433: Java Memory Model and Volatile Variables

 

 

 

 

34

Wed

Apr 13

Lecture 3534: GPGPU programming with CUDA

 

 

 

 

35

Fri

Apr 15

Lecture 3635: CUDA contd.

 

 

 

 

36

Mon

Apr 18

Lecture 3736: Distributed-memory programming with MPI

 

 

 

 

37

Wed

Apr 20

Lecture 3837: MPI contd.

 

 

 

 

38

Fri

Apr 22

Lecture 3938: Course Summary

 

 

Final Exam (Take-home)

HW7

-

Fri

Apr 29

 

 

 

 

Final Exam (Take-home)

...

Lab #

Date (2011)

Topic

Handouts

1

Jan 11, 12

Infrastructure setup

lab1-handout

2

Jan 18, 19

Abstract performance metrics with async & finish

lab2-handout

3

Jan 25, 26

Data race detection

lab3-handout

4

Feb 01, 02

Points, regions, forall loops

lab4-handout

5

Feb 08, 09 Isolated statements and Java atomic operations

Abstract vs Real Performance, Work-sharing & Work-stealing schedulers

 

6

Feb 15, 16

Phasers

 

-

Feb 22, 23

No lab because of (midterm week)

 

7

Mar 08, 09

Map Reduce & Generalized Scan

 

8

Mar 15, 16

Places

 

9

Mar 22, 23

Data Flow Programming with CnC-HJ

 

10

Apr 05, 06

Java Concurrency

 

11

Apr 12, 13

CUDA

 

12

Apr 19, 20

MPI

 

...