计算机组成与设计 第一章 计算机概要与设计
@
计算机组成与设计 第一章 计算机概要与设计
计算机应用分类与特性
个人计算机(presonal computer) PC
特征:
-
对单体用户提供最良好的性能,价格低廉,通常运用第三方软件。
-
用于个人计算机,通常包含图形显示器,键盘和鼠标
服务器(server)
特征:
- 通常借助网络访问
- 适合执行大量的负载任务
- 可以执行单个复杂应用
- 可以执行大量简单作业
- 能提供更强的计算和存储I/O
- 发生故障时候比个人计算机恢复的代价高的多
- 功能和价格从低端到高端伸缩范围大
- 大容量、高性能和可靠性
超级计算机(Super computers)
-
主用于高端科学和工程计算
-
代表了最高的计算能力,占市场比例小
嵌入式计算机(Embedded computers)
- 嵌入到其他设备中的计算机,一般运行预定义的一个或者一组应用程序。
- 隐藏作为系统的组件
- 功耗、成本和性能受限
后PC时代
微内核
- 紧耦合:高效,结构不清晰
- 松耦合:通讯代价,结构清晰
个人移动设备(PMD)
- 连接到网络上的小型无线设备
- 电池供电,通过下载App的方式安装软件
- 通过无线方式连接到网络
- 价格为几百美元
- 如智能手机, 平板电脑, 电子眼镜
云计算
- 在网络上提供服务的服务器集群,运营商根据应用需求出租不同数量的服务器
- 依赖于仓储规模计算机 (WSC)
- 软件即服务(SaaS)
- 软件运行在云和PMD上
- 例如Amazon 和Google的云计算服务
计算机系统结构的8个伟大构想
-
面向摩尔定律设计:计算机的集成度每\(8-9\)个月要翻一翻
-
使用抽象简化设计:在高层次中看不到低层次的细节,只能看到一个简化的模型。例如计算机网络层次划分模型,软件开发SDK,API等无不体现出抽象的思想。
-
加速大概率事件:远比优化小概率时间更能提高性能。大概率事件通常比小概率事件简单,从而易于提高。大概率事件规则意味着设计者需要知道什么事件是经常发生的,这只有通过仔细的实验与评估才能得出。可以把加速大概率事件想象成一辆赛车,由于通常情况下只有一两名乘客,因此提高赛车的速度要比提高小型货车的速度容易。
-
通过并行计算提高性能:
-
通过流水线提高性能
-
通过预测提高性能
-
存储器层次
由于存储器的速度通常影响性能,存储器的容量限制了解题的规模,当今计算系统中存储器的代价占了主要部分,因此程序员希望存储器速度更快,容量更大,价格更便宜。设计师们发现可以通过存储器层次(hierarchy of memory)来解决这些相互矛盾的需求。在存储器层次中,速度最快,容量最小并且每位价格最昂贵的存储器位于顶层,而速度最慢,容量最大且每位价格最便宜的存储器位于最底层。程序员看到的主存同时具有存储器层次中顶层的高速度和底层的大容量和便宜的特征。可以把存储器层次想象成一个堆叠的三角形,该形状表示速度/价格/和容量:越靠近顶端,存储器速度越快/每位价格越高:底层宽度越大,存储器容量越大。
- 通过冗余提高可靠性
计算机不仅需要速度快,还要工作可靠。由于任何一个物理器件都有可能失效,因此可以通过使用冗余部件的方式提高系统的可靠性(dependable),冗余部件可以替换失效部件并可以帮助检测错误。可以通过牵引式挂车来理解可靠性:牵引式挂车后轴两边具有双轮胎,在一个轮胎出问题时卡车仍然可以继续工作。(在一个轮胎出问题时,卡车司机立即直接开往修理厂进行修理,从而恢复冗余性。)
程序的层次


程序代码的级别


计算机硬件入门


安全数据存储

性能

相对性能



度量执行时间

CPU 时间
\(一个程序的CPU时间=时钟周期 \times 时钟周期时间\)
\(一个 程序的CPU时间=时钟周期/时钟频率\)
1,000 皮秒 = 1纳秒
1,000,000 皮秒 = 1微秒
1,000,000,000 皮秒 = 1毫秒
1,000,000,000,000 皮秒 = 1秒
1KHZ=10^3HZ
1MHZ=10^3KHZ
1GHz=10^3MHZ
1THZ=10^3GHZ
指令性能
\(CPU时钟周期数=程序的指令数\times 每条指令的时钟周期数\)
\(CPI:每条指令所需的平均时间周期\)
对于同一个固定程序的指令数是一样的
基本CPU性能公式
\(CPU时间=指令数*CPI*时钟周期时间\)

浙公网安备 33010602011771号