高性能复习提纲答案.docx
《高性能复习提纲答案.docx》由会员分享,可在线阅读,更多相关《高性能复习提纲答案.docx(10页珍藏版)》请在冰豆网上搜索。
高性能复习提纲答案
高性能计算(并行计算)复习提纲
第一章并行计算机系统及其结构模型
1.了解并行计算机系统互联网络及其分类
不同带宽与距离的互连技术:
总线、SAN、LAN、MAN、WAN
1,静态互联网络:
是指处理单元之间有着固定连接的一类网络,在程序执行期间,这种点到点的连接不变。
典型的静态网络有一维线性阵列、二维网孔、树连接、超立方网络、立方环、洗牌交换网、蝶形网络等。
2,动态互联网络:
是用开关单元构成的,可按应用程序的要求动态的改变连接组态。
典型的动态网络包括总线、交叉开关和多级互连网络等,3,标准互联网络
2.并行计算机系统结构,参见图1.20(P23)五种结构,要求理解这几种结构的硬件组成及工作方式。
2,并行计算机系统结构:
行向量处理机pvp:
硬件:
向量处理机vp、共享存储器SM。
工作方式:
高带宽的交叉开关网络将vp连向共享存储模块,存储器可以以兆字节每秒的速度想处理器提供数据。
通常使用向量寄存器和指令缓冲器。
对称多处理机SMP:
硬件:
商品微处理器(具有片上或外设高速缓存)、共享存储器、
I/O设备。
工作方式:
微处理器由总线或交叉开关连向共享存储器。
每个处理器可同等的访问共享存储器、I/O设备和操作系统服务。
MPP一般是指超大型计算机系统,它具有如下特性:
①处理节点采用商品微处理器;②系统中有物理上的分布式存储器;③采用高通信带宽和低延迟的互连网络;④能扩放至成百上千乃至上万个处理器;⑤它是一种异步的MIMD机器,程序系由多个进程组成,每个都有其私有地址空间,进程间采用传递消息相互作用
DSM分布式共享存储多处理机
高速缓存目录DIR用以支持分布高速缓存的一致性。
DSM和SMP的主要差别是,DSM在物理上有分布在各节点中的局存从而形成了一个共享的存储器。
对用户而言,系统硬件和软件提供了一个单地址的编程空间.
COW工作站机群
机群往往是低成本的变形的MPP。
COW的重要界线和特征是:
①每个节点都是一个完整的工作站(不包括监视器、键盘、鼠标等),一个节点也可以是一台PC或SMP;②各节点通过一种低成本的商品(标准)网络互连(;③各节点内总是有本地磁盘④节点内的网络接口是松散耦合到I/O总线上的,⑤一个完整的操作系统驻留在每个节点中,而MPP中通常只是个微核,COW的操作系统是工作站UNIX,加上一个附加的软件层以支持单一系统映像、并行度、通信和负载平衡等。
3并行计算机的几种访问存储模型。
访问存储模型:
UMA均匀访问存储模型。
特点:
物理存储器被所有处理器均匀共享。
所有的处理器访问任何存储单元取相同的时间。
每台处理器可带私有高速缓存。
外围设备也可以一定形式共享。
NUMA非均匀访问存储器,特点:
被共享的存储器在物理上是分布在所有的处理器中。
其本地存储器的集合就组成了全局地址空间。
处理器访问存储器的时间是不一样的:
访问本地存储器和群内共享存储器较快,访问外地存储器或全局共享存储器较慢。
每台处理器照例可以带有私有高速缓存,且外设也可以某种形式共享。
COMA全高速缓存存储访问特点:
1,各处理器节点中没有存储层次结构,全部高速缓存组成了全局地址空间,2,利用分布的高速缓存目录D进行远程高速缓存的访问。
3,Coma的高速缓存容量一般都大于2级高速缓存容量。
4,使用coma的时,数据开始时可任意分配。
CC-NUMA高速缓存一致性非均匀存储访问模型:
特点:
1,绝大多数的商用cc-numa多处理机系统都使用基于目录的高速缓存一致性协议,2,他在保留的smp结构易于变成优点的同时,也改善了常规smp的可扩放性问题。
3,cc-numa实际上是一个分布共享存储的dsm多处理机系统,4,最显著的优点是程序员无需明确地在节点上分配数据,系统的硬件和软件开始时自动在各节点分配数据,在运行期间,高速缓存一致性硬件会自动地将数据迁移至要用到它的地方。
NORMA非远程访问存储模型:
特点:
1,所有存储器均是私有的,2,绝大多数都不支持远程存储器的访问。
3,在dsm中norma就消失了。
4并行计算机存储组织分几层,这些层次有什么特点。
并行计算机存储组织:
分为五层
Cpu内寄存器:
特点:
寄存器的分配由编译器完成
高速缓存特点:
速度快,平滑处理器与主存储器的速度,对程序员透明
主存储器:
特点:
是计算机的基本存储器,它由存储管理部件和操作系统共同管理。
磁盘存储器:
特点:
看做是最高层的联机存储器,它保存系统程序,某些用户程序、数据集
磁带机:
特点:
是脱胎存储器、用作后援存储器,它保存当前或过去的用户程序副本、处理结果和文件
5高速缓存一致性的必要性,确保高速缓存一致性的方法。
5,高速缓存一致性:
1、一致性问题
在多处理器系统中,如果一个处理器改写了高速缓存中的内容,但是另一个处理器相连的高速缓存数据不变,造成数据不一样。
2、造成不一致的原因
1、由共享可写数据造成的不一致;
2、由进程迁移造成的不一致;
3、由绕过高速缓存的I/O操作造成的不一致。
3、一致性的做法
1、监听总线协议,在基于总线连接的多处理器系统中,包括两个操作如下
写无效:
本地高速缓存中的数据块更新时使所有远程的副本无效
写更新:
本地高速缓存中的数据块更新时广播给该数据块的所有高速缓存
2、基于目录的协议,对于多级互连网络的多处理器系统
第二章当代并行计算机系统介绍
1.对称多处理系统与非对称多处理系统的概念及工作方式。
1,对称多处理系统的概念和工作方式
对称多处理器:
所有处理器都能等同的访问所有I/O设备,能同样的运行执行的并行计算机系统。
SMP:
采用商用微处理器,通常有片上和片外Cache,基于总线连接,集中式共享存储,UMA结构。
非对称多处理系统的概念:
只有一台或一组处理器能执行操作系统并能操作I/O,而其余处理器无I/O能力,只在主处理器的监控下执行用户代码
2.机群系统的概念,MPP机群、工作站机群的工作方式。
是互相连接的多个独立计算机的集合,这些计算机可以是单机或多处理器系统(PC、工作站或SMP),每个结点都有自己的存储器、I/O设备和操作系统。
MPP机群工作方式:
工作站机群:
特点:
分布式存储,MIMD,工作站+商用互连网络,每个节点是一个完整的计算机,有自己的磁盘和操作系统,而MPP中只有微内核
机群系统:
互相连接的多个独立计算机的集合,这些计算机可以是单机或多处理器系统(PC、工作站或SMP),每个结点都有自己的存储器、I/O设备和操作系统。
机群对用户和应用来说是一个单一的系统,它可以提供低价高效的高性能环境和快速可靠的服务。
工作站机群:
是实现并行计算的一张新主流技术,属于分布式存储的MIMD并行计算机结构,工作站+商用互连网络,每个节点是一个完整的计算机,有自己的磁盘和操作系统,而MPP中只有微内核
MPP工作方式:
成百上千个处理器组成的大规模计算机系统,规模是变化的。
NORMA结构,高带宽低延迟定制互连。
可扩放性:
Mem,I/O,平衡设计
系统成本:
商用处理器,相对稳定的结构,SMP,分布
通用性和可用性:
不同的应用,PVM,MPI,交互,批处理,互连对用户透明,单一系统映象,故障。
工作站机群工作方式:
设计策略:
机群体系结构
标准环境
标准编程模型
系统可用性
精选的单一系统映像
第三章并行计算的性能评测
1.性能价格比概念
机器的性能/价格比Performance/CostRatio:
系指用单位代价(通常以百万美元表示)所获取的性能(通常以MIPS或MFLOPS表示)
2.工作负载概念
工作负载就是计算操作的数目,通常可用执行时间,所执行的指令数目和所完成的浮点运算数三个物理量来度量它(执行时间:
它课定义为在特定的计算机系统上的一个给定的应用所占用的总时间,系指应用程序从开始到结束所掠过时间。
)
3.并行执行时间概念
并行执行时间Tcomput为计算时间,Tparo为并行开销时间,Tcomm为相互通信时间
Tn=Tcomput+Tparo+Tcomm
4.加速比的概念。
并行系统的加速比是指对于一个给定的应用,并行算法(或并行程序)的执行速度相对于串行算法(或串行程序)的执行速度加快了多少倍。
适用于固定计算负载的Amdahl定律
适用于可扩发性问题的Gustafson定律
受限于存储器的SunNi定律
5.可扩放性的概念。
可扩放性最简朴的含意是在确定的应用背景下,计算机系统(或算法或程序等)性能随处理器数的增加而按比例提高的能力。
可扩放性评测标准
等效率度量标准
等速度度量标准
平均延迟度量标准
第四章并行算法的设计基础
1.掌握PRAM模型的原理与工作方法(参见作业)。
1.PRAM模型
PRAM模型描述模型,即并行随机存取机器,也称之为共享存储的SIMD模型,是一种抽象的并行计算模型。
在这种模型中,假定存在着一个容量无限大的共享存储器;有有限或无限个功能相同的处理器,且其均具有简单的算术运算和逻辑判断功能;在任何时刻各处理器均可通过共享存储单元相互交换数据。
根据处理器对共享存储单元同时读、同时写的限制,
PRAM模型又可分为:
①不允许同时读和同时写的PRAM模型,简记之为PRAM_EREW;
②允许同时读不允许同时写的PRAM模型,简记之为PRAM_CREW。
③允许同时读和同时写的PRAM模型,简记之为PRAM_CRCW。
显然,允许同时写是不现实的,于是又对PRAM_CRCW模型作了进一步的约定:
①只允许所有的处理器同时写相同的数,此时称为公共的PRAM_CRCW,简记之为CPRAM_CRCW;
②只允许最优先的处理器先写,此时称为优先的PRAM_CRCW,简记之为PPRAM_CRCW;
③允许任意处理器自由写,此时称为任意的PRAM_CRCW,简记之为APRAM_CRCW。
上述模型中,PRAM_EREW是最弱的计算模型,而PRAM_CRCW是最强的计算模型。
PRAM模型优点:
它特别适合于并行算法的表达、分析和比较;使用简单,很多诸如处理器间通信、存储管理和进程同步等并行机的低级细节均隐含于模型中;易于设计算法和稍加修改便可运行在不同的并行机上;且有可能在PRAM模型中加入一些诸如同步和通信等需要考虑的问题。
PRAM模型缺点:
PRAM是一个同步模型,这就意味着所有的指令均按锁步方式操作,用户虽感觉不到同步的存在,但它的确是很费时的;共享单一存储器的假定,显然不适合于分布存储的异步的MIMD机器;假定每个处理器均可在单位时间内访问任何存储单元而略去存取竞争和有限带宽等是不现实的。
2.并行算法的表达par-do、forall语句的用法。
par-do:
算法的若干步要并行执行
forall:
几个处理器同时执行相同的操作
3.并行算法的同步概念,通信函数send、receive用法
Send(X,i):
处理器发送数据X给Pi
Receive(Y,j):
处理器从Pj接收数据Y
4.设置同步障的原因与方法。
同步是在时间上强使各执行进程在某一点必须互相等待;在并行算法各进程异步执行过程中,为了确保个处理器的正确工作顺序以及对共享可写入数据的正确访问,程序员需要在算法的适当点设置同步点。
5.要求能阅读并行程序,具体例子参见作业答案。
第五章并行算法的一般设计策略
1.并行算法设计一般有哪三类策略?
5.1串行算法的直接并行化
发掘和利用现有串行算法中的并行性,直接将串行算法改造为并行算法。
5.2从问题描述开始设计并行算法
从问题本身描述出发,不考虑相应的串行算法,设计一个全新的并行算法
5.3借用已有算法求解新问题
找出求解问题和某个已解决问题之间的联系;
改造或利用已知算法应用到求解问题上。
第六章并行算法的基本设计技术
1.主要掌握划分、分治、平衡树设计技术。
划分法求解问题可分为两步
(1)将给定的问题劈成p个独立的几乎等尺寸的子问题。
(2)用P台处理器并行求解诸子问题。
并行分治设计步骤
将输入划分成若干个规模相等的子问题;
同时(并行地)递归求解这些子问题;
并行地归并子问题的解,直至得到原问题的解。
平衡树设计技术
设计思想
以树的叶结点为输入,中间结点为处理结点,由叶向根或由根向叶逐层进行并行处理。
均匀划分;方根划分技术;对数划分技术;功能划分技术
分治策略是一种问题的求解技术,其思想是将一个大而复杂的问题分解成若干特性相同的子问题分而治之。
并行分治法分为三步:
①将输入划分成若干个规模近于相等的子问题;②同时递归地求解各个子问题;③归并各子问题的解成为原问题的解。
平衡树方法是将输入元素作为叶节点构筑一棵平衡二叉树,然后自叶向根往返遍历。
2.要求能用这些技术写并行算法。
这些技术的基本运用除了可参考书上相关例子,着重看作业程序设计的答案。
第七章并行算法的一般设计过程
1.PCMA设计方法学的概念及设计过程。
概念
设计过程:
划分:
分解成小的任务,开拓并发性;
通讯:
确定诸任务间的数据交换,监测划分的合理性;
组合:
依据任务的局部性,组合成更大的任务;
映射:
将每个任务分配到处理器上,提高算法的性能
2.设计的时候怎样考虑负载平衡?
静态的:
事先确定;
概率的:
随机确定;
动态的:
执行期间动态负载;
基于域分解的:
递归对剖
局部算法
概率方法
循环映射
3.怎样使得通信尽量限制在局部范围,不因为过多通信导致并行度降低?
每个任务只与少许的几个近邻通信。
放在集中的或分散的任务池中,然后使用任务调度算法,将池中的任务分配给特定的处理器。
任务放在集中的或分散的任务池中,使用任务调度算法将池中的任务分配给特定的处理器。
下面是两种常用调度模式:
经理/雇员模式
非集中模式
结束检测
写算法与程序阅读是重点,请参考作业答案对这两方面进行重点把握。