Syllabus

Announcement

Lecture Hours

  • Tue 15:00 - 16:15 (26305)
  • Thu 16:30 - 17:45 (26305)
  • Office Hours: Tue 7pm-8pm

Textbook

Grading


Assignments

  • Project 1: PThread Description (updated 9.10)
    1. Correction 1: The description says "If the master encounters a “w” (wait) command, it waits the given number of seconds before continuing in the input file.", but it is not the master but worker threads that should wait for the given number of seconds.
    2. Clarification: When multiple threads are concurrently inserting and searching keys, recently inserted keys might not be found. For example, suppose an input file has the two tasks - "i 20" and "q 20". In the sequential version, the second task must find 20, but in parallel version, "q 20" may not find 20. Note that this "Not Found" error is acceptable in parallel version. I.e., you should not serialize these tasks..
    3. Since STL classes provide some level of thread safety, you MUST NOT USE STL for project 1.
    4. Some sample test input files can be found in ~swe3021/testcases/project1
  • Project 2: OpenMP Description , Due Date: Oct 18.
  • Project 3: MPI Description , Due Date: Nov 22 (Extended).
  • Project 4: CUDA

Lecture Slides

# Date Topic Slides Notes
1 9.3 Introduction to Parallel Computing Slides
2 9.5 Paradigm Shift Slides
3 9.10 POSIX Threads Slides PThread Project (updated 9.10)
- 9.12 Chuseok Holiday (No Class)
4 9.17 OpenMP Slides
5 9.19 OpenMP Slides
6 9.24 Performance (Amdahl's Law) Slides
7 9.26 Loop Dependence Slides
8 10.1 Loop Dependence OpenMP Project 2
- 10.3 National Foundation Day (No Class)
9 10.8 Structured Patterns Slides
10 10.10 Parallel Sorting Slides
11 10.15 Matrix Multiplication and Gaussian Elimination Slides
12 10.17 LU Factorization Slides
- 10.22 Midterm Week (No Class)
- 10.24 Midterm Exam 26305 (last digit of your ID: odd)
27517 (last digit of your ID: even)
Solution
13 10.29 Interconnect Slides
14 10.31 MPI Part I Slides MPI Project 3
15 11.5 MPI Part II
16 11.7 How to Build Cluster Slides
17 11.12 Parallal Graph Processing Slides
18 11.14 SPMD and CUDA Slides
19 11.19 CUDA Slides
20 11.21 CUDA Slides Project 4: CUDA
21 11.26 No Class
22 11.28 Lock-Free List PDF
PPT
Art of Multiprocessor Programming Ch. 9 and 10
23 12.3 Lock-Free Hashing PDF
PPT
24 12.5 Hadoop PDF
25 12.10 Hadoop PDF
26 12.12 Spark PDF
- 12.17 Final Exam: 3pm Final Exam Come to 26305 if your ID is an odd number.
Come to 26509 if your ID is an even number.