为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

系统结构chpt9

2010-10-24 46页 ppt 254KB 29阅读

用户头像

is_530219

暂无简介

举报
系统结构chpt9null计算机系统结构计算机系统结构第一章 基本概念 第二章 指令系统 第三章 存储系统 第四章 输入输出系统 第五章 标量处理机第六章 向量处理机 第七章 互连网络 第八章 并行处理机 第九章 多处理机第九章 多处理机第九章 多处理机 两个或两个以上处理机(包括PU和CU),通过高速互连网络连接起来,在统一的操作系统管理下,实现指令以上级(任务级、作业级)并行。 按照Flynn分类法,多处理机系统属于MIMD计算机。第九章 多处理机第九章 多处理机9.1 多处理机结构 9.2 多处理机性能模型 9.3 多...
系统结构chpt9
null计算机系统结构计算机系统结构第一章 基本概念 第二章 指令系统 第三章 存储系统 第四章 输入输出系统 第五章 标量处理机第六章 向量处理机 第七章 互连网络 第八章 并行处理机 第九章 多处理机第九章 多处理机第九章 多处理机 两个或两个以上处理机(包括PU和CU),通过高速互连网络连接起来,在统一的操作系统管理下,实现指令以上级(任务级、作业级)并行。 按照Flynn分类法,多处理机系统属于MIMD计算机。第九章 多处理机第九章 多处理机9.1 多处理机结构 9.2 多处理机性能模型 9.3 多处理机实例null9.1 多处理机结构 多处理机系统由多个独立的处理机组成,每个处理机都能够独立执行自己的程序。它有多种分类方法: 9.1.1 松散偶合多处理机 9.1.2 紧密偶合多处理机 9.1.3 多处理机系统的特点null多处理机系统有多种分类方法: 按照处理机之间的连接程度:紧密偶合多处理机和松散偶合多处理机。 按照是否共享主存储器:共享存储器多处理机和分布存储器多处理机。 按照处理机是否相同:同构型多处理机和异构型多处理机。 按照处理机的个数:大规模并行处理机MPP和对称多处理机SMP。null按照PE与IOP之间互连方式: 对称型:每个IOP能连接到所有PE上 非对称型:每个IOP只与一个PE连接 冗余对称型:一个PE与多个IOP连接 按照存储器的访问方式: 均匀存储器,UMA模型 非均匀存储器,NUMA模型 只有Cache,COMA模型 另外,多向量处理机,机群系统(Cluster)等也称为多处理机系统。null9.1.1 松散偶合多处理机 处理机之间的连接频带比较低  通过输入输出接口连接  处理机间互为外围设备进行连接  例如,IBM公司的机器,都可以通过通道到通道的连接器CTC把两个不同计算机系统的IOP连接起来。 通过并口或串口把多台计算机连接起来  例如,用串行口加一个MODEL拨号上网,也可以直接连接;多台计算机之间的连接需要有多个接口。null通过Ethernet网络接口连接多台计算机  速度达10Mb、100Mb、1Gb,Mynet已经达到1.28Gb和2.56Gb。 当通信速度要求更高时,可以通过一个通道和仲裁开关CAS(Channel and Arbiter Switch)直接载存储器总线之间建立连接。  在CAS中有一个高速的通信缓冲存储器。nullLM0IOP0互连网络通过多输入输出输出口连接的多处理机CPU0LM0IOP0CPU0……LM0IOP0CPU0nullLMIOP互连网络通过消息传送系统连接的松散耦合多处理机CPUCAS 模块0LMIOPCPUCAS 模块n-1null9.1.2 紧密偶合多处理机 处理机之间共享主存储器,通过高速总线或高速开关连接。  主存储器有多个独立的存储模块  每个CPU能够访问任意一个存储器模块 通过映象部件MAP把全局逻辑地址变换成局部物理地址  通过互连网络寻找合适的路径,并分解访问存储器的冲突 多个输入输出处理机IOP也连接在互连网络上,I/O设备与CPU共享主存储器。null处理机个数不能太多,几个到十几个 紧密偶合方式要求有很高通信频带。可以采用如下:  (1) 采用高速互连网络  (2) 增加存储器模块个数,一般n?m,取1~2倍之间。  (3) 每个存储器模块再分成多个小模块,并采用流水线方式工作。  (4) 每个CPU都有自己的局部存储器LM。  (5) 每个CPU设置一个Cache。nullMAPMMCPU-MM-IOP 互连网络紧密耦合多处理机模型CPUMAPCPUMAPCPU…MMMM…IOPIOPIOP…null带二维共享存储器和、局部Cache 及存储器的多处理机IOP…IOPCPUMAPCacheLMCPU-IOP互联网络CPU-MM互联网络MAPMAPCPUMAPCacheLMCPUMAPCacheLM…IOP……MAPMAP…MAPMAP…null9.1.3 多处理机系统的特点 1、结构灵活 并行处理机:专用,PE数很多(几千个),固定有限的通信 多处理机: 通用,几十个,高速灵活的通信 2、程序并行性 并行处理机的并行性存在于指令内部,识别比较容易。 多处理机的并行性存在于指令外部,在多个任务之间,识别难度较大。null一个简单的例子: Y = A+B*C*D/E+F 用两个处理机: CPU1: B*C, A+F, A+B*C*D/E+F CPU2: D/E, B*C*D/E,null3、并行任务派生 并行处理机把同种操作集中在一起,由指令直接启动各PE同时工作 多处理机用专门的指令来表示并发关系,一个任务开始执行时能够派生出与它并行执行的另一些任务 如果任务数多于处理机数,多余的任务进入排队器等待。 4、进程同步 并行处理机仅一个CU,自然是同步的null 多处理机执行不同的指令,工作进度不会也不必保持相同 先做完的要停下来等待。有数据相关和控制相关也要停下来等待 要采取特殊的同步措施来保持程序所要求的正确顺序。 5、资源分配和进程调度 并行处理机的PE是固定的,采用屏蔽手段改变实际参加操作的PE数目 多处理机执行并发任务,需用处理机的数目不固定,各个处理机进入或退出任务的时刻不相同,所需共享资源的品种、数量又随时变化null 提出资源分配和进程调度问题,它对整个系统的效率有很大的影响。null9.2 多处理机性能模型 引起峰值性能下降的原因是: (1) 因处理机间通信而产生的延迟 (2) 一台处理机与其它处理机同步所需的开销 (3) 当没有足够多任务时,一台或多台处理机处于空闲状态 (4) 由于一台或多台处理机执行无用的工作 (5) 系统控制和操作调度所需开销null研究多处理机的目的: 提前5年得到速度高10倍的机器。 或用1/10的价格获得一台高性能的机器。 如果设计得好,在某些适合进行并行处理得应用领域,可以达到: 提前10年得到速度高100倍的机器 或用1/100的价格获得一台高性能的机器。 并行性在很大程度上依赖于R/C比值, 其中:R代表程序执行时间,C代表通信开销。null通常:R/C比值小,并行性低。 R/C比值大,并行性高。 如果把作业分解成较大的块,就能得到较大的R/C比值,但是所得到的并行性比最大可能的并行性要小得多。 R/C比值是衡量任务粒度(Granularity)大小的尺度 在粗粒度(Coarsegrain)并行情况下,R/C比值比较大,通信开销小 在细粒度(Finegrain)并行情况下,R/C比值比较小,通信开销大null细粒度并行性需要的处理机多,粗粒度并行性需要的处理机少。 细粒度并行性的基本原理是把一个程序尽可能地分解成能并行执行的小任务。在极端情况下,一个小任务只完成一个操作。null9.3 多处理机实例 多处理机系统主要有四大类: (1) 多向量处理机系统: 如CRAY YMP-90, NEC SX-3 和FUJITSU VP-2000 (2) SMP (Symmetry MultiProcessors)对称多处理机; SMP (Shared Memory MulptiProcessors)共享存储多处理机 如SGI Challenge Sun SparcCenter 2000null9.3 多处理机实例 (3) MPP (massively parallel processing)大规模并行处理机 如Intel Paragon, CM-5, Cray T3D (4) Cluster 机群系统(NOW或COM) 9.3.1 大规模并行处理机(MPP) 9.3.2 对称多处理机(SMP) 9.3.3 机群系统(Cluster)null9.3.1 大规模并行处理机(MPP) 科学计算中的重大课题要求提供3T性能: (1) 1 Teraflops计算能力 (2) 1 Terabyte主存储器 (3) 1 Terabyte/s 输入输出频带宽度 目前,速度还慢1000倍左右,存储容量和I/O带宽差距更大。 科学计算中的重大课题: 全球气候预报, 基因工程 ,飞行动力学 ,海洋环流, 流体动力学, 超导建模, 半导体建模, 量子染色动力学, 视觉null采用的关键技术: VLSI, 可扩展技术, 虚拟共享存储技术 虚拟共享存储器(Shared Virtual Memory) 也称为共享分布存储器(Distributed Shared Memory);物理上分布存储器,逻辑上共享存储器。 虚拟共享存储器的优点: 编程容易, 系统结构灵活 可扩充性好, 有较好的软件移植性 与消息传递方式相比,程序运行效率高,主要原因:null(1) 数据块缓存在本地 (内存或Cache中), 可以多次使用 (2) 通信时间分散,提高了并行性 (3) 扩大存储空间,减少换页操作 虚拟共享存储器实现途径: (1) 硬件实现, 利用Cache技术。需要增加专用硬件 (2) 操作系统和库实现,通过虚拟存储机制取得共享和一致性。在松耦合的分布存储多处理机上,不需要增加任何硬件 (3) 编译实现,自动将共享访问转换成同步和一致原语。大多数系统采用途径(1)和(2),或这两种途径结合实现null9.3.2 对称多处理机 (SMP) SMP称为共享存储多处理机 (Shared Memory mulptiProcessors), 也称为对称多处理机 (Symmetry MultiProcessors) 有三种模型: (1) UMA多处理机 均匀存储器存取模型 (Uniform Memory Access) 存储器被所有处理机均匀共享 所有处理机对所有存储单元具有相同的存取时间null每台处理机有局部Cache 外围设备可以共享系统互连网络 (总线、交叉开关、多级网络)UMA多处理机模型P1……P2PnSM1SM2SM2I/O……null(2) NUMA多处理机 非均匀存储器存取 (Nonuniform Memory Access)模型 存储器访问时间随存储单元的位置不同而变化。 共享存储器在物理上是分布在所有处理机中的本地存储器。所有局部存储器地址空间的集合就组成了全局地址空间。 处理机访问本地存储器比较快,访问属于另一台处理机的远程存储器则比较慢,因为通过互连网络会产生附加的时间延迟。null系统互连网络NUMA多处理机模型P1LM1……P2LM2PnLMnnull(3) COMA多处理机 只有Cache的存储器结构 (Cache-Only Memory Architecture) 模型;COMA是一种只用Cache的多处理机系统 实际上,COMA模型是NUMA模型的一种特例,后者分布存储器换成了Cache 在每个处理机结点上没有主存储器,全部Cache组成了全局虚拟地址空间 远程Cache访问通过分布Cache目录进行 共享存储系统拥有统一的寻址空间,程序员不必参与数据分配和传输。null互连网络COMA多处理机模型D1Cache1……P1D2Cache2P2DnCachenPnnull9.3.4 机群系统 (Cluster) 1、机群系统的组成 机群系统是利用高速网络将一组高性能工作站或高档PC机连接起来,在并行程序设计以及可视化人机交互集成开发环境支持下,统一调度,协调处理,实现高效并行处理的系统。 Cluster、NOW、COW 从结构和结点间的通信方式来看,属于分布存储系统。null机群系统中的主机和网络可以是同构的,也可以是异构的。 微处理机技术、网络技术和并行编程环境的发展使得机群系统这一新的并行处理系统形式正成为当前研究的热点。 (1)微处理器的性能不断提高。 (2)网络技术的进步使得松散耦合系统的通信瓶颈逐步得到缓解。 (3)并行编程环境的开发使得新编并行程序或改写串行程序更为容易。null2、机群系统的特点 (1)系统开发周期短。 (2)用户投资风险小。 (3)系统价格低。 (4)节约系统资源。 UC Berkeley计算机系100多台工作站的使用情况调查表明,一般单机系统的使用率不到10%,而机群系统中的资源利用率可达到80%左右。 (5)系统扩展性好。 (6)用户编程方便。null3、机群系统的关键技术 (1)高效的通信系统 在用户空间实现通信协议 精简通信协议 Active Message通信机制 (2) 并行程序设计环境 PVM(Parallel Virtual Machine) 开始于1989年夏天,美国橡树岭国家实验室(ORNL);是一套并行计算工具软件,支持多用户及多任务运行;支持多种结构的计算机,工作站、并行机以及向量机等;支持C、C++和null Fortran语言;自由软件,使用非常广泛;编程模型可以是SPMD或MPMD;具有容错功能,当发现一个结点出故障时,自动将之删除 MPI(Message Passing Interface) 在1992年11月至1994年元月产生。 能用于大多数并行计算机、计算机机群和异构网络环境,支持C和Fortran两种语言,编程模型采用SPMD, Express 美国Parasoft公司推出;能在不同的硬件环境上运行;支持C和Fortran两种程序设计语言。nullLinda 美国Yale大学与科学计算协会共同研制;通过函数扩充现并行程序的设计;支持C-Linda、Fortran-Linda等 (3) 并行程序设计语言 在多处理机系统中,必须用并行程序设计语言编写程序。或者把已经用串行语言编写的程序转换成并行语言程序之后,才能在多处理机系统上运行。null 把传统串行语言程序转换成并行语言程序的过程称为并行编译。有两种并行编译方式:全自动并行编译与半自动并行编译: 全自动并行编译是方向,但实现起来很困难。 半自动并行编译又称为交互式并行编译。程序员通过多次与机器对话,找到串行程序中可以并行执行的部分。 并行编译器生成代码的形式有多种: 并行高级语言程序、并行中间语言程序、并行目标语言程序null(4) 负载平衡技术 一个大任务可分解为多个子任务,把多个子任务分配到各个处理结点上并行执行的技术称为负载平衡技术 对于由异构处理结点构成的并行系统,相同的负载在各结点上的运行时间可能不同。因此,准确的负载定义应是负载量与结点处理能力的比值 负载平衡技术的核心就是调度算法,即将各个任务比较均衡地分布到不同的处理结点上并行计算,从而使各结点的利用率达到最大。null负载平衡技术分为静态和动态两大类: 静态方法是在编译时针对用户程序的各种信息(任务的计算量和通信关系等)及并行系统本身的状况(网络结构、各结点计算能力等)对用户程序中的并行任务作出静态分配决策。 动态方法是在程序运行过程中实现负载平衡的。它通过分析并行系统的实时负载信息,动态地将任务在各处理机之间进行分配和调整,以消除系统中负载分布的不均匀性。 动态负载平衡的算法简单,实时控制,但增加了系统的额外开销。null(5)并行程序调试技术 用并行程序设计语言编写程序,比用串行程序设计语言更容易出错,因此,在多处理机系统中,用并行程序设计语言编写程序更加依赖于并行调试工具。 并行程序调试的主要困难:并行程序的执行过程不能重现。 (6)可靠性技术 在多处理机上运行的程序通常比较大,程序执行时间很长(几十个小时或几十天)。如果在程序执行过程中出现偶然故障(如电源掉电、磁盘null 满、某一台处理机故障等),则整个运算过程要从头开始。 定时设置检查点,保存现场信息。当出现故障时,只要回复到上一个检查点,不必从头开始执行。null本 章 重 点 1、多处理机结构及特点 2、MPP、SMP和Cluster的特点 : 9.18
/
本文档为【系统结构chpt9】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索