第一篇 计算机设计的基本原理.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章 计算机系统的基本概念 【课前思考】 【学习目标】 【学习指南】 【难重点】 课前思考 学习目标 学习指南 难重点 1.1 基本概念 1.1.1 计算机系统的层次结构 透明性的概念 1.1.2 计算机系统结构的定义 概念性结构 功能特性 指令系统及执行模式 计算机组成 计算机实现 1.1.3 计算机系统的分类 1.2 计算机系统的性能评价 1.3 计算机系统的设计技术 1.3.1 软硬件取舍 1.3.1 软硬件取舍 1.3.1 软硬件取舍 1.3.2 改进性能的主要途径 1.3.3 软件兼容性设计方法 1.3.4 计算机系统结构的设计过程 1.4 计算机系统结构的发展 1.4.2 器件的发展 1.4.3 应用发展的影响 1.2.3 基准测试程序 虽然从理论上,上节的测试程序都是有用的,但在实施起来非常困难。这是因为,机器的性能价格比直接关系到计算机企业的兴衰,所以各企业都不遗余力地提高广泛使用的测试软件在其机器上运行的性能。这种压力可能会扭曲软件和硬件工程技术人员的努力,为机器增加了各种旨在提高基准合成测试程序、核心测试程序、直至个别真实程序性能的优化措施。但是,针对每个真实程序增加优化措施显然是不太现实的,因此,目前普遍采用成套的基准测试软件进行测试。 ???? 成套的基准测试软件由各种各样的程序组成,可能包括核心程序,但大多数是典型的真实程序。 成套的基准测试软件一个很重要的优点就是单独某一种基准测试软件的弱点会被另一种基准测试软件掩盖。如果用运行成套的基准测试软件的时间作为机器性能的衡量标准,这一优点就更加明显了。 1.2.4 MIPS和MFLOPS 除了时间之外,还有一个衡量机器性能的指标,即MIPS(Million Instructions Per Second)也称为每秒百万条指令。对于一个给定的程序,MIPS就是: 把MIPS与时间相联系,得到如下的公式: 既然MIPS是单位时间内执行的运算速率,而性能又可以用执行时间的倒数来表示,那么较快的机器就应该有较高的MIPS。 ???? 能够看出,MIPS的优点是它非常易于理解,越快的机器意味着越高的MIPS,这也比较符合人们的直观感受。但是使用MIPS衡量机器的性能时以下三点值得商榷: (1) MIPS依赖于指令集,所以不同指令集的机器的MIPS缺乏可比性。 (2) 同一台机器的MIPS可能因程序而异。 (3) 最重要的是,MIPS可能与性能相反。 能够说明最后一点的最经典的例子就是带有浮点选件的机器的MIPS。因为执行一条浮点指令比执行一条整数指令要花更多的时钟周期,所以使用浮点选件进行浮点操作的机器比使用软件进行浮点操作的机器速度快,而MIPS较低。利用软件进行浮点操作的机器即使运行简单得多的程序,其MIPS值也会比使用浮点选件进行浮点操作的机器的MIPS高,但它总的执行时间却长得多。 例: ????假定我们要为表1.4中已经作过测试的load/store类型计算机设计一个优化编译器。该编译器虽然不能减少load、store和分支指令,但可以将算术逻辑部件(ALU)指令去掉50%。忽略系统影响,并假定时钟周期为2纳秒(时钟频率500MHz),未经优化的CPI (Cycles Per Instruction)为1.57。请问优化代码与未优化代码的MIPS之比为多少?按MIPS高低排序与按性能排序的结果相同吗? 2 24% 分支指令 2 12% Store指令 2 21% Load指令 1 43% ALU操作 时钟周期数 频度 指令类型 解: 我们知道未经优化的CPI为1.57,所以有 : 未优化代码的CPU执行时间为: 对于优化代码而言,因为ALU指令的一半被去掉了,所以指令数中要减去被去掉的ALU指令,所以有: 结论:优化代码的性能为:优化代码的速度是未优化代码的3.14/2.72=1.15倍,但它的MIPS较低:289 /318。 另一个常用的表示执行时间的指标是每秒百万条浮点指令,简写为megaFLOPS或MFLOPS(Million Floating Point Operations Per Second)。求FLOPS的公式很简单: ??? ?显然,MFLOPS的大小与机器和程序都有关。MFLOPS是用来测试浮点程序性能的,而不适用于其它用途。作为一个极端的例子,无论机器多快,编译程序的MFLOPS都接近于零,因为它很少使用浮点指令。 1.3.1 软硬件取舍 1.3.2 改进性能的主要途径 1.3.3 软件兼容性的设计方法 1.3.4

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档