Versions Compared

Key

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

...

 

Day

Date (2012)

Topic

Handouts

Slides

Homework Assigned

Homework Due

1

Mon

Jan 9

Lecture 1: The What and Why of Parallel Programming

 

 

HW1 (Written Assignment)

 

2

Wed

Jan 11

Lecture 2: Task Creation & Termination using Async & Finish

 

 

 

 

3

Fri

Jan 13

Lecture 3: Computation Graphs, Abstract Performance Metrics

 


HW2

HW1

-

Mon

Jan 16

School Holiday

 

 

 

 

4

Wed

Jan 18

Lecture 4: Futures --- Tasks with Return Values



 

 

5

Fri

Jan 20

Lecture 5: Parallel Array Sum and Array Reductions



 

HW2

6

Mon

Jan 23

Lecture 6: Data Races and How to Avoid Them



HW3

 

7

Wed

Jan 25

Lecture 7: Parallel Prefix Sum, Forall parallel loops

 


 

 

8

Fri

Jan 27

Lecture 8: Parallel Quicksort

 


 

 

9

Mon

Jan 30

Lecture 9: PRAM model, Amdahl's Law

 

 

 

 

10

Wed

Feb 01

Lecture 10: Critical sections and the Isolated statement

 


 

 

- 11

Fri

Feb 03

No Lecture , School closed due to inclement weather 11: Abstract vs Real Performance, Work-sharing & Work-stealing schedulers

 

 

 

 

11 12

Mon

Feb 06

Lecture 11: Abstract vs Real Performance, Work-sharing & Work-stealing schedulers 12: Barrier Synchronization in Forall Loops


lec11-slides

 

HW3

12 13

Wed

Feb 08

Lecture 1213: Barrier Synchronization in Forall Loops (contd)

lec12and13-handout

lec12-slides

HW4 (Written Assignment)

 

13 14

Fri

Feb 10

Lecture 13: Barrier Synchronization in Forall Loops (contd) 14: Point-to-point Synchronization and Phasers

lec12and13-handout

lec13-slides

 

 

14 15

Mon

Feb 13

Lecture 1415: Point-to-point Synchronization and Phasers (contd)

lec14and15-handout

lec14-slides

 

 

15 16

Wed

Feb 15

Lecture 15: Point-to-point Synchronization and Phasers (contd) 16: Advanced Phaser topics

lec14and15-handout

lec15-slides

 

HW4

16 17

Fri

Feb 17

Lecture 16: Guest Lecture on Bitonic Sort (John Mellor-Crummey) 17: Dataflow Programming and Data-Driven Futures

 

lec16-slides

 

 

17 18

Mon

Feb 20

Lecture 17: Advanced Phaser topics 18: Dataflow Programming and Data-Driven Futures, contd.

lec17-handout

lec17-slides

 

 

18 19

Wed

Feb 22

Lecture 1819: Midterm Summary

 

lec18-slides Midterm Exam

(Take-home)  

 

-

Fri

Feb 24

No lecture, Midterm Exam due today Exam 1 (in class)

 

 

 

Midterm Exam (Take-home)  

-

M-F

Feb 27 - Mar 02

Spring Break

 

 


 

19 20

Mon

Mar 05

Lecture 1920: Java Atomic Variables

lec19-handout

lec19-slides

 

 

20 21

Wed

Mar 07

Lecture 2021: Java Concurrent Collections

lec20-handout

lec20-slides

 

 

21 22

Fri

Mar 09

Lecture 2122: Linearizability of Concurrent Objects

lec21-handout

lec21-slides

HW5 (Written Assignment)

 

22 23

Mon

Mar 12

Lecture 2223: Task Affinity with Places

lec22-handout

lec22-slides



23 24

Wed

Mar 14

Lecture 2324: Task Affinity with Places, contd.

lec23-handout

lec23-slides

 

 

24 25

Fri

Mar 16

Lecture 2425: Map Reduce

lec24-handout

lec24-slides


 

25 26

Mon

Mar 19

Lecture 25: Dataflow Programming and Data-Driven Futures 26: Map Reduce, contd.

lec25-handout

lec25-slides


HW5

26 27

Wed

Mar 21

Lecture 2627: Dataflow Programming with Intel Concurrent Collections

lec26-handout

lec26-slides

HW6 (Programming Assignment)

 

-

Fri

Mar 23

Midterm Recess

 

 

 

 

27 28

Mon

Mar 26

Lecture 2728: Java Threads

lec27-handout

lec27-slides

 

 

28 29

Wed

Mar 28

Lecture 2829: Java Threads (contd), synchronized statement

 

lec28-slides

 

 

29 30

Fri

Mar 30

Lecture 2930: Java synchronized statement with wait/notify

 

lec29-slides

 

 

30 31

Mon

Apr 02

Lecture 3031: Advanced locking in Java

 

lec30-slides



31 32

Wed

Apr 04

Lecture 3132: Java Executors and Synchronizers

 

lec31-slides


HW6

32 33

Fri

Apr 06

Lecture 3233: Volatile Variables and Java Memory Model

 

lec32-slides

HW7 (Programming Assignment)

 

33 34

Mon

Apr 09

Lecture 3334: GPGPU programming with CUDA

lec33-handout

lec33-slides

 

 

34 35

Wed

Apr 11

Lecture 3435: CUDA contd.

 

lec34-slides

 

 

35 36

Fri

Apr 13

Lecture 3536: Liveness and Progress Guarantees

 

lec35-slides

 

 

36 37

Mon

Apr 16

Lecture 3637: Introduction to MPI

 

lec36-slides

 

 

37 38

Wed

Apr 18

Lecture 3738: Introduction to MPI (contd)

 

lec37-slides

 

 

38 39

Fri

Apr 20

Lecture 3839: Course Summary

 

lec38-slides

Final Exam (Take-home)

HW7

-

Fri

Apr 27

Exam 2 (in class)

 

 

 

  Final Exam (Take-home)

Lab Schedule ||

Lab #

Date (2011)

Topic

Handouts

1

Jan 10, 11, 12

Infrastructure setup

lab1-handout

2

Jan 17, 18, 19

Abstract performance metrics with async & finish

lab2-handout

3

Jan 23, 25, 26

Data race detection

lab3-handout

4

Jan 30 Feb 01, 02

Points, regions, forall loops

lab4-handout

5

Feb 07, 08, 09

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

lab5-handout

6

Feb 14, 15, 16

Barriers and Phasers

lab6-handout

-

Feb 21, 22, 23

No lab (midterm week)


7

Mar 06, 07, 08

Atomic Variables

lab7-handout

8

Mar 13, 14, 15

Places

lab8-handout

9

Mar 20, 21, 22

Data Driven Tasks

lab9-handout

10

Mar 27, 28, 29

Java Concurrency I

lab10-handout

11

Apr 03, 04, 05

Java Concurrency II

lab11-handout

12

Apr 10, 11, 12

CUDA

lab12-handout

13

Apr 17, 18, 19

MPI

lab13-handout

...