教学课件第一章计算机体系结构的基本概念

上传人:hs****ma 文档编号:569271466 上传时间:2024-07-28 格式:PPT 页数:115 大小:432KB
返回 下载 相关 举报
教学课件第一章计算机体系结构的基本概念_第1页
第1页 / 共115页
教学课件第一章计算机体系结构的基本概念_第2页
第2页 / 共115页
教学课件第一章计算机体系结构的基本概念_第3页
第3页 / 共115页
教学课件第一章计算机体系结构的基本概念_第4页
第4页 / 共115页
教学课件第一章计算机体系结构的基本概念_第5页
第5页 / 共115页
点击查看更多>>
资源描述

《教学课件第一章计算机体系结构的基本概念》由会员分享,可在线阅读,更多相关《教学课件第一章计算机体系结构的基本概念(115页珍藏版)》请在金锄头文库上搜索。

1、第一章第一章计算机体系算机体系结构的基本概念构的基本概念Computer Architecture1.第一台通用第一台通用电子子计算机算机诞生于生于1946年年18000个个电子真空管子真空管33万万亿个晶体管个晶体管(18亿倍倍)800字字节存存储容量容量4万万亿字字节(50亿倍倍)运算速度运算速度5000次次/秒秒12.5万万亿次次/秒秒(25亿倍倍)2.经历了了4个个发展展过程程1.1 1.1 引论引论Computer Architecture1.1 1.1 引论引论时间原原因因每年的性能每年的性能增增长1946年起的年起的25年年制造技制造技术和体系和体系结构的构的发展展25%20世世

2、纪70年代年代末末80年代初年代初大大规模集成模集成电路和微路和微处理理器出器出现,以集成以集成电路路为代表代表的制造技的制造技术的的发展展约35%20世世纪80年代年代中开始中开始RISC结构的出构的出现,系,系统结构不断更新和构不断更新和变革,制造革,制造技技术不断不断发展展50%以上以上维持了持了约16年年2002年以来年以来更大更大规模集成模集成电路技路技术的的发展展为体系体系结构的构的发展尤展尤其是并行化技其是并行化技术的的发展提展提供了空供了空间约20%Computer Architecture4推推动性能提高的主要因素:性能提高的主要因素:1)更高的主更高的主频器件工器件工艺的的

3、进步步(Naturalfrequencygrowth)更深的流水更深的流水线2)开开发各个各个层次的并行性次的并行性指令指令级并行性并行性线程程/进程程级并行性并行性数据数据级并行性并行性3)减少内存延减少内存延迟大容量、高性能的片上多大容量、高性能的片上多级Cache及更成熟的先行控制、指令及更成熟的先行控制、指令预取等技取等技术指令的深度流水指令的深度流水线乱序乱序执行行超超标量量处理机理机分支分支预测及前瞻及前瞻执行行1.1 1.1 引论引论Computer Architecture计算机技算机技术的的飞速速发展得益于展得益于:计算机制造技算机制造技术的的发展展计算机系算机系统结构的构的

4、创新新1.1 1.1 引论引论Computer Architecture进一步一步发展面展面临的的问题主主频指令指令级并行性并行性内存内存访问速度的速度的功耗功耗问题1.1 1.1 引论引论Computer Architecture7微微处理机的理机的发展展轨迹遵从摩迹遵从摩尔定理:定理:Mooreslaw:Thenumberoftransistorsthatcanbeplacedinexpensivelyonanintegratedcircuitdoublesapproximatelyeverytwoyears.Thistrendhascontinuedformorethanhalfacen

5、turyandisexpectedtocontinueuntilatleast2015or20201.1 1.1 引论引论Computer Architecture8晶体管尺寸的减小晶体管尺寸的减小速度的提高速度的提高连线尺寸的尺寸的缩小小传输距离距离缩小小更少的更少的电荷能荷能驱动从性能的角度来看:从性能的角度来看:.1.1 1.1 引论引论Computer Architecture9摩摩尔定律有三种解定律有三种解释:一种是集成一种是集成电路芯片上所集成的路芯片上所集成的电路的数目,每路的数目,每隔隔18个月就翻一番;个月就翻一番;第二种是微第二种是微处理器的性能每隔理器的性能每隔18个月提

6、高一倍,个月提高一倍,而价格下降一半;而价格下降一半;第三种解第三种解释是用一个美元所能是用一个美元所能买到的到的电脑性能,性能,每隔每隔18个月翻两番。个月翻两番。1.1 1.1 引论引论Computer Architecture101)功耗功耗问题:晶体管尺寸的减小晶体管尺寸的减小速度的提高速度的提高数量的增加数量的增加电压的降低的降低线间距的距的缩小小功耗增加功耗增加功耗降低功耗降低连线尺寸的尺寸的缩小小电阻的增加阻的增加功耗增加功耗增加漏漏电流的增加流的增加可靠性下降可靠性下降功耗增加功耗增加功耗增加,功耗增加,Pentium4达到达到100w,平均平均0.5w/mm2功耗增加功耗增加

7、1.1 1.1 引论引论Computer Architecture11Max Power (Watts) i386 i386 i486 i486 Pentium Pentium Pentium Pentium w/MMX tech. w/MMX tech. 1101001.5m1.5m1m1m0.8m0.8m0.6m0.6m0.35m0.35m0.25m0.25m0.18m0.18m0.13m0.13m Pentium Pro Pentium Pro Pentium II Pentium II Pentium 4Pentium 4Pentium 4 Pentium III Pentium II

8、I 1.1 1.1 引论引论Computer Architecture12应用中可利用的用中可利用的ILP在在410之之间,目前目前可达到的可达到的ILP在在48之之间进一步一步发展的空展的空间并不是很大并不是很大1)2)实现过于复于复杂可能反而造成性能下降可能反而造成性能下降2)ILP(指令指令级并行并行)问题:1.1 1.1 引论引论Computer Architecture1.1 1.1 引论引论包含上包含上亿个晶体管个晶体管芯片复芯片复杂性性的不断提高的不断提高正确性正确性验证非常困非常困难+体系体系结构的不断复构的不断复杂化化研研发、生、生产的成本不断提高的成本不断提高3)复复杂性性

9、问题:Computer Architecture14主主频:不可能无限提高不可能无限提高散散热:主主频每每增增加加1G,功功耗耗将将上上升升25瓦瓦,而而在在芯芯片片功功耗耗超超过150瓦瓦后后,现有有的的风冷冷散散热系系统将将无无法法满足足散散热的需要的需要复复杂度度:英英特特尔的的奔奔腾(Pentium)四四至至尊尊版版840处理理器,晶体管数量已器,晶体管数量已经增加至增加至2.5亿个个有效性:有效性:不到不到6%的晶体管用于的晶体管用于计算算总结总结Computer Architecture1.2.1计算机系算机系统中的中的层次概念次概念1.计算机系算机系统是是软件硬件件硬件/固件固件

10、2.计算机算机语言由低言由低级向高向高级发展。展。高一高一级语言的言的语句相句相对于低于低级语言功言功能更能更强,更便于,更便于应用,但又都以低用,但又都以低级语言言为基基础。3.从从计算机算机语言的角度,把言的角度,把计算机系算机系统按功按功能划分成能划分成多多级层次次结构构。1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer Architecture1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer Architecture(1)虚虚拟机:机:由由软件件实现的机器的机器。(2)语言言实现的两种基本技的两种基本技术翻翻译:先把先把N+1级程序全部程

11、序全部变换成成N级程序后,程序后,再去再去执行新行新产生的生的N级程序,在程序,在执行行过程中程中N+1级程序不再被程序不再被访问。解解释:每当一条每当一条N+1级指令被指令被译码后,就直接后,就直接去去执行一串等效的行一串等效的N级指令,然后再去取下一指令,然后再去取下一条条N+1级的指令,依此重复的指令,依此重复进行。行。解解释执行比翻行比翻译花的花的时间多,但存多,但存储空空间占用占用较少。少。1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer Architecture1.2.2 计算机体系算机体系结构的定构的定义1.计算机体系算机体系结构:构:程序程序员所看到的所

12、看到的计算机的属性,算机的属性,即即概念性概念性结构构与与功能特性功能特性。2.按照按照计算机系算机系统的多的多级层次次结构,不同构,不同级程序程序员所看到的所看到的计算机具有不同的属性。算机具有不同的属性。如低如低级语言程序言程序员所看到的所看到的许多多计算属性算属性对高高级语言程序言程序员透明透明透明性:透明性:在在计算机技算机技术中,中,对这种本来是存在的事物种本来是存在的事物或属性,但从某种角度看又好象不存在。或属性,但从某种角度看又好象不存在。1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer Architecture3.Amdahl提出的体系提出的体系结构:构

13、:传统机器机器级的体系的体系结构构即一般所即一般所说的机器的机器语言程序言程序员所看到的所看到的传统机器机器级所具有的属性。所具有的属性。5.对于通用寄存器型机器,于通用寄存器型机器,这些属性主要是指:些属性主要是指:指令系指令系统包括机器指令的操作包括机器指令的操作类型和格式、指令型和格式、指令间的的排序和控制机构等。排序和控制机构等。数据表示数据表示硬件能直接硬件能直接识别和和处理的数据理的数据类型。型。寻址址规则包括最小包括最小寻址址单元、元、寻址方式及其表示。址方式及其表示。1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer Architecture寄存器定寄存器

14、定义(包括各种寄存器的定(包括各种寄存器的定义、数量和使用方式)、数量和使用方式)中断系中断系统(中断的(中断的类型和中断响型和中断响应硬件的功能等)硬件的功能等)机器工作状机器工作状态的定的定义和切和切换(如管(如管态和目和目态等)等)存存储系系统(主存容量、程序(主存容量、程序员可用的最大存可用的最大存储容量等)容量等)信息保信息保护(包括信息保(包括信息保护方式和硬件方式和硬件对信息保信息保护的支持)的支持)1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer ArchitectureI/O结构构包括包括I/O连结方式、方式、处理机理机/存存储器与器与I/O设备之之间

15、数据数据传送的方式和格式以及送的方式和格式以及I/O操作的状操作的状态等等经典典计算机体系算机体系结构概念的构概念的实质:计算机系算机系统中中软硬件界面的确定,其界面之上的硬件界面的确定,其界面之上的是是软件的功能,界面之下的是硬件和固件的功能。件的功能,界面之下的是硬件和固件的功能。1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer Architecture1.2.3计算机算机组成和成和计算机算机实现技技术1.计算机算机组成:成:计算机体系算机体系结构的构的逻辑实现。2.计算机算机实现:计算机算机组成的物理成的物理实现。计算机算机组成包括的内容可以有:成包括的内容可以有

16、:处理理机机、主主存存等等部部件件的的逻辑结构构,机机器器级内内数数据据流流和和控制流的控制流的组成、各部件的功能以及之成、各部件的功能以及之间的的联系等系等。计算机算机实现包括的内容可以有:包括的内容可以有:处理理机机、主主存存等等部部件件的的物物理理结构构,包包括括器器件件的的集集成成度度和和速速度度的的确确定定,器器件件、模模块、插插件件、底底板板的的划划分分与与连接,接,组装装配技装装配技术及信号及信号连接、接、电源、冷却方法等。源、冷却方法等。1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer Architecture体系体系结构与构与组成、成、实现之之间的关系

17、的关系为:体系体系结构是构是组成的抽象,成的抽象,组成是成是实现的抽象的抽象一种体系一种体系结构可以有多种构可以有多种组成。成。一种一种组成可以有多种物理成可以有多种物理实现。广广义的的计算算机机体体系系结构构概概念念包包括括体体系系结构构的的外外部部特特性性和内部特性:和内部特性:1)计算算机机体体系系结构构外外部部特特性性-计算算机机体体系系结构构的的经典典定定义2)计算算机机体体系系结构构内内部部特特性性-计算算机机组成成与与实现中中一一些比些比较抽象的内容抽象的内容(微体系(微体系结构)构)1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer Architectur

18、e系列机系列机在一个厂家内生在一个厂家内生产的具有相同的体系的具有相同的体系结构构(经典定典定义),但具有不同,但具有不同组成和成和实现的一系列不同型号的机器。的一系列不同型号的机器。如如IBM370系列有系列有370/115、125、135、145、158、168等一系列从低速到高速的各种型号等一系列从低速到高速的各种型号。相同点:相同点:程序程序员所看到的概念性所看到的概念性结构和功能属性构和功能属性指令系指令系统一致一致不同点:不同点:组成和成和实现技技术速度特性不一速度特性不一样1.2 1.2 计算机体系结构的概念计算机体系结构的概念Computer Architecture1.2 1

19、.2 计算机体系结构的概念计算机体系结构的概念1.2.4计算机系算机系统结构的分构的分类常常见的的计算机系算机系统结构分构分类法有两种:法有两种:Flynn分分类法、法、冯氏分氏分类法法Computer Architecture1.2 1.2 计算机体系结构的概念计算机体系结构的概念冯氏分氏分类法法用系用系统的最大并行度的最大并行度对计算机算机进行分行分类。最大并行度:最大并行度:计算机系算机系统在在单位位时间内能内能够处理理的最大的二的最大的二进制位数。制位数。用平面直角坐用平面直角坐标系中的一个点代表一个系中的一个点代表一个计算算机系机系统,其横坐,其横坐标表示字表示字宽(n位位),),纵

20、坐坐标表示一次能同表示一次能同时处理的字数(理的字数(m字字)。)。mn就表示了其最大并行度。就表示了其最大并行度。Flynn分分类法法按照指令流和数据流的多倍性按照指令流和数据流的多倍性进行分行分类。指令流:指令流:计算机算机执行的指令序列。行的指令序列。Computer Architecture1.2 1.2 计算机体系结构的概念计算机体系结构的概念数据流:数据流:由指令流由指令流调用的数据序列。用的数据序列。多倍性:多倍性:在系在系统受限的部件上,同受限的部件上,同时处于于同一同一执行行阶段的指令或数据的最大数目。段的指令或数据的最大数目。Flynn分分类法把法把计算机系算机系统的的结构

21、分构分为4类:单指令流指令流单数据流数据流(SISD)单指令流多数据流指令流多数据流(SIMD)多指令流多指令流单数据流数据流(MISD)多指令流多数据流多指令流多数据流(MIMD)4类计算机的基本算机的基本结构构IS:指令流,:指令流,DS:数据流,:数据流,CS:控制流,:控制流,CU:控制部件,:控制部件,PU:处理部件,理部件,MM和和SM:存:存储器。器。Computer Architecture1.3 1.3 定量分析技术定量分析技术4个定量原理:个定量原理:以以经常性事件常性事件为重点重点对经常常发生的情况采用生的情况采用优化方法的原化方法的原则进行行选择,以得到更多的,以得到更

22、多的总体上的改体上的改进。优化化是指分配更多的是指分配更多的资源、达到更高的性源、达到更高的性能或者分配更多的能或者分配更多的电能等。能等。1.3.1计算机系算机系统设计的定量原理的定量原理Computer Architecture1.3 1.3 定量分析技术定量分析技术Amdahl定律定律加快某部件加快某部件执行速度所能行速度所能获得的系得的系统性能性能加速比,受限于加速比,受限于该部件的部件的执行行时间占系占系统中中总执行行时间的百分比。的百分比。系系统性能加速比:性能加速比:加速比加速比系系统性能性能改改进后后系系统性能性能改改进前前总执行行时间改改进前前总执行行时间改改进后后Compu

23、ter Architecture1.3 1.3 定量分析技术定量分析技术加速比依加速比依赖于两个因素于两个因素可改可改进比例:比例:在改在改进前的系前的系统中,可改中,可改进部分的部分的执行行时间在在总的的执行行时间中所占的中所占的比例。它比例。它总是小于等于是小于等于1 1。例如:例如:一个需运行一个需运行6060秒的程序中有秒的程序中有2020秒的运算可以加秒的运算可以加速,那么速,那么这个比例就是个比例就是20/6020/60。部件加速比:部件加速比:可改可改进部分改部分改进以后性能提以后性能提高的倍数。它是改高的倍数。它是改进前所需的前所需的执行行时间与与改改进后后执行行时间的比。一般

24、情况下部件加的比。一般情况下部件加速比是大于速比是大于 1 1 的。的。例如:例如:若系若系统改改进后,可改后,可改进部分的部分的执行行时间是是2 2秒,秒,而改而改进前其前其执行行时间为5 5秒,秒,则部件加速比部件加速比为5/25/2。Computer Architecture1.3 1.3 定量分析技术定量分析技术改改进后程序的后程序的总执行行时间总执行行时间改改进后后不可改不可改进部分的部分的执行行时间可改可改进部分改部分改进后的后的执行行时间总执行行时间改改进后后(1可改可改进比例比例)总执行行时间改改进前前+(1可改可改进比例比例)+总执行行时间改改进前前可改可改进比例比例部件加速

25、比部件加速比可改可改进比例比例总执行行时间改改进前前部件加速比部件加速比Computer Architecture1.3 1.3 定量分析技术定量分析技术系系统加速比加速比为改改进前与改前与改进后后总执行行时间之比之比加速比加速比总执行行时间改改进前前总执行行时间改改进后后(1可改可改进比例)比例)+可改可改进比例比例部件加速比部件加速比1Computer Architecture1.3 1.3 定量分析技术定量分析技术例例1.1将将计算机系算机系统中某一功能的中某一功能的处理速度提高理速度提高到原来的到原来的20倍,但倍,但该功能的功能的处理理时间仅占整个系占整个系统运行运行时间的的40%,

26、则采用此提高性能的方法后,能采用此提高性能的方法后,能使整个系使整个系统的性能提高多少?的性能提高多少?Computer Architecture1.3 1.3 定量分析技术定量分析技术解解可改可改进比例比例=40%=0.4,部件加速比部件加速比=20根据根据Amdahl定律可知:定律可知:采用此提高性能的方法后,能使整个系采用此提高性能的方法后,能使整个系统的的性能提高到原来的性能提高到原来的1.613倍倍。总加速比加速比=10.6+0.420=1.613Computer Architecture1.3 1.3 定量分析技术定量分析技术例例1.2某某计算机系算机系统采用浮点运算部件后,使浮采

27、用浮点运算部件后,使浮点运算速度提高到原来的点运算速度提高到原来的20倍,而系倍,而系统运行某一运行某一程序的整体性能提高到原来的程序的整体性能提高到原来的5倍,倍,试计算算该程序程序中浮点操作所占的比例。中浮点操作所占的比例。Computer Architecture1.3 1.3 定量分析技术定量分析技术解解部件加速比部件加速比=20,系,系统加速比加速比=5根据根据Amdahl定律可知定律可知由此可得:可改由此可得:可改进比例比例=84.2%即程序中浮点操作所占的比例即程序中浮点操作所占的比例为84.2%。Computer Architecture1.3 1.3 定量分析技术定量分析技术

28、Amdahl定律:定律:一种性能改一种性能改进的的递减减规则如果如果仅仅对计算任算任务中的一部分做性能改中的一部分做性能改进,则改改进得越多,所得到的得越多,所得到的总体性能的体性能的提升就越有限。提升就越有限。重要推重要推论:如果只如果只针对整个任整个任务的一部分的一部分进行行改改进和和优化,那么所化,那么所获得的加速比不超得的加速比不超过1/(1可改可改进比例)比例)Computer Architecture1.3 1.3 定量分析技术定量分析技术两种情况两种情况:(1)可改可改进比例比例为,这时系系统加速比等于,即系加速比等于,即系统性能无法提高。性能无法提高。(2)部部件件加加速速比比

29、趋于于无无穷,这时分分母母中中可可改改进比比例例与与部部件件加加速速比比之之比比趋于于,由由此此系系统加加速速比比趋于于除除以以减减可可改改进比比例例,这是是加加速速这个个部部件件所所获得得的的系系统性能改善的极限。性能改善的极限。Computer Architecture1.3 1.3 定量分析技术定量分析技术Computer Architecture1.3 1.3 定量分析技术定量分析技术3.CPU性能公式性能公式执行一个程序所需的行一个程序所需的CPU时间CPU时间=执行程序所需的行程序所需的时钟周期数周期数时钟周周期期时间执行程序所需的行程序所需的时钟周期数可周期数可进一步分解一步分解

30、为:CPI:每条指令每条指令执行的平均行的平均时钟周期数周期数IC:所所执行的指令条数行的指令条数程序程序执行的行的CPU时间可以写成可以写成CPU时间=ICCPI时钟周期周期时间Computer Architecture1.3 1.3 定量分析技术定量分析技术计算机工作的算机工作的时钟频率率计算机系算机系统中与中与实现技技术和工和工艺有关的因素。有关的因素。单位是位是MHz或或GHz。时钟周期周期时间=1/时钟频率率CPU时间=CPI IC/时钟频率率Computer Architecture1.3 1.3 定量分析技术定量分析技术时钟频率:率:受受计算机算机实现技技术和和计算机算机组成影响

31、成影响CPI:受受计算机指令集算机指令集结构和构和计算机算机组成影响成影响IC:受受计算机指令集算机指令集结构和构和编译技技术影响影响对许多多CPU来来说,不不同同的的指指令令运运行行时所所用用的的周周期期数数是是不不同同的的,如如果果我我们假假设:计算算机机系系统有有n种种指指令令,其其中中CPIi:第第i种指令所用的种指令所用的时钟周期数;周期数;ICi:在在程程序序运运行行过程程中中中中第第i种种指指令令被被运运行行的的次数;次数;Computer Architecture1.3 1.3 定量分析技术定量分析技术CPU时间= (CPIi ICi)/时钟频率率CPI= (CPIi ICi)

32、/IC= (CPIi ICi/IC)其中:其中:(ICi/IC)反映了第反映了第i种指令在程序中所占的种指令在程序中所占的比例。比例。Computer Architecture例例1.3假假设我我们考考虑条件分支指令的两种不同条件分支指令的两种不同设计方法方法如下:如下:(1)CPUA:通通过比比较指令指令设置条件置条件码,然后,然后测试条条件件码进行分支。行分支。(2)CPUB:在分支指令中包括比在分支指令中包括比较过程程在两种在两种CPU中,条件分支指令都占用中,条件分支指令都占用2个个时钟周期而周期而所有其它指令占用所有其它指令占用1个个时钟周期,周期,对于于CPUA,执行的指行的指令中

33、分支指令占令中分支指令占20%;由于每个分支指令之前都需要有;由于每个分支指令之前都需要有比比较指令,因此比指令,因此比较指令也占指令也占20%。由于。由于CPUA1.31.3 定量分析技术基础定量分析技术基础Computer Architecture在分支在分支时不需要比不需要比较,因此假,因此假设它的它的时钟周期周期时间比比CPUB快快1.25倍。哪一个倍。哪一个CPU更快?如果更快?如果CPUA的的时钟周期周期时间仅仅比比CPUB快快1.1倍,哪一个倍,哪一个CPU更快呢?更快呢?解:解:我我们不考不考虑所有系所有系统问题,所以可用,所以可用CPU性能公性能公式。占用式。占用2个个时钟周

34、期的分支指令占周期的分支指令占总指令的指令的20%,剩,剩下的指令占用下的指令占用1个个时钟周期。所以周期。所以CPIA=0.2 2+0.80 1=1.2则CPU性能性能为:总CPU时间A=ICA 1.2 时钟周期周期A1.31.3 定量分析技术基础定量分析技术基础Computer Architecture对CPUB根据假根据假设,有:,有:时钟周期周期B=1.25 时钟周期周期A在在CPUB中没有独立的比中没有独立的比较指令,所以指令,所以CPUB的程序量的程序量为CPUA的的80%,分支指令的比例,分支指令的比例为:20%/80%=25%这些分支指令占用些分支指令占用2个个时钟周期,而剩下

35、的周期,而剩下的75%的指令的指令占用占用1个个时钟周期,因此:周期,因此:CPIB=0.25 2+0.75 1=1.251.31.3 定量分析技术基础定量分析技术基础Computer Architecture因因为CPUB不不执行比行比较,故:,故:ICB=0.8 ICA因此因此CPUB性能性能为:总CPU时间B=ICB CPIB 时钟周期周期B=0.8 ICA 1.25 (1.25 时钟周期周期A)=1.25 ICA 时钟周期周期A在在这些假些假设之下,尽管之下,尽管CPUB执行指令条数行指令条数较少,少,CPUA因因为有着更短的有着更短的时钟周期,所以比周期,所以比CPUB快。快。1.3

36、1.3 定量分析技术基础定量分析技术基础Computer Architecture如果如果CPUA的的时钟周期周期时间仅仅比比CPUB快快1.1倍,倍,则时钟周期周期B=1.10 时钟周期周期ACPUB的性能的性能为:总CPU时间B=ICB CPIB 时钟周期周期B=0.8 ICA 1.25 (1.10 时钟周期周期A)=1.10 ICA 时钟周期周期A因此因此CPUB由于由于执行更少指令条数,比行更少指令条数,比CPUA运行更快运行更快。1.31.3 定量分析技术基础定量分析技术基础Computer Architecture1.3 1.3 定量分析技术定量分析技术4.程序的局部性原理程序的局

37、部性原理程序在程序在执行行时所所访问地址的分布不是随机的,而地址的分布不是随机的,而是相是相对地簇聚;地簇聚;这种簇聚同种簇聚同时存在于指令存在于指令访问和数据和数据访问中。中。程序的程序的时间局部性:局部性:程序即将用到的信息很可能程序即将用到的信息很可能就是目前正在使用的信息。就是目前正在使用的信息。程序的空程序的空间局部性:局部性:程序即将用到的信息很可能程序即将用到的信息很可能与目前正在使用的信息在空与目前正在使用的信息在空间上相上相邻或者或者临近。近。Computer Architecture1.3 1.3 定量分析技术定量分析技术用用Amdahl定律分析并行加速定律分析并行加速现实

38、世界的世界的计算算过程从来不会按照程从来不会按照简单的串并行的串并行来区分,来区分,实际上,也几乎没有上,也几乎没有计算算过程能程能纯粹地粹地划划归为串行或者并行串行或者并行实现的的绝大多数大多数软件会包含件会包含可并行可并行和和不可并行(串行)不可并行(串行)的操作的操作Computer Architecture1.3 1.3 定量分析技术定量分析技术 p:处理器数;理器数;W:问题规模(模(计算算负载、工作、工作负载)WS:应用程序中的串行分量用程序中的串行分量WP:应用程序中可并行分量用程序中可并行分量W=WS+WP串行分量比例(串行分量比例(f=WS/W)并行分量比例(并行分量比例(1

39、-f=WP/W)S:加速比:加速比Computer Architecture1.3 1.3 定量分析技术定量分析技术53加速比加速比Computer Architecture1.3 1.3 定量分析技术定量分析技术例例 如如 果果 想想 用用 100个个 处 理理 器器 达达 到到 80的的 加加 速速 比比 ,求原求原计算程序中串行部分所占比例。算程序中串行部分所占比例。解解Amdahl定律定律为得出:得出:f0.0025可以看出要用可以看出要用100个个处理器达到理器达到80的加速比,串行的加速比,串行计算的部分算的部分只能占只能占0.25%。Computer Architecture1.

40、3 1.3 定量分析技术定量分析技术例例如如果果一一个个程程序序中中80%的的部部分分能能完完全全并并行行化化,剩剩下下20%串串行行执行行 , 问 用用 100个个 处 理理 器器 能能 达达 到到 多多 少少 加加 速速 比比 ?忽略所有因并行忽略所有因并行产生的生的额外开外开销。解解Amdahl定律定律为这时用用100个个处理器只能达到理器只能达到4.8倍的加速比倍的加速比Computer Architecture1.3 1.3 定量分析技术定量分析技术56例例当当处理器数目理器数目p=1024,加速比公式如下:,加速比公式如下:Computer Architecture1.3 1.3

41、定量分析技术定量分析技术Gustafson定律定律 除非特定研究,在除非特定研究,在实际应用中没有必要固定工作用中没有必要固定工作负载而而让计计算程序运行在不同数目的算程序运行在不同数目的处处理器上,增理器上,增多多处处理器必理器必须须相相应应地增大地增大问题规问题规模才有模才有实际实际意意义义 对大多数大多数问题,问题规模的改模的改变只会改只会改变计算中算中并行并行计算量,而不会改算量,而不会改变串行串行计算量算量Computer Architecture1.3 1.3 定量分析技术定量分析技术58 并行并行计算是算是为了解决大了解决大规模模计算算问题,可并行部,可并行部分的比例是可分的比例

42、是可扩大的大的加速比与加速比与处理器数成斜率理器数成斜率为(1-f)的)的线性关系性关系串行比例串行比例f 不再是并行不再是并行扩展的瓶展的瓶颈Computer Architecture1.3 1.3 定量分析技术定量分析技术评测的性能指的性能指标:执行行时间和和吞吐率吞吐率采用什么性能指采用什么性能指标,与,与测试者看者看问题的角度有关。的角度有关。一般用一般用户:单个程序的个程序的执行行时间(执行行单个个程序所花的程序所花的时间)数据数据处理中心的管理理中心的管理员:吞吐率吞吐率(在(在单位位时间里能里能够完成的任完成的任务)1.3.2计算机系算机系统的性能的性能评测Computer Ar

43、chitecture1.3 1.3 定量分析技术定量分析技术执行行时间可以有多种定可以有多种定义:计算机完成某一任算机完成某一任务所花所花费的全部的全部时间:包括磁包括磁盘访问、存、存储器器访问、输入入/输出、操作系出、操作系统开开销等。等。CPU时间:CPU执行所行所给定的程序所花定的程序所花费的的时间,不包含不包含I/O等待等待时间以及运行其他程序的以及运行其他程序的时间。用用户CPU时间:用用户程序所耗程序所耗费的的CPU时间。系系统CPU时间:用用户程序运行期程序运行期间操作系操作系统耗耗费的的CPU时间。Computer Architecture1.3 1.3 定量分析技术定量分析技

44、术假假设两台两台计算机算机为X和和Y,X比比Y快快的意思是:的意思是:对于于给定任定任务,X的的执行行时间比比Y的的执行行时间少。少。X的性能是的性能是Y的的n倍,即倍,即而而执行行时间与性能成反比,即与性能成反比,即执行行时间Y执行行时间X=nn=执行行时间Y执行行时间X性能性能Y1性能性能X1性能性能X性能性能YComputer Architecture1.3 1.3 定量分析技术定量分析技术通用通用评测方法方法:(1)采用基于采用基于测试的方法,如以的方法,如以测试程序的程序的执行行时间为度量度量;(2)采用基于分析的方法,如通采用基于分析的方法,如通过对主主频、CPI、各、各类指令的指

45、令的计数等的分析来数等的分析来获得得。Computer Architecture1.3 1.3 定量分析技术定量分析技术2.基准基准测试程序程序1.目前常用的目前常用的测试程序可以分程序可以分为四四类:(按(按测试可靠性由高至低的可靠性由高至低的顺序列出)序列出)(1)真真实程序程序(2)核心程序核心程序(3)小小测试程序程序(4)合成合成测试程序程序Computer Architecture1.51.5 定量分析技术基础定量分析技术基础2.测试程序程序组件件选择一一组各个方面有代表性的各个方面有代表性的测试程序,程序,组成成一个通用一个通用测试程序集合。程序集合。最大最大优点:点:避免了独立

46、避免了独立测试程序存在的片面性,尽可能全程序存在的片面性,尽可能全面地面地测试了一个了一个计算机系算机系统的性能。的性能。基本基本测试程序程序SPEC科学与工程科学与工程计算性能算性能LINPACKComputer Architecture1.51.5 定量分析技术基础定量分析技术基础台式台式计算机的基准算机的基准测试程序套件可以分程序套件可以分为两大两大类:处理器性能理器性能测试程序程序图形性能形性能测试程序程序SPEC89:用于用于测试处理器性能。理器性能。10个程序(个程序(4个整数程序,个整数程序,6个浮点程序)个浮点程序)演化出了演化出了4个版本个版本SPEC92:20个程序个程序S

47、PEC95:18个程序个程序SPEC2000:26个程序个程序SPECCPU2006:29个程序个程序Computer Architecture1.51.5定量分析技术基础定量分析技术基础SPECCPU2006整数程序整数程序12个(个(CINT2006)9个是用个是用C写的,写的,3个是用个是用C+写的写的浮点程序浮点程序17个(个(CFP2006)6个是用个是用FORTRAN写的,写的,4个是用个是用C+写的,写的,3个是用个是用C写的,写的,4个是用个是用C和和FORTRAN混合混合编写的。写的。为真正的程序真正的程序经过精精简并最小化并最小化I/O活活动而形成而形成,Computer

48、Architecture1.51.5 定量分析技术基础定量分析技术基础针对桌面桌面计算机算机图形系形系统支持支持OpenGL库的性能的性能:SPECviewperf针对桌面桌面计算机算机图形密集型形密集型应用的性能:用的性能:SPECapc针对文件服文件服务器性能:器性能:SPECSFS针对网网络文件服文件服务器性能:器性能:SPECWeb针对事事务处理理领域域:TPC测试程序程序组件(主要件(主要测试事事务处理的吞吐能力)理的吞吐能力)Computer Architecture1.51.5 定量分析技术基础定量分析技术基础基于基于Windows的的PC机方面:机方面:lPCMark04包括中

49、央包括中央处理器理器测试组、内存、内存测试组、图形芯片形芯片测试组、硬、硬盘测试组等等;lBusinessWinstone2004主要用于主要用于测试计算机系算机系统商商业应用的用的综合合性能性能;lMultimediaContentCreationWinstone2004主要用于主要用于测试计算机系算机系统多媒体多媒体应用的用的综合性能合性能;Computer Architecture1.51.5 定量分析技术基础定量分析技术基础对高性能高性能计算机:算机:机器的理机器的理论论峰峰值值速度速度用用户户能得到的能得到的实际实际速度速度加速比、效率加速比、效率可可扩扩展性:展性:随着随着计计算算

50、负载负载的增加和机器的增加和机器规规模的模的扩扩大,大,计计算算系系统统的性能是否随着的性能是否随着处处理器的数目的增加而按比例理器的数目的增加而按比例的增加的增加Computer Architecture1.51.5 定量分析技术基础定量分析技术基础系系统评估:估:单位位时间内能完成的内能完成的工作量工作量工作量:工作量: 执行的指令数行的指令数:计算算单位位为百万条百万条每秒每秒执行多少百万条指令行多少百万条指令(MIPS) 完成的浮点运算数完成的浮点运算数:计算算单位位为百万次百万次每秒每秒执行多少百万次浮点运算行多少百万次浮点运算(MFLOPS)GFLOPS(10亿),TFLOPS(万

51、万亿),PFLOPS(千万千万亿)Computer Architecture1.3 1.3 定量分析技术定量分析技术性能比性能比较A机机B机机C机机W(1) W(2) W(3)程序程序11.0010.0020.000.500.9090.999程序程序21000.0010.0020.000.500.0910.001加加权算算术平均平均值Am(1)500.5010.0020.00加加权算算术平均平均值Am(2)91.9110.0020.00加加权算算术平均平均值Am(3)2.0010.0020.00两个程序在两个程序在A、B、C三台三台计算机上的算机上的执行行时间Computer Architec

52、ture1.3 1.3 定量分析技术定量分析技术平均平均执行行时间:各各测试程序程序执行行时间的算的算术平均平均值其中其中,Ti:第:第i个个测试程序的程序的执行行时间n:测试程序程序组中程序的个数中程序的个数Computer Architecture1.3 1.3 定量分析技术定量分析技术加加权执行行时间:各各测试程序程序执行行时间的加的加权平平均均值其中,其中,Wi:第:第i个个测试程序在程序在测试程序程序组中所中所占的比重占的比重Ti:该程序的程序的执行行时间Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 1.4.1冯诺依曼依曼结构构Co

53、mputer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 存存储程序原理的基本点:程序原理的基本点:指令指令驱动 程序程序预先存放在先存放在计算机存算机存储器中,器中,计算算机一旦启机一旦启动,就能按照程序指定的,就能按照程序指定的逻辑顺序序执行行这些程序,自些程序,自动完成由程序所描述的完成由程序所描述的处理工作。理工作。Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 1.冯诺依曼依曼结构的主要特点构的主要特点以运算器以运算器为中心。中心。在存在存储器中,指令和数据同等器中,指令和数据同等对待。待。 指令和

54、数据一指令和数据一样可以可以进行运算,即由行运算,即由指令指令组成的程序是可以修改的。成的程序是可以修改的。存存储器是按地址器是按地址访问、按、按顺序序线性性编址的址的一一维结构,每个构,每个单元的位数是固定的。元的位数是固定的。Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 指令的指令的执行是行是顺序的。序的。一般是按照指令在存一般是按照指令在存储器中存放的器中存放的顺序序执行行;程序的分支由程序的分支由转移指令移指令实现;由指令由指令计数器数器PC指明当前正在指明当前正在执行的指行的指令在存令在存储器中的地址器中的地址;指令由操作指令由操作

55、码和地址和地址码组成。成。指令和数据均以二指令和数据均以二进制制编码表示,采用二表示,采用二进制制运算。运算。Computer Architecture2. 对体系体系结构构进行的改行的改进 (1)对输入入输出方式的改出方式的改进以运算器以运算器为中心中心带来了慢速来了慢速输入入输出操作占用快速运算器的出操作占用快速运算器的问题。1.41.4 计算机体系结构的发展计算机体系结构的发展 Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 (2) 采用并行

56、采用并行处理技理技术 如何挖掘如何挖掘传统机器中的并行性?机器中的并行性?在不同的在不同的级别采用并行技采用并行技术。 例如,微操作例如,微操作级、指令、指令级、线程程级、进程程级、任、任务级等。等。Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 (3)存存储器器组织结构的构的发展展通用寄存器:提高运行速度通用寄存器:提高运行速度高速高速缓冲存冲存储器和多器和多级存存储器器组织结构:提高构:提高运行速度并降低成本运行速度并降低成本堆堆栈的引入:支持高的引入:支持高级语言言过程程调用、用、递归机机制以及表达式制以及表达式计算算虚虚拟存存储器:方便

57、高器:方便高级语言言编程程相相联存存储器:支持内容器:支持内容查找找Computer Architecture复复杂指令集指令集计算机算机(CISC)精精简指令集指令集计算机算机(RISC)(4)指令集的指令集的发展展指令集的功能指令集的功能:(5)指令的指令的寻址方式址方式多种灵活的多种灵活的寻址方式。址方式。 1.41.4 计算机体系结构的发展计算机体系结构的发展 Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 软件的可移植性:件的可移植性:一个一个软件可以不件可以不经修改修改或者只需少量修改就可以由一台或者只需少量修改就可以由一台计算机移

58、算机移植到另一台植到另一台计算机上正确地运行。差算机上正确地运行。差别只只是是执行行时间的不同。的不同。我我们称称这两台两台计算机是算机是软件兼容件兼容的。的。实现可移植性的常用方法可移植性的常用方法采用系列机,模采用系列机,模拟与仿真,与仿真,统一高一高级语言言。1.4.2软件件对系系统结构的影响构的影响Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 1.系列机系列机由同一厂家生由同一厂家生产的具有相同的系的具有相同的系统结构,构,但具有不同但具有不同组成和成和实现的一系列不同型号的机的一系列不同型号的机器。器。较好地解决好地解决软件开件开发

59、要求系要求系统结构相构相对稳定与器件、硬件技定与器件、硬件技术迅速迅速发展的矛盾。展的矛盾。Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 系列机的系列机的软件兼容件兼容向上(下)兼容:向上(下)兼容:按某档机器按某档机器编制的程序,不制的程序,不加修改就能运行于比它高(低)档的机器。加修改就能运行于比它高(低)档的机器。向前(后)兼容:向前(后)兼容:按某个按某个时期投入市期投入市场的某种的某种型号机器型号机器编制的程序,不加修改地就能运行于制的程序,不加修改地就能运行于在它之前(后)投入市在它之前(后)投入市场的机器。的机器。向后兼容是系列

60、机的根本特征。向后兼容是系列机的根本特征。兼容机:兼容机:由不同公司厂家生由不同公司厂家生产的具有相同系的具有相同系统结构构的的计算机算机。Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 2.模模拟和仿真和仿真使使软件能在具有不同系件能在具有不同系统结构的机器之构的机器之间相互相互移植。移植。在一种系在一种系统结构上构上实现另一种系另一种系统结构构;从指令集的角度来看,就是要在一种机器从指令集的角度来看,就是要在一种机器上上实现另一种机器的指令集。另一种机器的指令集。模模拟:用用软件的方法在一台件的方法在一台现有的机器(称有的机器(称为宿主机宿

61、主机)上)上实现另一台机器(称另一台机器(称为虚虚拟机机)的)的指令集。指令集。通常用解通常用解释的方法来的方法来实现。运行速度运行速度较慢,性能慢,性能较差。差。Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 仿真:仿真:用一台用一台现有机器(有机器(宿主机宿主机)上的微程)上的微程序去解序去解释实现另一台机器(另一台机器(目目标机机)的指令)的指令集。集。运行速度比模运行速度比模拟方法的快方法的快仿真只能在系仿真只能在系统结构差距不大的机器之构差距不大的机器之间使用使用3.统一高一高级语言言实现软件移植的一种理想的方法件移植的一种理想的方法

62、较难实现Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 逻辑电路路单芯片上的晶体管数量每年芯片上的晶体管数量每年60% 80%速度的不断提高(主速度的不断提高(主频的提高,的提高,GHz以上)以上)64位位-128位机器成位机器成为可能可能门级寄寄存存器器级部部件件级系系统级均均在在一一个个VLSI芯片中芯片中实现使物理使物理实现、逻辑组成和体系成和体系结构之构之间的差的差别模糊化模糊化,使使软件、硬件之件、硬件之间的差的差别模糊化(如模糊化(如FPGA器件)器件)。1.4.3器件器件发展展对系系统结构的影响构的影响Computer Archi

63、tecture1.41.4 计算机体系结构的发展计算机体系结构的发展 摩摩尔定律定律集成集成电路芯片上所集成的晶体管数目每隔路芯片上所集成的晶体管数目每隔18个月就翻一番。个月就翻一番。计算机的分代主要以器件作算机的分代主要以器件作为划分划分标准。准。它它们在器件、系在器件、系统结构和构和软件技件技术等方面等方面都有各自的特征。都有各自的特征。分代分代器件特征器件特征结构特征构特征软件特征件特征典型典型实例例第一代第一代(19451954年)年)电子管和子管和继电器器存存储程序程序计算算机机程序控制程序控制I/O机器机器语言言汇编语言言普林斯普林斯顿ISA,ENIAC,IBM701第二代第二代

64、(19551964年)年)晶体管、磁芯晶体管、磁芯印刷印刷电路路浮点数据表示浮点数据表示寻址技址技术中断、中断、I/O处理理机机高高级语言和言和编译批批处理理监控系控系统UnivacLAPC,CDC1604,IBM7030第三代第三代(19651974年)年)SSI和和MSI多多层印刷印刷电路路微程序微程序流水流水线、Cache先行先行处理理系列机系列机多道程序多道程序分分时操作系操作系统IBM360/370,CDC6600/7600,DECPDP-8第四代第四代(19751990年)年)LSI和和VLSI半半导体存体存储器器向量向量处理理分布式存分布式存储器器并行与分布并行与分布处理理Cra

65、y-1,IBM3090,DECVAX9000,Convax-1第五代第五代(1991年年)高性能微高性能微处理理器高密度器高密度电路路超超标量、超流量、超流水水SMP、MP、MPP机群机群大大规模、可模、可扩展展并行与分布并行与分布处理理SGICrayT3E,IBMSP2,DECAlphaServer8400Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 1.4.4应用用对系系统结构的影响构的影响 不同的不同的应用用对计算机系算机系统结构的构的设计提出了不同提出了不同的要求,的要求,通用:通用:性能价格比性能价格比专用:用:需要需要对某一方面性

66、能特某一方面性能特别支持的系支持的系统结构构 高高结构化的数构化的数值计算算气象模型、流体气象模型、流体动力学、有限元分析力学、有限元分析非非结构化的数构化的数值计算算蒙特卡洛模蒙特卡洛模拟、稀疏矩、稀疏矩阵实时多因素多因素问题语音音识别、图像像处理、理、计算机算机视觉Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 大存大存储容量和容量和输入入输出密集的出密集的问题数据数据库系系统、事、事务处理系理系统图形学和形学和设计问题计算机算机辅助助设计人工智能人工智能面向知面向知识的系的系统、推理系、推理系统等等Computer Architectur

67、e目前的主流分目前的主流分类:服服务器器桌面系桌面系统嵌入式嵌入式计算算1.41.4 计算机体系结构的发展计算机体系结构的发展 Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 应用需求的分化用需求的分化桌面桌面计算:算:性能价格比,性能价格比,对图形的支持;形的支持;服服务器:器:可用性,可可用性,可扩展性,高性能展性,高性能嵌入式嵌入式计算:成本,功耗,算:成本,功耗,实时性性基本基本发展展规律:律:计算机性能随算机性能随时间下移下移Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 诞生、生、发

68、展、成熟、消亡:展、成熟、消亡:从硬件成熟到系从硬件成熟到系统软件成熟大件成熟大约需要需要57年年的的时间;从系从系统软件成熟到件成熟到应用用软件成熟,大件成熟,大约也需也需要要57年年时间;再再过57年的年的时间,这种系种系统结构就不会作构就不会作为主流系主流系统结构存在了。构存在了。1.4.5系系统结构的生命周期构的生命周期Computer Architecture1.41.4 计算机体系结构的发展计算机体系结构的发展 Intel的的x86系列微系列微处理器中理器中32位系位系统结构的构的发展展Computer Architecture1.51.5 计算机体系结构中并行性的发展计算机体系结

69、构中并行性的发展 并行性:并行性:计算机系算机系统在同一在同一时刻或者同一刻或者同一时间间隔隔 内内进行多种运算或操作。行多种运算或操作。 只要在只要在时间上相互重叠,就存在并行性。上相互重叠,就存在并行性。同同时性:性:两个或两个以上的事件在同一两个或两个以上的事件在同一时刻刻发生。生。并并发性:性:两个或两个以上的事件在同一两个或两个以上的事件在同一时间间隔隔内内发生。生。 1.5.1并行性的概念并行性的概念Computer Architecture1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展 数据并行数据并行 (如:多个数据同(如:多个数据同时被被处理)理) 控

70、制并行控制并行 (如:多条指令同(如:多条指令同时被被执行)行) 计算机中并行性分两算机中并行性分两类:Computer Architecture1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展 数据并行数据并行,并行性等,并行性等级从低到高可分从低到高可分为: 字串位串字串位串 字串位并字串位并 字并位串字并位串 全并行全并行Computer Architecture1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展字串位串:字串位串:每次只每次只对一个字的一位一个字的一位进行行处理。理。最基本的串行最基本的串行处理方式。理方式。不存在并行性。不存在

71、并行性。字串位并:字串位并:同同时对一个字的全部位一个字的全部位进行行处理,不理,不同字之同字之间是串行的。是串行的。开始出开始出现并行性。并行性。字并位串:字并位串:同同时对许多字的同一位(称多字的同一位(称为位片)位片)进行行处理。理。具有具有较高的并行性。高的并行性。全并行:全并行:同同时对许多字的全部位或部分位多字的全部位或部分位进行行处理。理。最高一最高一级的并行。的并行。Computer Architecture1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展控制并行,并行性等控制并行,并行性等级从低到高可分从低到高可分为: 指令内部并行指令内部并行 指令指令

72、级并行并行 线程程级并行并行 任任务级或或过程程级并行并行 作作业或程序或程序级并行并行Computer Architecture1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展指令内部并行:指令内部并行:单条指令中各微操作之条指令中各微操作之间的并行。的并行。指令指令级并行:并行:并行并行执行两条或两条以上的指令。行两条或两条以上的指令。线程程级并行:并行:并行并行执行两个或两个以上的行两个或两个以上的线程。程。通常是以一个通常是以一个进程内派生的多个程内派生的多个线程程为调度度单位。位。任任务级或或过程程级并行:并行:并行并行执行两个或两个以上的行两个或两个以上的过程

73、程或任或任务(程序段),以子程序或(程序段),以子程序或进程程为调度度单元。元。作作业或程序或程序级并行:并行:并行并行执行两个或两个以上的作行两个或两个以上的作业或程序。或程序。Computer Architecture1.5.2提高并行性的技提高并行性的技术途径途径1.三种途径三种途径(1)时间重重叠叠多个多个处理理过程在程在时间上相互上相互错开,开,轮流重迭地使流重迭地使用同一套硬件用同一套硬件设备的各个部分,以加快硬件周的各个部分,以加快硬件周转而而赢得速度。得速度。(2)资源重复源重复根据根据“以数量取以数量取胜”的原的原则,通,通过重复地重复地设置置资源,尤其是硬件源,尤其是硬件资

74、源,以大幅度提高源,以大幅度提高计算机系算机系统的性的性能。能。1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展Computer Architecture(3)资源共享源共享这是一种是一种软件方法,它使多个任件方法,它使多个任务按一定按一定时间顺序序轮流使用同一套硬件流使用同一套硬件设备。目的:目的:一般一般为提高提高资源利用率而非性能。源利用率而非性能。1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展Computer Architecture2.单机系机系统中并行性的中并行性的发展展1)时间重重叠叠:在在发展高性能展高性能单处理机理机过程中起着主程

75、中起着主导作用作用,其其实现基基础为部件功能部件功能专用化。用化。u 把一件工作按功能分割把一件工作按功能分割为若干相互若干相互联系的部分;系的部分;u 把每一部分指定把每一部分指定给专门的部件完成;的部件完成;u 然后按然后按时间重叠原重叠原则把各部分把各部分执行行过程在程在时间上重叠起来,使所有部件依次分工完成一上重叠起来,使所有部件依次分工完成一组同同样的工作。的工作。1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展例如例如对于解于解释指令的五个指令的五个过程,就分程,就分别需要五个需要五个专用的部件,用的部件,即取指令部件即取指令部件(IF)、指令、指令译码部件部

76、件(ID)、指令、指令执行部件行部件(EX)、访问存存储器部件器部件(M)和写和写结果部件果部件(WB)。 Computer Architecture1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展2)资源重复:源重复:在在单处理机中运用也已理机中运用也已经十分普遍。十分普遍。多体存多体存储器器多操作部件多操作部件通用部件被分解成若干个通用部件被分解成若干个专用部件,如用部件,如加法部件、乘法部件、除法部件、加法部件、乘法部件、除法部件、逻辑运算部件等,而且同一种部件也可以重运算部件等,而且同一种部件也可以重复复设置多个置多个;只要指令所需的操作部件空只要指令所需的操作部

77、件空闲,就可以,就可以开始开始执行行这条指令(如果操作数已准条指令(如果操作数已准备好的好的话)。)。实现了了指令指令级并行并行。Computer Architecture1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展阵列列处理机(并行理机(并行处理机)理机)设置置许多相同的多相同的处理理单元,元,让它它们在同一在同一个控制器的指个控制器的指挥下,按照同一条指令的要下,按照同一条指令的要求,求,对向量或数向量或数组的各元素同的各元素同时进行同一操作,就形成了行同一操作,就形成了阵列列处理机理机。Computer Architecture3)资源源共共享享:分分时系系统

78、在在单处理理机机上上模模拟多多个个 独独立立系系统的的功功能能,形形成成所所谓虚虚拟机机的的概概念。念。 1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展Computer Architecture1.51.5 计算机体系结构中并行性的发展计算机体系结构中并行性的发展 多机系多机系统遵循遵循时间重叠、重叠、资源重复、源重复、资源共享源共享原理,原理,发展展为3 3种不同的多种不同的多处理机:理机: 同构型多同构型多处理机理机 异构型多异构型多处理机理机 分布式系分布式系统1.5.4多机系多机系统中并行性的中并行性的发展展Computer Architecture1.51.5

79、 计算机体系结构中并行性的发展计算机体系结构中并行性的发展耦合度耦合度:反映多机系反映多机系统中各机器之中各机器之间物理物理连接接的的紧密程度和交互作用能力的密程度和交互作用能力的强弱。弱。紧密耦合系密耦合系统(直接耦合系(直接耦合系统):):在在这种系种系统中,中,计算机之算机之间的物理的物理连接的接的频带较高,一般高,一般是通是通过总线或高速开关互或高速开关互连,可以共享主存。,可以共享主存。表表现形式:形式:高可靠系高可靠系统高性能系高性能系统Computer Architecture1.61.6 计算机体系结构中并行性的发展计算机体系结构中并行性的发展松散耦合系松散耦合系统(间接耦合系

80、接耦合系统):):一般是通一般是通过通道通道或通信或通信线路路实现计算机之算机之间的互的互连,可以共享外存,可以共享外存设备(磁(磁盘、磁、磁带等)。机器之等)。机器之间的相互作用是在的相互作用是在文件或数据集一文件或数据集一级上上进行的。行的。表表现形式:形式:多台多台计算机和共享的外存算机和共享的外存设备连接,不同机器接,不同机器之之间实现功能上的分工(功能功能上的分工(功能专用化),机器用化),机器处理理的的结果以文件或数据集的形式送到共享外存果以文件或数据集的形式送到共享外存设备,供其他机器供其他机器继续处理。理。计算机网算机网络,通,通过通信通信线路路连接,接,实现更大范更大范围的的

81、资源共享。源共享。Computer Architecture三种途径三种途径(1)时间重叠重叠专用外用外围处理机(松散耦合系理机(松散耦合系统)高高级语言言编译处理机、数据理机、数据库处理机理机异构型多异构型多处理机系理机系统(2)资源重复源重复容容错多多处理机理机(紧密耦合系密耦合系统)同构型多同构型多处理机系理机系统1.61.6 计算机体系结构中并行性的发展计算机体系结构中并行性的发展Computer Architecture(3)资源共享源共享局部局部计算机网(松散耦合系算机网(松散耦合系统)分布分布处理系理系统1.61.6 计算机体系结构中并行性的发展计算机体系结构中并行性的发展 把若

82、干个具有独立功能的把若干个具有独立功能的处理机(或理机(或计算算机)相互机)相互连接起来,在操作系接起来,在操作系统全全盘控制下,控制下,统一一协调地工作,而最少依地工作,而最少依赖集中的程序、集中的程序、数据或硬件。数据或硬件。同构型多同构型多处理机理机项目目异构型多异构型多处理机理机分布分布处理系理系统提高系提高系统性能性能(可靠性、速度可靠性、速度)目的目的提高系提高系统使用效使用效率率兼兼顾效率与性能效率与性能资源重复源重复技技术途径途径时间重迭重迭(功能功能专用化用化)资源共享源共享(网网络化化)同同类型型(同等功能同等功能)组成成不同不同类型型(不同功能不同功能)不限制不限制任任务

83、分布分布分工方式分工方式功能分布功能分布硬件、硬件、软件、数据件、数据等各种等各种资源分布源分布一个作一个作业由多机由多机协同并行地完成同并行地完成工作方式工作方式一个作一个作业由多机由多机协同串行地完成同串行地完成一个作一个作业由一台由一台处理机理机完成,必要完成,必要时才才请求它求它机机协作作常采用浮常采用浮动控制方式控制方式控制形式控制形式采用采用专用控制方用控制方式式分布控制方式分布控制方式紧密耦合密耦合耦合度耦合度紧密、松散耦合密、松散耦合松散、松散、紧密耦合密耦合快速性、灵活性、可重构快速性、灵活性、可重构性性对互互连网网络的要的要求求专用性用性快速、灵活、快速、灵活、简单、通、通用用三种三种类型多型多处理机比理机比较

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号