【计算机组成与设计 硬件/软件接口-1】计算机概要和技术

在这里插入图片描述

计算机概要和技术

引言

计算机的发展史:参考链接
现代计算机,按照应用来分,有如下的类型:

  • 个人计算机
  • 服务器
  • 超级计算机
  • 嵌入式计算机

后PC时代的概念:

  • 个人移动设备
  • 云计算

哪些因素会影响程序的性能?

  • 算法:决定了源码级语句的数量和I/O操作的数量
  • 编程语言、编译器和体系结构:决定了每条源码级语句对应的计算机指令数量
  • 处理器和存储系统:决定了指令的执行速度
  • I/O系统:决定了I/O 操作的执行速度

计算机系统结构中的8个伟大思想

  • 面向摩尔定律的设计
  • 使用抽象简化设计:如通过指令集体系结构实现底层硬件和软件之间的交互
  • 加速大概率事件:如动态分支预测、Cache缓存的设计、TLB的设计
  • 通过并行提高性能:如处理机流水线实现了指令间并行
  • 通过流水线提高性能
  • 通过预测提高性能
  • 存储器层次
  • 通过冗余提高可靠性

程序概念入门

程序根据层次的不同,可分为:

  • 应用软件
  • 系统软件(compiler,OS,etc)
  • 硬件
    在这里插入图片描述
    程序代码的级别:
  • 高级语言
  • 汇编语言
  • 机器语言

硬件概念入门

在这里插入图片描述
硬件要细说有很多,主要包括下面一些设备硬件:

  • 用户接口设备:显示器,键鼠
  • 存储设备:总体上可分为易失性存储器(内存,Cache)和非易失性存储器(硬盘,闪存,光盘)
  • 网络适配器

处理器和存储器制造技术

  • 容量和性能不断增加
  • 成本不断降低
    -在这里插入图片描述在这里插入图片描述

性能

注:不能简单以MIPS(Million Instructions Per Second)作为性能的度量指标。因为,并不是执行的指令数越多,就代表性能越高。

要定义性能,首先我们得先定义几个概念:

  • 响应时间(执行时间):计算机完成某任务所需的总时间
  • 吞吐率(带宽):单位时间内完成的任务数

有了上面的定义,我们就可以定义性能:

性能 = 1 / 执行时间 (在某种程度上,这相当于是吞吐率,即单位时间内执行的事务数)

所谓“计算机X比计算机Y快n倍”,指的是:
在这里插入图片描述
那么,执行时间是怎么度量的?答案是采用时钟周期(时钟频率)。
在这里插入图片描述
从上面这个式子,我们就可以看出,要先提高性能,要么就是减小CPU的时钟周期数,要么就是增大时钟频率。

结合指令而言,我们就还需要引入CPI这个重要概念,所谓CPI,全名是:clock cycle per instruction,表示执行每条指令所需要的时钟周期数的平均值。
在这里插入图片描述
我们回到最开始讲的影响程序性能的因素上来:

  • 算法:影响程序的指令数,可能影响CPI
  • 编程语言:影响程序的指令数和CPI
  • 编译程序:影响程序的指令数和CPI
  • 指令集体系结构:影响指令数、CPI和时钟频率

功耗墙

在这里插入图片描述
基于CMOS集成电路技术,每个晶体管的功耗可以按如下的公式进行计算:
在这里插入图片描述
而所谓功耗墙,可以理解为处理器消耗的最大功耗,当处理器功耗超过功耗墙设置时,处理器会自动降频。

从单处理器向多处理器转变

单处理器顶多就是实现程序并发执行,而真正的并行执行,则还需要依赖多处理器架构。现代计算机大多数都是多核的了,并行编程也成为了一项技术。
在这里插入图片描述
在这里插入图片描述

SPEC CPU 基准测试程序

这个程序是用于比较和测量计算机性能(主要指的是CPU,IO影响因素可以忽略)的程序

Amdahl定律

Amdahl定律阐述了一个事实:即使我们可以通过并行来提升程序的性能,但这种提升是有上限的,这意味着无论我们如何增大处理器数目,加速比是无法高于某个阈值。之所以会有这样的效果,就是因为程序并不是每一个部分都会受益于并行,有些东西是并行也无法加速的。但是这也启示我们,如果一个程序中可以并行执行的部分越大,那么该程序可以通过并行提升的空间就越大,反映了加速大概率事件的伟大设计思想。

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
这本最畅销的计算机组成书籍经过全面更新,关注现今发生在计算机体系结构领域的革命性变革:从单处理器发展到多核微处理器。此外,出版这本书的ARM版是为了强调嵌入式系统对于全亚洲计算行业的重要性,并采用ARM处理器来讨论实际计算机指令集和算术运算,因为ARM是用于嵌入式设备的最流行的指令集架构,而全世界每年约销售40亿个嵌入式设备。与前几版一样,本书采用了一个MIPS处理器来展示计算机硬件技术、流水线、存储器层次结构以及I/O等基本功能。此外,本书还包括一些关于x86架构的介绍。   本书主要特点   ·采用ARMv6(ARM11系列)为主要架构来展示指令系统和计算机算术运算的基本功能。   ·覆盖从串行计算到并行计算的革命性变革,新增了关于并行化的一章,并且每章中还有一些强调并行硬件软件主题的小节。   ·新增一个由NVIDIA的首席科学家和架构主管撰写的附录,介绍了现代GPU的出现和重要性,首次详细描述了这个针对可视计算进行了优化的高度并行化、多线程、多核的处理器。   ·描述一种度量多核性能的独特方法——“Roofline model”,自带benchmark测试和分析AMD Opteron X4、Intel Xeon 5000、Sun UltraSPARC T2和 IBM Cell的性能。   ·涵盖了一些关于闪存和虚拟机的新内容。   ·提供了大量富有启发性的练习题,内容达200多页。   ·将AMD Opteron X4和Intel Nehalem作为贯穿本书的实例。   ·用SPEC CPU2006组件更新了所有处理器性能实例。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值