Parallel Programming in C for Multiprocessor 多處理機平行程式設計 朱治平 成功大學資訊工程系.

Slides:



Advertisements
Similar presentations
CSCI 4125 Programming for Performance Andrew Rau-Chaplin
Advertisements

Distributed Systems CS
Molecular Biomedical Informatics 分子生醫資訊實驗室 Web Programming 網際網路程式設計 1.
Machine Learning & Bioinformatics Tien-Hao Chang (Darby Chang) Machine Learning & Bioinformatics 1.
Master/Slave Architecture Pattern Source: Pattern-Oriented Software Architecture, Vol. 1, Buschmann, et al.
Bioinformatics Programming EE, NCKU Tien-Hao Chang (Darby Chang)
楊竹星 國立成功大學電機工程系 98學年第一學期
中華通訊大學部課程規劃流程圖 基礎課程核心課程應用課程 程式設計 I,II 微處理機 I,II 數位邏輯 FPGA 無線通訊 MAC 靭體設計 計算機應用 / 通訊靭體設計專業領域 大ㄧ大二 大三大四 嵌入式 系統專題 專業選修專題設計 II 硬體描述語言 FPGA+HDL 無線通訊 嵌入式系統 專題設計.
 課程網頁 :  講師姓名 : 張苑 ( ㄩㄢˋ ) 瑩  實驗室 : 資電館 734 室 
萬能科技大學網路現況與經驗分享 電算中心系統工程組 宋崇宇. 萬能科技大學設有二專、二技、四技、 碩士等學制,全校學生近萬人,教職員 工四百多人。 本校設有工程、管理、電資三個學院, 經營管理、工程科技、資訊管理三個研 究所及十六學系。
1 Course Information Parallel Computing Fall 2008.
Chapter 0 Computer Science (CS) 計算機概論 教學目標 瞭解現代電腦系統之發展歷程 瞭解電腦之元件、功能及組織架構 瞭解電腦如何表示資料及其處理方式 學習運用電腦來解決問題 認知成為一位電子資訊人才所需之基本條 件 認知進階電子資訊之相關領域.
1 st Year2 nd Year3 rd Year4 th Year FallSpringFallSpringFallSpringFallSpring 資料庫實務 (Database Practices) 資料庫系統 (Database System) 人工智慧 (Artificial Intelligence)
1 Course Information Parallel Computing Spring 2010.
EGR 280 Design and Analysis of Electromechanical Systems
CS1103 電機資訊工程實習 Department of Computer Science National Tsing Hua University.
1 Syllabus Computer Network 計算機網路 賴秉樑 Dept. of Electronic Engineering National Chin-Yi University of Technology Spring 2008.
演算法 李朱慧. 演算法的課程目的 學習已知常用的演算法 分析程式複雜度 複雜度 vs 執行時間 學習思考過程方式.
鄭瑞興的個人簡介 中山資工所 鄭瑞興.
Experiencing Cluster Computing Class 1. Introduction to Parallelism.
Webometrics 網路大學排名分析 資工系助理教授兼圖資處資訊應用組組長 陳嘉平 資料收集:圖資處資訊應用組潘筱薇、資工系許峰閣.
CS 524 – High- Performance Computing Outline. CS High-Performance Computing (Wi 2003/2004) - Asim LUMS2 Description (1) Introduction to.
數位家庭教學推動聯盟中心 數位家庭軟體工程 第一年教材編列進度報告 國立台灣海洋大學資訊工程學系 梁德容.
統計學 ( 二 ) 朝陽科技大學工業工程與管理系副教授洪弘祈 Statistics II2 企業與統計之關係 n 品質管制 n 預測統計與市場調查 n 績效與人事管理 n 例行報告之方案評估與決策參考 n 製程改善 n 研發能力之提昇 n 產品可靠度 n 生產管制.
現代密碼學 Contemporary Cryptography. 2 Course Information Instructor: 左瑞麟 (Raylin Tso) Office: 大仁樓
Parallel Programming Henri Bal Vrije Universiteit Amsterdam Faculty of Sciences.
Parallelization: Conway’s Game of Life. Cellular automata: Important for science Biology – Mapping brain tumor growth Ecology – Interactions of species.
Jawwad A Shamsi Nouman Durrani Nadeem Kafi Systems Research Laboratories, FAST National University of Computer and Emerging Sciences, Karachi Novelties.
1 Parallel computing and its recent topics. 2 Outline 1. Introduction of parallel processing (1)What is parallel processing (2)Classification of parallel.
Parallel and Distributed Computing Overview and Syllabus Professor Johnnie Baker Guest Lecturer: Robert Walker.
資訊工程系智慧型系統實驗室 iLab 南台科技大學 1 Optimizing Cloud MapReduce for Processing Stream Data using Pipelining 出處 : 2011 UKSim 5th European Symposium on Computer Modeling.
國立屏東商業技術學院 資訊工程系 ( 所 ) 多媒體技術發展實驗室 Laboratory of Multimedia Technology Development Department of Computer Science and Information Engineering Nation Pingtung.
Copyright © 2010, SLA-aware load balancing for cloud datacenters 指導教授:王國禎 學生:黎中誠 國立交通大學資訊工程系 行動計算與寬頻網路實驗室.
CIS4930/CDA5125 Parallel and Distributed Systems Florida State University CIS4930/CDA5125: Parallel and Distributed Systems Instructor: Xin Yuan, 168 Love,
Prof. Shih-Hao Hung 洪士灝 Dept. of CSIE & GINM 資工網媒 [ ]
Parallelization: Area Under a Curve. AUC: An important task in science Neuroscience – Endocrine levels in the body over time Economics – Discounting:
Operating Systems 作業系統 熊博安 國立中正大學資訊工程學系 EA-101, EA001.
ITCS 6/8010 CUDA Programming, UNC-Charlotte, B. Wilkinson, Jan 3, 2011outline.1 ITCS 6010/8010 Topics in Computer Science: GPU Programming for High Performance.
會議時間 : 99 年 4 月 19 日 ( 星期一 ) 會議地點 : 清華大學 國際會議廳 報名網頁 : 議程 時間場次活動內容 09:00~09:20 報到 09:20~10:20.
演算法 ( 課號 : ) 內容 : 本課程是電機工程學系計算機類課程之必選課,對象以對利 用計算機來解決問題有興趣的同學為主。本課程主要是教授 基本的演算法分析與設計技巧,並整理及比較目前最重要之 演算法。 Theme: What is the best algorithm for.
Computer-Aided Verification 計算機輔助驗證 (Spring 2006) 熊博安 國立中正大學資訊工程研究所
2010/09/141 計算機概論計算機概論 國立成功大學化工系凌漢辰副教授 93C12 研究室 Tel: Ext (O)
Lecture 0. Course Introduction Prof. Taeweon Suh Computer Science Education Korea University COM503 Parallel Computer Architecture & Programming.
資訊科技專案管理 授課教師 : 王耀德 研究室 : 靜宜大學 二研 105 電話 : (04) # Web site:
電腦網路 By 王丕中 國立中興大學 資訊科學系.
數位電路導論 Introduction to Circuits Theory and Digital Electronics
控制與訊號處理實驗室成果簡介 指導教授 陳博現教授 本實驗室研究主題主要分為三類:第一類為非線性隨機控制及量子系統 控制應用。第二類是訊號處理及無線通訊應用。第三類是整合訊號及控制 在系統生物學及生物資訊的應用。相關研究成果分類介紹如下: 一、非線性隨機控制設計及量子系統追蹤控制 :( 最近成果及目前進行研究.
Parallel and Distributed Computing Overview and Syllabus Professor Johnnie Baker Guest Lecturer: Robert Walker.
Computer Architecture 計算機組織 成大資訊系 蘇銓清 Fall Syllabus Instructor – 蘇銓清 Prof. Chuan-Ching Sue Tel : (06) ext Fax : (06)
Parallel Programming in C for Multiprocessor 多處理機平行程式設計 朱治平 成功大學資訊工程系.
LOGO Parallel computing technique for EM modeling makai 天津大学电子信息工程学院 School of Electronic Information Engineering.
CSci6702 Parallel Computing Andrew Rau-Chaplin
無線網路安全性設計實務 課程名稱無線網路安全性設計實務 課程編碼 G0M04001 系所代碼 / 名稱 0G / 資工系 開課班級碩研資工二甲 開課教師許子衡 學分 3.0 時數 3 必選修選修 南台科技大學 課程資訊.
Distributed Real-time Systems- Lecture 01 Cluster Computing Dr. Amitava Gupta Faculty of Informatics & Electrical Engineering University of Rostock, Germany.
Parallel Programming Henri Bal Vrije Universiteit Faculty of Sciences Amsterdam.
ELEC 1009E-1B02 Introduction to Computer Science 計算機概論 2011 Fall.
Introduction to Computer Science Kun-Mao Chao ( 趙坤茂 ) Department of Computer Science and Information Engineering National Taiwan University, Taiwan ( 台大資訊工程系.
Parallel Programming Henri Bal Vrije Universiteit Faculty of Sciences Amsterdam.
ELEC 1009E-1B02 Introduction to Computer Science 計算機概論 2010 Fall.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 April 28, 2005 Session 29.
系統程式 System Programming
Homework 1.
Parallel Programming By J. H. Wang May 2, 2017.
Parallel and Distributed Algorithms (CS 6/76501) Spring 2007
Parallel and Distributed Computing Overview
Parallel and Distributed Algorithms Spring 2005
AI-ECON Research Center Department of Economics National Chengchi University.
Computer-Aided Verification 計算機輔助驗證 (Spring 2004)
System Administration Practice
Edit Distance 張智星 (Roger Jang)
Presentation transcript:

Parallel Programming in C for Multiprocessor 多處理機平行程式設計 朱治平 成功大學資訊工程系

Questions What is parallel computing? What is a parallel computer? - multicomputers - centralized multiprocessors (symmetrical multiprocessor or SMP) What is parallel programming? - algorithm level - statement level Is parallel programming really necessary? Why should I program using MPI (Message Passing Interface) and OpenMP?

Areas with complex scientific problems Quantum chemistry, statistical mechanics, and relativistic physics Cosmology and astrophysics Computational fluid dynamics and turbulence Material design and superconductivity Biology, Pharmacology, genome sequencing, genetic engineering, protein folding, enzyme activity, cell modeling Medicine, and modeling of human organs Global weather and environmental modeling

Other state-of-the-art parallel programming models Cuda (proposed by Nvidia) - in GPGPU environment - C and C-extended syntax MapReduce (proposed by Google) - for data set specific parallel applications

Course Objective To train a student to be with the capability of (1) building a cluster of computers supporting parallel execution of program, and (2) programming parallel computers based on parallel algorithms and/or parallel statements in order to solve time- consuming scientific problems.

6 Prerequisites Program Design Data Structures (Helpful) Algorithms (Helpful) Computer Architecture (Helpful) Operating Systems (Helpful)

7 Grading Homework (50%) - Parallel Programming - Hand-written Assignments Final Exam (30%) Final Project (20%)

Lab Exercises 1. Building a cluster (2 persons/team) 2. Distributed memory programming in MPI - Algorithm-level parallel programming - Statement-level parallel programming - Transforming a sequential program into a parallel program 3. Shared memory programming with OpenMP 4. Parallel programming with hybrid MPI/OpenMP 5. Learning the use of parallel tools to analyze sequential program

Grading criteria for parallel programming Coding standard (30%) Correctness (40%) Performance (Speedup) (30%)

Teaching Assistant 姓名 : 朱嘉葦 ( 碩二 ) Office: 雲平大樓五樓 510 室 ( 軟體發展 實驗室 )

Reference Books 1. Parallel Programming in C with MPI and OpenMP Michael J. Quinn Mc Graw Hill Company 2. Using OpenMP: Portable Shared Memory Parallel Programming Barbara Chapman, Gabriele Jost, Ruud van der Pas The MIT Press

Web Site Web Site 12 資工系  軟體發展實驗室網頁

Demonstration Finding a shortest path by using ant algorithm - sequential version - parallel version