Files
final-exam/计算机系统结构/复习文档/计算机系统结构基础与定量原理.md
T

4.9 KiB
Raw Blame History

tags, create time
tags create time
计算机系统结构
复习
定量原理
2026-06-15 10:00

计算机系统结构基础与定量原理

概述

本文档覆盖计算机系统结构课程的基石内容:系统结构的定义与层次、Flynn 分类法、四大定量原理(Amdahl 定律、CPU 性能公式、以经常性事件为重点、程序局部性原理)。这些概念是后续学习流水线、Cache、指令系统等专题的理论基础。

[!tip] 考试重点 Amdahl 定律的计算题几乎每年必考,需熟练掌握公式推导和应用。Flynn 分类、系统结构定义常以选择题出现。

正文

一、计算机系统结构的定义

Amdahl 提出的经典定义:计算机系统结构是机器语言程序员所见到的计算机属性,即指令集架构(ISA)层面。

层次 程序员类型 所见属性
应用语言 应用程序员 应用语言虚拟机
高级语言 高级语言程序员 高级语言虚拟机
系统结构 机器语言程序员 指令集架构 ISA
组成 逻辑设计员 数据通路、控制、存储接口
实现 硬件工程师 电路、芯片、工艺

[!question] 为什么系统结构的定义以"机器语言程序员"为基准? 因为 ISA 是软件和硬件的分界面。机器语言程序员直接与指令集打交道,而 ISA 之上的软件可以在不同硬件实现上运行,ISA 之下的硬件变化不影响软件兼容性。

二、Flynn 分类法

按照指令流和数据流的多倍性进行分类:

类型 指令流 数据流 典型代表
SISD 单 单 传统单处理器
SIMD 单 多 向量处理器、GPU
MISD 多 单 理论分类,无实际计算机
MIMD 多 多 多处理器、集群

[!note] MISD 为何不存在? MISD 要求同一个数据被多条不同指令同时处理,这在冯·诺依曼架构下没有实际应用场景。某些容错系统(如航天计算机)被部分学者归为 MISD,但学界主流观点认为 MISD 仅为理论分类。

三、四大定量原理

3.1 以经常性事件为重点

核心思想:对经常发生的情况赋予优先的处理权和资源使用权,从而获得更大的总体改善。

[!example] 实例 CPU 中加法操作远多于除法操作,因此将加法器设计得尽可能快,比优化除法器更能提升整体性能。

3.2 Amdahl 定律

S = \frac{1}{(1-f) + \frac{f}{n}}
符号 含义
S 系统加速比
f 被改进部分在原系统中所占时间比例
n 被改进部分的性能提升倍数

关键结论:

  • 当 n \to \infty 时,$S_{max} = \frac{1}{1-f}$,加速比有上限
  • 系统性能受限于最慢的部件(瓶颈)

[!question] 某功能占系统时间 20%,提升 15 倍,加速比是多少? $S = \frac{1}{0.8 + 0.2/15} = \frac{1}{0.8133} \approx 1.23$。即使将该功能提升到无限快,加速比上限也只有 $1/0.8 = 1.25$。

3.3 CPU 性能公式

CPU 时间 = IC \times CPI \times \tau
符号 含义 单位
IC 指令条数(Instruction Count) 条
CPI 每条指令平均时钟周期数 周期/条
\tau 时钟周期时间 秒/周期

派生指标:

  • $MIPS = \frac{f}{CPI \times 10^6}$(f 为主频,单位 Hz)
  • $MIPS = \frac{IC}{T \times 10^6}$(T 为执行时间,单位 秒)

[!warning] MIPS 的局限性 不同指令集的 MIPS 不可直接比较。RISC 机器 MIPS 通常高于 CISC,但不代表性能更优——RISC 需要更多指令完成同样任务。

3.4 程序局部性原理

程序在执行时所访问的地址空间分布不是随机的,而是相对地聚集。

  • 时间局部性:最近被访问的地址很可能再次被访问(如循环变量)
  • 空间局部性:与当前访问地址相邻的地址很可能被访问(如数组遍历)

[!tip] 局部性原理的应用 Cache、虚拟内存、预取技术都建立在局部性原理之上。理解局部性是理解整个存储层次设计的关键。

graph LR
    A["Time Locality"] --> B["Loop Variables"]
    A --> C["Stack Access"]
    D["Space Locality"] --> E["Array Traversal"]
    D --> F["Sequential Code"]
    B --> G["Cache Design"]
    E --> G

四、性能评价指标汇总

指标 公式 适用场景
执行时间 T = IC \times CPI \times \tau 通用
MIPS f / (CPI \times 10^6) 同一 ISA 比较
MFLOPS 浮点操作数 / (T \times 10^6) 科学计算
加速比 T_{old} / T_{new} 优化前后对比

关联笔记