校際選修

115-1 選課時程

進行中

  • 初選第一階段 6/15/2026
  • 初選第二階段 6/22/2026
  • 校際選修 8/24/2026
  • 初選第三階段 8/31/2026
  • 開學後加退選 9/7/2026
  • 逾期加退選 9/21/2026
選課資源

平行程式設計

Parallel Programming

學期
106-1
學分
3 學分
當期課號
5094
永久課號
GEE9018
開課單位
電機工程學系
授課教師
溫宏斌
校區
光復
類別
選修
上課時間表
週三
7
15:30–16:20
平行程式設計
ED713
3 節連堂
8
16:30–17:20
9
17:30–18:20

* 根據陽明交大上課時間表所列

概述

This course aims at the training of programming with multiple processing units for high-performance applications. Two different kinds of parallel architectures including shared-memory (multi-core) and distributed-memory (multi-machine) systems are covered. For multi-core programming, we will introduce Pthread, Open Multi-Processing (OpenMP) and Compute Unified Device Architecture (CUDA) for parallel programming. For multi-machine programming, we mainly focus Message Passing Interface (MPI) and Map/Reduce if time permits. Various parallel architectures, programming models, programming techniques, and applications are also covered in lectures. Meanwhile, extensive in-class machine laboratories are required in this course.

先修科目

本課程考量設備容量之限制故有設立修課資格優先權與名額上限 === 20170913(三) 第一堂上課請務必出席 下午3:40我們將會依照優先權順序開始登記修課資格 (亦即在線上處理本課程之加退選事宜) 並且當天會有課堂程式鑑定考試 通過者才具備資格選修 請欲選課同學務必準時出席,不便之處尚請見諒~

評分方式

4 Programming Assignments:20% Midterm Exam:25% Finally Exam:25% Term Project:30%

課程大綱
  • Introduction to Parallel Computing (Architectures and Algorithms)
  • Shared Memory Programming (Pthread and OpenMP)
  • Distributed Shared Memory Programming with MPI
  • Parallel Program Development
  • Massively parallel (CUDA) programming
週次計畫
週次主題
第 1 週Syllabus and Screening Programming Test
第 2 週Introduction to Parallel Programming and their Architecture
第 3 週Pthread Programming (Part 1)
第 4 週中秋節國定假日
第 5 週Pthread Programming (Part 2)
第 6 週OpenMP Programming (Part 1)
第 7 週OpenMP Programming (Part 2)
第 8 週Midterm Review - nBody
第 9 週Midterm Exam (machine test)
第 10 週MPI Programming (Part 1)
第 11 週MPI Programming (Part 2)
第 12 週Parallel Program Development (Part 1)
第 13 週Parallel Program Development (Part 2)
第 14 週CUDA/GPU Programming (Part 1)
第 15 週CUDA/GPU Programming (Part 2)
第 16 週CUDA/GPU Programming (Part 3)
第 17 週CUDA/GPU Programming (Part 4)
第 18 週Project Presentation
教科書

1.(Reference) Parallel Programming for Multicore and Cluster Systems, Thomas Rauber and Gudula Runger, 1st Edition, Springer-Verlag, 2010 2.(Reference) Parallel Programming in C with MPI and OpenMP, Michael J. Quinn, McGraw-Hill, 2003. 3.(Reference) An Introduction to Parallel Programming, Peter Pacheco, Morgan Kaufmann Publishers Inc., 2012. 4.Other supplementary materials from Intel, NVIDIA and etc.

Office Hours
地點
ED700
時間
Office Hours: Wednesdays 13:30-15:20
聯絡方式
email: opwen@g2.nctu.edu.tw / phone: ext 31273