量化设计与分析方法
1.1 引言
计算机性能的提高
- 生产技术的进步:稳定
- 计算机体系结构:不稳定
计算机市场的2个重大变化
- 不再使用汇编语言编程
- 独立厂商的标准化操作系统
指令集并行和缓存
在低端应用中,如手机等嵌入式处理器:ARM成为主流。
20世纪的飞速发展有四重功效。
两个孪生瓶颈–>向多核进发
- 风冷芯片的最大功耗
- 无法有效开发更多的指令级并行
这是一个标志着历史性转折的里程碑信号:
从ILP (指令级并行)到DLP(数据级并行)和TLP(线程级并行)直至RLP(请求级并行)。
ILP:针对单处理器。(编译器和硬件隐式开发,对程序员透明)
以下显示并行,需调整应用程序的结构。增加了程序员的负担。
DLP和TLP:针对多处理器。
RLP:针对仓库(集群cluseter)级计算机
1.2 计算机的分类

以能否运行第三方软件作为区分嵌入式和非嵌入式计算机的分界线
并行度与并行体系结构的分类
能耗和成本,应用程序中
- 数据级并行(DLP)
- 任务级并行(TLP)
按 指令流、数据流和多倍性
3. 单指令流、单数据流(SISD)
4. 单指令流、多数据流(SIMD)
5. 多指令流、单数据流(MISD)
6. 多指令流、多数据流(MIMD)
1.3 计算机体系结构的定义
程序设计者所看到的一个计算机属性,即概念性结构和功能特性。程序设计者指机器语言或译程序设计者。
1.3.1指令集体系结构(ISA)
现今几乎所有的ISA都划分到通用寄存器体系结构中,在这种体系结构中,操作数或者是寄存器,或者是存储器地址。
- 寄存器-存储器ISA(80x86)
- 载入-存储ISA(ARM、MIPS)
指令集结构的分类
- 在CPU中操作数的存储方法(最主要。有堆栈、累加器、一组寄存器,对应堆栈型指令集结构、累加器型指令集结构和通用寄存器型指令集结构)
- 指令中显示表示的操作数个数
- 操作数的寻址方式
- 指令集所提供的操作类型
- 操作数的类型和大小
| CPU提供的暂存器 | 每条ALU指令显式表示的操作数个数 | 运算结果的目的地 | 访问显式操作数的方法 |
|---|---|---|---|
| 堆栈 | 0 | 堆栈 | PUSH/POP |
| 累加器 | 1 | 累加器 | LOAD/STORE累加器 |
| 一组寄存器 | 2/3 | 寄存器或存储器 | LOAD/STORE寄存器或存储器 |
存储器寻址
字节寻址。有些体系结构(像ARM和MIPS)要求操作对象必须是对齐的(A mod s=0)。80x86不需要。
寻址模式
。。。。。。。。。。
ISA编码
有两种基本的编码选择:固定长度和可变长度。

1.3.2 真正的计算机体系结构
设计满足目标和功能需求的组成和硬件。
计算机的实现包括两个方面:组成和硬件(实现)。
体系结构涵盖了计算机设计的所有三个方面:指令集体系结构、组成或微体系结构、硬件。
1.4 技术趋势
5种实现技术。
- 集成电路逻辑技术
- 半导体DRAM
- 半导体闪存
- 磁盘技术
- 网络技术
性能趋势:带宽胜过延迟
功率和能耗
动态能耗
逻辑转变脉冲0→1→0或1→0→1的能耗:

0→1或1→0的能耗。


静态功耗:

集成电路一系列公式。
可信任度。平均无故障时间(MTTF),平均修复时间(MTTR)。

性能。


基准测试的两方面。
计算机设计的量化原理
- 充分利用并行
- 局域性原理(程序的时间、空间)
- 重点常见情形(大概率事件)
- Amdahl定律
系统加速比、总执行时间公式 - 处理器性能公式
CPU时间=总时钟周期数/时钟频率,CPI=总时钟周期数/IC,总CPU时间=CPI*IC/时钟频率 - 性能、价格和功耗
- 谬论与易犯错误
&spm=1001.2101.3001.5002&articleId=120405165&d=1&t=3&u=413e527ceaba45688848ea4da1c62056)
5390

被折叠的 条评论
为什么被折叠?



