并行计算大学课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
参考书
1.
Parallel Programming
Techniques and Applications Using Networked
Workstations and Parallel Computers Barry Wilkinson & Michael Allen
高等教育出版社 影印版
2.
并行程序设计
4. 事务处理的高性能需求——Google数据中心
Google在全球分布着众多的数据中心,共有36个数据 中心。 其中美国有19个、欧洲12个、俄罗斯1个、南美 1个和亚洲3个。
二.高性能计算解决什么样的问题?
当代科学与工程问题的的特点
应用需求: 计算密集 数据密集 网络密集 对计算机的要求: 计算速度快 存储容量大 访问带宽和连网速率大
负载平衡和终止检测
课程介绍
第四部分 实践教学 熟悉北京工业大学高性能计算平台(Linux
环境),编写和调试并行程序
共享存储并行编程(OpenMP多核)
基于多线程的程序设计方法
课程介绍
第六部分 算法及应用(自学)
排序算法
数值算法,如:矩阵运算,线性方程组求解
非数值算法,如:图像Leabharlann Baidu理
课时安排
课堂教学:32学时 实际学时:28学时
150M次查询/天 (2000次/s) 100 个国家的用户 可索引80亿个文档
Google基础架构
>200,000台商业Linux服务器;
存储容量>5 petabytes; 可索引 >80亿个网页;
资本和运营成本只是大型商业服务器的一小部分;
访问量的增长为20-30%/月。
二.高性能计算解决什么样的问题?
海洋系统 自然系统 水气冰冻圈
陆地圈
人工仿真系统
生物圈
人类圈
二.高性能计算解决什么样的问题?
1. 地球系统科学——大气圈建模 大气环流的仿真
需求解大规模偏微分方程组 1分钟时间间隔100个浮点运算/网格点
对计算的需求(Computational requirements):
为确保时效需1分钟执行5 x 1011flops ≈ 8 Gflops
第一部分 并行计算与并行计算机概述
第二部分 基于消息传递的程序设计及机群系统 第三部分 并行处理技术 第四部分 实践教学 第五部分 共享存储并行编程(自学)
第六部分 算法及应用(自学)
课程介绍
第一部分 并行计算及并行计算机概述 第一章 高性能计算概述
一.什么是高性能计算? 二.高性能计算解决什么样的问题? 三.我们身边的并行计算机
1Petabytes 1Exabytes
1012 bytes
1015 bytes 1018 bytes
一.什么是高性能计算?
一.什么是高性能计算?
第一章 高性能计算概述
一.什么是高性能计算? 二.高性能计算解决什么样的问题? 三.我们身边的并行计算机
二.高性能计算解决什么样的问题?
高性能计算机用来解决国民经济建设、社会发展进步、国 防建设与国家安全等方面一系列的挑战性的计算问题。 2011年6月全球500强超级计算机应用领域分布
二.高性能计算解决什么样的问题?
3. 全国电网在线预警计算(清华大学)
实时电网监控(发现故障点) 离线数据分析和决策 根据预定义操作表实施电网控制
二.高性能计算解决什么样的问题?
3. 全国电网在线预警计算(清华大学)
中国国家电力系统(2005)
10188 个监测点 1072 个发电机 3003 个负荷 13499 个输电线路 4个高压直流输电线路
课件开放信箱: parcomputing@yahoo.com.cn 密码:bxjs2011 我的Email地址:liujianl@bjut.edu.cn
第一章 高性能计算概述
一.什么是高性能计算? 二.高性能计算解决什么样的问题? 三.我们身边的并行计算机
一.什么是高性能计算?
并行计算(Parallel computing)的描述
一.什么是高性能计算?
并行处理(parallel processing)
from http://www.webopedia.com/ The simultaneous use of more than one CPU to execute a program. Ideally, parallel processing makes a program run faster because there are more engines (CPUs) running it. In practice, it is often difficult to divide a program in such a way that separate CPUs can execute different portions without interfering with each other.
存储能力的衡量单位
1MB 1GB 1Megabytes 1Gigabytes 106 bytes 109 bytes
1TFlops
1PFlops 1EFlops
1Teraflops
1Petaflops 1Exaflops
1012 flops
1015 fops 1018 fops
1TB
1PB 1EB
1Terabytes
Barry Wilkinson & Michael Allen著 陆鑫达 等译 机械工业出版社(2002)(2005第2版)
3.
Foundations of Multithreaded, Parallel, and Distributed Programming
Gregory R. Andrews 高等教育出版社 影印版
from http://en.wikipedia.org/ A form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently ("in parallel"). There are several different forms of parallel computing: bit-level, instruction level, data, and task parallelism. Parallelism has been employed for many years, mainly in high-performance computing.
并行计算
Parallel Computing 刘建丽
1
并行计算是利用多个处理器协同求解一个应用问
题的计算方法。
具体的计算方法:
将被求解的问题分解为若干部分 每个部分分别由不同的处理器同时进行计算
实现上述方法的程序称为并行程序;具有多个处 理器的、并能够协同解决问题的计算机称为并行 计算机。
课程介绍
一.什么是高性能计算?
高性能计算( high-performance computing)
from http://www.webopedia.com/ A branch of computer science that concentrates on developing supercomputers and software to run on supercomputers. A main area of this discipline is developing parallel processing algorithms and software: programs that can be divided into little pieces so that each piece can be executed simultaneously by separate processors.
二.高性能计算解决什么样的问题?
2. 石油天然气的勘探
震动车发射信号 地震检波器接收反射波 数据传送到仪器车进行分析
二.高性能计算解决什么样的问题?
2. 石油天然气的勘探
陆上三维地震勘探数据量一般为1TB~5TB;海上三 维地震勘探数据量一般为5TB~20TB。随着采集技术 的进步和勘探精度要求的不断提高,采集的地震数据 量越来越大。 高精度地震成像是一项关键技术,其计算量非常巨大 。以海洋勘探工区为例,6.2TB的数据在128 CPU的 集群计算机上进行处理,克希霍夫积分法需要运行 111天。基于波动方程延拓技术的炮域三维叠前偏移 方法则需要计算6640天(串行)。 解决如此大规模的计算问题,需要研究高性能计算和 存储平台的支持。
一.什么是高性能计算?
高性能计算(high-performance computing)
from http://en.wikipedia.org/ HPC uses supercomputers and computer clusters to solve advanced computation problems. Today, computer systems approaching the teraflopsregion are counted as HPC-computers. HPC integrates systems administration (including network and security knowledge) and parallel programming into a multidisciplinary field that combines digital electronics, computer architecture, system software, programming languages, algorithms and computational techniques.
二.高性能计算解决什么样的问题?
二.高性能计算解决什么样的问题?
1. 地球系统科学——发展的趋势
从对局部的个别学科的研究发展为对整个地球系统及其各部分相 互关系影响的研究, 从定性的研究发展为对地球动力学过程的定量化研究。 先进的新技术使地球科学家获得了空前丰富的观测资料,而对这 些资料的处理、分析和深入理解,离不开现代计算科学和技术。 大气圈
一.什么是高性能计算?
并行处理
串行处理:多个任务在一个处理单元上依次执行
任务1 任务2 单处理器
并行处理:多个任务在多个处理单元上同时执行
任务1
任务2
处理器1
处理器2
一.什么是高性能计算?
高性能计算的衡量单位
计算能力的衡量单位(flops)
1MFlops 1GFlops 1Megaflops 1Gigaflops 106 flops 109 flops
以天为单位的7 天天气预报需要 56 Gflops
以月为单位的50 年气候预测需要 4.8 Tflops 以12小时为单位的50 年预测 288 Tflops
如果提高网格解析度则计算复杂性将呈8倍或16倍增加 更高的精确预测模型则需要综合考虑大气、海洋、冰川、 陆地,以及地球化学等因素 千年气候模型分析 目前无法对此进行有效计算
第二章 并行计算机及并行计算的性能评价
一.并行计算机
二.并行计算的性能评价
课程介绍
第二部分 消息传递计算 基于消息传递的程序设计基础 利用工作站机群实现程序的并行化 基于消息传递的并行程序评价
课程介绍
第三部分 并行处理技术
完全并行计算 利用实例分别讲 解各种处理技术
划分和分治策略
流水线计算
同步计算
高性能计算机
二.高性能计算解决什么样的问题?
层出不穷的应用问题往往需要更高计算速度的计算机来实 现,从而推动了计算机的性能,尤其是计算速度和存储器 容量的不断提高;
对于每一个监测点:
10个动态进程 0.01s 时间步 在安腾2上运行,1G CPU; 串行算法需要25s; 经过并行实现一个时间步(0.01s)的仿真时间为0.6s。
经过一系列优化一个时间步(0.01s)的仿真时间为0.006s。
二.高性能计算解决什么样的问题?
4. 事务处理的高性能需求——Google信息查询