【PPT课件】计算机系统结构的基本概念

上传人:豆浆 文档编号:1128708 上传时间:2017-05-29 格式:PPT 页数:54 大小:897.50KB
返回 下载 相关 举报
【PPT课件】计算机系统结构的基本概念_第1页
第1页 / 共54页
【PPT课件】计算机系统结构的基本概念_第2页
第2页 / 共54页
【PPT课件】计算机系统结构的基本概念_第3页
第3页 / 共54页
【PPT课件】计算机系统结构的基本概念_第4页
第4页 / 共54页
【PPT课件】计算机系统结构的基本概念_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《【PPT课件】计算机系统结构的基本概念》由会员分享,可在线阅读,更多相关《【PPT课件】计算机系统结构的基本概念(54页珍藏版)》请在金锄头文库上搜索。

1、高等计算机系统结构Computer Architecture,课程教学目的,“计算机系统结构”是计算机科学领域中的一个重要分支。它强调从总体结构、系统分析这一角度来研究计算机系统。通过本书的学习,读者能把在“计算机组成原理”、“数据结构”、“操作系统”、“汇编语言程序设计”等课程中所学的软件与硬件知识有机地结合起来,从而建立有关计算机系统的完整概念。教材前言,教材,张晨曦等. 高等教育出版社,2008.6计算机系统结构John L. Hennessy, David A. Patterson.中文版:计算机系统结构量化研究方法(第三版)郑纬民 汤志忠 汪东升 译,电子工业出版社英文版:Compu

2、ter Architecture:A Quantitative Approach, Third Edition 机械工业出版社郑纬民 汤志忠. 清华大学出版社, 1998.9计算机系统结构(第二版),网站,张晨曦的精品课程网站http:/ Home Pagehttp:/www-inst.eecs.berkeley.edu/cs252/北大微处理器研发中心http:/ Computer Architecture Pagehttp:/www.cs.wisc.edu/arch/www/,第1章 计算机系统结构的基本概念,计算机系统结构的概念和发展定量分析和性能评测计算机系统结构的并行性,1.1 引言

3、计算机技术的高速发展得益于:制造技术和设计创新基于微处理器的系统在整个计算机设计领域占统治地位工作站和个人计算机已经成为计算机工业的主要产品小型机被用微处理器构建的服务器所取代大型机也几乎已经被通用微处理器构成的多处理器代替系统结构的重大转折:从单纯依靠指令级并行转向开发线程级并行和数据级并行,1.2.1 计算机系统的层次结构,虚拟,虚拟(virtual):利用其他部件实现的本来不存在的事物或属性例如,虚拟机(VM):由软件实现的机器再如,虚拟主存、虚拟磁盘、虚拟现实从不同角度所看到的计算机系统的属性不同,1.2.2 计算机系统结构的定义,Amdahl(阿姆达尔)于1964年在推出IBM360

4、系列计算机时提出了系统结构的概念:程序员所看到的计算机系统的属性,即概念性结构和功能特性The structure of a computer that a machine language programmer must understand to write a correct (timing independent) program for that machine Amdahl, Blaauw and Brookes, 1964,透明,透明(transparent):本来存在的事物或属性,从某种角度看似乎不存在例如,浮点数表示、乘法指令:对高级语言程序员、应用程序员是透明的,对汇编语言

5、程序员、机器语言程序员则是不透明的再如,数据总线宽度、微程序:对汇编语言程序员、机器语言程序员是透明的,对硬件设计者、计算机维修人员则是不透明的,软硬件界面,assembler,complier,Operating System,library,ISA,S/W,H/W,Application,H/W:Hardware 硬件,S/W:Software 软件,ISA:Instruction Set Architecture 指令集结构,1.2.3 计算机组成和计算机实现,计算机系统结构(Computer architecture)计算机系统的软件与硬件的界面指令系统程序员所看到的计算机属性外特性

6、计算机组成(Computer organization)组织计算机系统结构的逻辑实现计算机实现(Computer implementation)计算机组成的物理实现计算机系统的结构,组成,实现是三个完全不同的概念,相互间有着十分密切的依赖关系和相互的影响。广义的计算机系统结构即包括经典的指令集结构,也包括计算机组成和实现技术的研究,结构、组成和实现,一种系统结构可以有多种组成一种组成可以有多种物理实现,是否设置乘方/开方指令,逻辑设计1(硬联电路),实现方案1(V1,$1,T1),逻辑设计3(微程序),逻辑设计2(ROM查表),实现方案2(V2,$2,T2),实现方案3(V3,$3,T3),1

7、.2.4 计算机系统结构的分类,Flynn1966按照指令流和数据流的多倍性分类单指令流单数据流SISD:顺序处理计算机单指令流多数据流SIMD:多媒体指令和向量计算机多指令流单数据流MISD:尚无商用多指令流多数据流MIMD:多处理机系统,指令流:计算机执行的指令序列数据流:由指令流调用的数据序列多倍性:同时处于同一执行阶段的指令或数据的最大数目,1.3.1 计算机系统设计的定量原理,1. 以经常性事件为重点(大概率事件优先原则)对经常发生的情况采用优化的方法加快经常性事件的速度对于最常见事件赋予优先的处理权和资源使用权2. 阿姆达尔(Amdahl)定律定义系统性能的加速比(Speedup)

8、,用于计算系统中的某个部分进行改进后,系统总体性能可获得多大的提高,Make the common case fast !,加速比1,可改进比例Fe改进前,可改进部分占原执行时间的比例部件加速比Se改进后,可改进部分改进后性能提高比,加速比2,改进前,改进后,未改进比例:1Fe,改进比例:Fe,Fe/Se,未改进部分,未改进比例:1Fe,加速比3,当Fe(可改进比例)很小甚至0时:Sn1 当Se(部件加速比)很大甚至时:,Sn:系统加速比To:采用改进措施前执行该任务所用的时间Tn:采用改进措施后执行该任务所用的时间,例 1.1,将某一功能的处理速度提高到原来的20倍,该功能的原处理时间仅占整

9、个运行时间的40%,则采用此提高性能的方法后,能使整个系统的性能提高多少?解:由题意可知:Fe=0.4, Se=20根据Amdahl定律,加速比为:,例 1.2,某计算机系统采用浮点运算部件后,使浮点运算速度提高到原来的20倍,而系统运行某一程序的整体性能提高到原来的5倍,计算该程序中浮点操作所占的比例。解:由题意可知:Se=20,Sn=5 根据Amdahl定律:,可改进比例Fe=84.2%,3. CPU性能公式,CPU性能的影响因素,CPU时间ICCPI时钟周期长度,CPI,时钟周期,指令条数IC,程序,编译程序,计算机组织,实现技术,指令集结构ISA,补充例题,假设在一般程序中浮点开平方操

10、作FPSQR所占的比例为2%,它的CPI为100;其他浮点操作FP所占的比例为23%,它的CPI4.0;其余75%指令的CPI1.33,计算该处理机的CPI。如果FPSQR操作的CPI也为4.0,重新计算CPI。解答:CPI11002%423%1.3375%3.92CPI2425%1.3375%2.00改进了在用户程序中仅占2的开平方操作,整个机器的等效运算速度提高了近一倍,例 1.31,有两种条件分支指令的设计方案: CPUA:比较指令设置条件码,条件分支指令测试条件码进行分支 CPUB:条件分支指令包括比较、并进行分支两种方案中,条件分支指令占用2个时钟周期、其他指令占用1个时钟周期。CP

11、UA的条件分支指令占20%,比较指令也占20%。 如果CPUA的时钟周期比CPUB快1.25倍,哪个CPU更快? 如果CPUA的时钟周期比CPUB快1.1倍,哪个CPU更快?,例 1.32,解答:CPIA20%280%11.2CPU时间AICA1.2时钟周期ACPUB没有独立的比较指令:ICB 80%ICACPUB条件分支指令所占比例:20%80%25%CPIB25%275%11.25CPU时间B 80%ICA1.25时钟周期B ICA时钟周期B 时钟周期B 1.25时钟周期ACPU时间B ICA 1.25时钟周期A CPU时间A 时钟周期B 1.1时钟周期ACPU时间B ICA 1.1时钟周

12、期A CPU时间A,4. 程序的局部性原理,程序的顺序执行和程序的循环等原因,程序往往重复使用它刚刚使用过的数据和指令局部性原理(principle of locality)处理器访问存储器时,所访问的存储单元在一段时间内都趋向于一个较小的连续区域中时间局部性:程序即将用到的信息很可能就是目前正在使用的信息(近期被访问的程序,很可能不久又将再次被访问)空间局部性:程序即将用到的信息很可能与目前正在使用的信息在空间上相邻或者临近(地址上相邻近的程序可能会被连续的访问),求平均值函数的局部性,long mean(long d, long num) long i,temp=0; for(i=0; i

13、num; i+) temp=temp+di; temp=temp/num; return (temp);,1.3.2 计算机系统的性能评测,最初:执行单项操作的时间,例如:加法操作时间改进为:平均指令执行时间进一步成为容易理解的:每秒百万条指令(Million Instructions Per Second)同时出现:MFLOPS(每秒百万浮点操作)最终形成:测试程序(Benchmarks),1. 执行时间和吞吐率,使用者:减少执行时间(execution time)程序从开始执行到结束执行所用的时间管理员:增大吞吐率(throughput)流量单位时间内完成的总任务量衡量性能最可靠的标准:真

14、实程序的执行时间相同的任务,花费的时间越少、速度越快、性能越高,区别在于是单任务(关注执行时间)还是多任务(关注吞吐率)X的速度是Y的n倍:,CPU时间与CPU性能,真实程序的执行时间CPU时间I/O操作等时间CPU时间用户CPU时间系统CPU时间CPU性能对应用户CPU时间,时间越少,性能越高,2. 基准测试程序(benchmark),核心测试程序Livermore Loops和Linpack小型测试程序Quicksort,Puzzle和Sieve合成测试程序Whetstone和Dhrystone,真实应用程序 修正的(或者脚本化)应用程序,基准测试程序组件SPEC,Standard Per

15、formance Evaluation Corporationhttp:/www.spec.orgSPEC89SPEC92SPEC95SPEC200012个整数基准程序(CINT2000)14个浮点基准程序(CFP2000)WinBench 99 and Winstone 2004http:/WinBench 99:measures the performance of a PCs graphics, disk, processor, and video subsystems Business Winstone 2004:application-based benchmark that mea

16、sures a PCs overall performance,CINT2000,BenchmarkLanguageDescriptions164.gzip CCompression 175.vpr CFPGA Circuit Placement and Routing 176.gcc CC Programming Language Compiler 181.mcf CCombinatorial Optimization 186.crafty CGame Playing: Chess 197.parser CWord Processing 252.eon C+Computer Visualization 253.perlbmk CPERL Programming Language 254.gap CGroup Theory, Interpreter 255.vortex CObject-oriented Database 256.bzip2 CCompression 300.twolf CPlace and Route Simulator,

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

最新文档


当前位置:首页 > 中学教育 > 教学课件 > 高中课件

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