Parallel Programming
Fall 2017

Announcement

General Information

Class time: 2G5CD (Tue. 15:30-16:20 and Fri. 10:10-12:00)
Class location: EDB27

Instructor

  Name     Email     Office hours     Location  
Prof. Yi-Ping You     By appointment EC708

TAs

  Name     Email     Phone     Location  
張家榮 jrchang [at] sslab.cs.nctu.edu.tw 54745 EC618
顏仲華 chyen [at] sslab.cs.nctu.edu.tw 54745 EC618
楊雅琪 ycyang [at] sslab.cs.nctu.edu.tw 54745 EC618

You may also mail to PP-f17 [AT] sslab.cs.nctu.edu.tw. All TAs will receive the mail.

Overview

This course examines current research in parallel and cloud computing, with an emphasis on several programming models. Topics covered include

Prerequisites

This course assumes that you are already a C or C++ programmer.

Week-by-week Schedule

Week Lecture Notes Assignments Peer-review comments
1 Course introduction pdf
2 Parallel and distributed programming for cloud computing pdf
3 Introduction to parallel hardware and software pdf
4 Shared-memory programming with Pthreads pdf
5 Shared-memory programming with Pthreads pdf
6 Shared-memory programming with OpenMP pdf
7 Shared-memory programming with OpenMP pdf
8 Distributed-memory programming with MPI pdf
9 Distributed-memory programming with MPI pdf
10 Data parallel programming with CUDA pdf
11 Data parallel programming with CUDA
12 Data parallel programming with OpenCL pdf
13 Data parallel programming with OpenCL
14 Hadoop and MapReduce programming pdf
15 Hadoop and MapReduce programming
16 Final project presentations
17 Final project presentations
18 Final project presentations

Textbook

Course Project

Click here for project description.


Important dates:

References

Grading

Grades will be assigned based on These weights are subject to minor variation.