高性能计算导论:并行计算性能评价.ppt
《高性能计算导论:并行计算性能评价.ppt》由会员分享,可在线阅读,更多相关《高性能计算导论:并行计算性能评价.ppt(48页珍藏版)》请在三一办公上搜索。
1、并行计算性能评价,上海大学计算机工程与科学学院,计算的本质串行计算模型图灵机并行计算模型 计算效能评价,计算模型与效能评价,高性能计算导论,“并行计算”研究的四大分支,并行计算机体系结构并行算法并行程序设计并行计算的性能评测而介于并行计算机体系结构与并行算法之间的是并行计算模型。,Performance Evaluation,并行计算效能评价,程序性能评价与优化,给定并行算法,采用并行程序设计平台,通过并行实现获得实际可运行的并行程序后,一个重要的工作就是,在并行机上运行该程序,评价该程序的实际性能,揭示性能瓶颈,指导程序的性能优化。性能评价和优化是设计高效率并行程序必不可少的重要工作。,并行
2、程序执行时间,评价并行程序的性能之前,必须清楚并行程序的执行时间是由哪些部分组成的。众所周知,独享处理器资源时,串行程序的执行时间近似等于程序指令执行花费的CPU 时间。但是,并行程序相对复杂,其执行时间(execution time)等于从并行程序开始执行,到所有进程执行完毕,墙上时钟走过的时间,也称之为墙上时间(wall time)。对各个进程,墙上时间可进一步分解为:计算CPU 时间通信CPU 时间同步开销时间进程空闲时间(是由同步导致的),并行程序执行时间,计算CPU 时间 进程指令执行所花费的CPU 时间,它可以分解为两个部分,一个是程序本身指令执行占用的CPU 时间,即通常所说的用
3、户时间(user time),主要包含指令在CPU 内部的执行时间和内存访问时间,另一个是为了维护程序的执行,操作系统花费的CPU 时间,即通常所说的系统时间(system time),主要包含内存调度和管理开销、I/O 时间、以及维护程序执行所必需要的操作系统开销等。通常地,系统时间可以忽略。,并行程序执行时间,通信CPU 时间 包含进程通信花费的CPU 时间。同步开销时间 包含进程同步花费的时间进程空闲时间 当一个进程阻塞式等待其他进程的消息时,CPU 通常是空闲的,或者处于等待状态。进程空闲时间是指并行程序执行过程中,进程所有这些空闲时间的总和。显然,进程的计算CPU 时间小于并行程序的
4、墙上时间,而并行程序的墙上时间才是用户真正关心的时间,是评价一个并行程序执行速度的时间。,2023/11/6,9/59,并行算法设计及效能分析,并行算法效能分析,并行加速比,并行效率,可扩展性(简单表述)处理机数p增加时,并行效率Ep不显著下降。,效能分析分析说明,需要说明的是,T1 指处理器个数为1 时,并行程序的执行时间。通常情形下,T1 大于TS,因为并行程序往往引入一些冗余的控制和管理开销。加速比和效率是衡量一个并行程序性能的最基本的评价方法。显然,执行最慢的进程将决定并行程序的性能。在以上加速比和效率的定义中,有一个基本的假设,要求并行机的各个处理器是同构(homogeneous)的
5、,即并行机各个处理器的结构完全一致(包含CPU 类型、内存大小与性能、cache 特征等等),或者说,串行程序在各个处理器执行的墙上时间相等。,效能分析分析说明,如果并行机的各个处理器功能不一致,称之为异构并行机。对此,以上加速比和效率的定义不是很合适。其中,两个突出的问题就是,串行程序的执行时间是选择最快的处理器运行,还是选择最慢的处理器运行?在效率定义中,处理器个数选择为P 是否合适?一个比较好的方法就是,将所有处理器以最快的处理器为基准,进行归一化处理。,并行程序性能评价方法,以上介绍的加速比和效率,只能反映并行程序的整体执行性能,但是,无法反映并行程序的性能瓶颈。性能评价的主要目的在于
6、,揭示并行程序的性能瓶颈,指导并行程序的性能优化。因此,有必要进一步分解加速比和效率,提出更细致的性能评价方法。,并行计算性能评测,3.1 并行机的一些基本性能指标3.2 加速比性能定律3.2.1 Amdahl定律3.2.2 Gustafson定律3.2.3 Sun和Ni定律3.3 可扩放性评测标准3.3.1 并行计算的可扩放性3.3.2 等效率度量标准3.3.3 等速度度量标准3.3.4 平均延迟度量标准 3.4 基准测试程序,并行计算的性能评测,机器级的性能评测CPU和存储器的某些基本性能指标并行通信开销机器的成本、价格、和性能/价格比等算法级的性能评测加速比效率可扩展性程序级的性能评测基
7、本测试程序数学库测试并行测试程序等,并行机基本性能参数一览表,工作负载,工作负载(荷):计算操作数目执行时间掠过时间:墙上时间所执行的指令数目所完成的浮点运算数,CPU的某些基本性能指标,工作负载执行时间:程序从开始到结束的时间。浮点运算数 指令数目:通常用百万条指令并行执行时间T n:T comput 为计算时间,T paro 为并行开销时间,T comm为相互通信时间 T n=T comput+T paro+T comm 例:估计APRAM模型下执行时间 其中T1为串行时间,n为处理器数,T为使用无限多处理器且不考虑T paro与T comm 的并行执行时间,存储器性能,存储器的层次结构(
8、C,L,B)-容量C,延迟L,带宽B估计存储器的带宽RISC指令 add r1,r2,r3,寄存器 8bytes,主频 100MHzB=3*8*100*106 B/s=2.4GB/s,并行与通信开销,并行和通信开销:相对于计算很大。PowerPC(每个周期 15ns 执行4flops;创建一个进程1.4ms 可执行372000flops)开销的测量:乒-乓方法(Ping-Pong Scheme)节点0发送m个字节给节点1;节点1从节点0接收m个字节后,立即将消息发回节点0。总的时间除以2,即可得到点到点通信时间,也就是执行单一发送或接收操作的时间。可一般化为热土豆法(Hot-Potato),也
9、称为救火队法(Fire-Brigade)01 2 n-1 0 即从节点0发送m字节给1,节点1给节点2,依次类推,最后节点n-1再将其返回给0,最后时间再除以n即可。,Ping-Pong Scheme,if(my _node _id=0)then/*发送者*/start _time=second()send an m-byte message to node 1/发送 receive an m-byte message from node 1/接收end_time=second()total_time=end_time start_time communication_timei=total_
10、time/2 else if(my_node_id=1)then/*接收者*/receive an m-byte message from node 0 send an m-byte message to node 0endif,并行开销的表达式:点到点通信,通信开销 t(m)=t0+m/r通信启动时间 t0渐近带宽r:传送无限长的消息时的通信速率m为传输的字节数 半峰值长度m1/2:达到一半渐近带宽所要的消息长度 特定性能0:表示短消息带宽 t0=m1/2/r=1/0,并行开销的表达式:组通信,典型的组通信有:播送(Broadcasting):处理器0发送m个字节给所有的n个处理器-广播收集
11、(Gather):处理0接收所有n个处理器发来在消息,所以处理器0最终接收了m x n个字节;散射(Scatter):处理器0发送了m个字节的不同消息给所有n个处理器,因此处理器0最终发送了m x n个字节;全交换(Total Exchange):每个处理器均彼此相互发送m个字节的不同消息给对方,所以总通信量为mxn2个字节;循环移位(Circular-shift):处理器i发送m个字节给处理器i+1,处理器n-1发送m个字节给处理器0,所以通信量为m x n个字节。,机器的成本、价格与性/价比,机器的成本与价格机器的性能/价格比 Performance/Cost Ratio:系指用单位代价(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 性能 计算 导论 并行 评价
链接地址:https://www.31ppt.com/p-6493765.html