平行程式Parallel Programming
Responsive image
老師: 周志遠
助教: 陳煜翔, 王楷翔, 歐川銘, 黃恩明, 蔡濶光, 黃 晨
基本資訊
課程代碼
11110CS542200
課程名稱
平行程式Parallel Programming
學分
3
學期
1111
單位
資工系 (CS)
班級
碩士班
修課人數
67 人
老師
助教
備註
1. The course lectures will be offered online: link
    But the first class on 9/12  will also be in the classroom: delta building 106
 
2. The lecture will be given in English, but you can find the previous recorded lectures in Chinese here: 2021Fall, 2018Fall
 
3. Steps for applying extra enrollment
   (1) Attend the first class to hear about the course syllabus
   (2) Submit applicatin before 9/13 8am
   (3) Receive the confirmation letter by 9/15
   (4) If you are accepted, follow the school instructions to submit your enrollment request on "Academic Information Systems" (校資系統)
課程說明
課程簡介
This course will introduce the basic concepts of parallel computing systems, and teach programming languages, including Pthread, OpenMP for multi-core systems, MPI for cluster computing, CUDA for GPU, and MapRduce, Spark for distributed computing.  Course students are required to complete 4  program assignments, and a final project.
課程大綱

Lectures:

Part I: Introduction

- Introduction to Parallel Computers

- Introduction to Parallel Computing

 

Part II: Parallel Programming

- Message-Passing Programming (MPI)

- Shared Memory Programming (Pthread and OpenMP)

 

Part III: Parallel Computing Techniques

- Embarrassingly Parallel Computations

- Partitioning and Divide-and-Conquer Strategies

- Pipelined Computations

- Synchronous Computations

- Load Balancing and Termination Detection

 

Part IV: GPU Programming

- Heterogeneous computing

- CUDA programming model

- GPU Architecture & Multi-GPU

- Advanced CUDA Programming & Optimization

 

Part V: Distributed Programming

- Big Data frameworks: MapReduce, Spark

- Distributed Deep Learning

教科書

1. Parallel Programming – Techniques and applications Using Networked

Workstations and Parallel Computers, Barry Wilkinson and Michael Allen, Prentice Hall, 1999.

 

2. Parallel Programming in C with MPI and OpenMP, Michael J. Quinn, McGraw-Hill, 2003.

成績說明

Programming assignment: 100%

(1) MPI: Even-old Sort

(2) OpenMP + MPI: Mandelbort

(3) CUDA: All-Pair-Shortest-Path

(4) MPI+Pthread: MapReduce

(5) Final Project

QR Code
放大