Appearance
计算机的性能指标
考情分析
CPU 执行时间的计算是 408 真题中考频最高的知识点之一(2012、2013、2014、2017、2022、2023 均涉及)。CPI、MIPS 的定义和相互关系也常以选择题形式出现。
吞吐量与响应时间
- 吞吐量:系统在单位时间内处理请求的数量
- 响应时间:从用户发出请求到系统返回结果的总等待时间,包括 CPU 时间和等待时间(磁盘访问、I/O 等)
主频与时钟周期
- CPU 时钟周期:CPU 工作的最小时间单位,由主时钟脉冲决定
- 主频(时钟频率):每秒包含的时钟周期数,单位 Hz
主频
同一型号 CPU,主频越高执行越快。但不同型号的 CPU 不能仅凭主频比较性能,因为每条指令所需的时钟周期数(CPI)可能不同。
CPI 与 IPS
CPI(Cycles Per Instruction):执行一条指令所需的平均时钟周期数。
IPS(Instructions Per Second):每秒执行的指令条数。
不同指令的 CPI 不同,程序的 CPI 是所有指令 CPI 的加权平均值:
其中
CPU 执行时间(核心公式)
CPU 性能取决于三个要素:指令条数、CPI、主频,三者相互制约。
- CISC:指令条数少,但 CPI 高、主频难以提升
- RISC:指令条数多,但 CPI 低、主频更容易提升
例 1:M1 主频
解:P 在 M1 的总时钟周期数
P 在 M2 的总时钟周期数
M2 主频是 M1 的 2.5 倍,但实际性能仅提升
例 2:某 CPU 主频 800MHz,程序包含 4 类指令,执行情况如下:
| 指令类别 | CPI | 占比 |
|---|---|---|
| A | 1 | 50% |
| B | 2 | 20% |
| C | 3 | 10% |
| D | 4 | 20% |
MIPS
MIPS 表示每秒执行多少百万条指令。
局限性:不同机器指令集不同,一条指令的功能强度不等,MIPS 不适合跨架构比较。
FLOPS 系列
FLOPS 表示每秒执行的浮点运算次数。
| 指标 | 含义 | 数量级 |
|---|---|---|
| MFLOPS | 百万次浮点运算/秒 | |
| GFLOPS | 十亿次/秒 | |
| TFLOPS | 万亿次/秒 | |
| PFLOPS | 千万亿次/秒 | |
| EFLOPS | 百亿亿次/秒 | |
| ZFLOPS | 十万亿亿次/秒 |
K/M/G 的两种含义
| 场景 | K | M | G |
|---|---|---|---|
| 存储容量 | |||
| 速率/频率 |
基准程序
基准程序(Benchmarks)是一组专门用于性能评测的标准程序,在不同机器上运行同一基准程序并比较执行时间,以评估性能。
局限性:硬件或编译器可能针对基准程序的关键代码做特殊优化,导致评测结果不能代表处理一般负载的能力。
易混淆知识点
1. 主频高就一定快吗?
不一定。CPU 执行时间 = 指令条数
2. MIPS 数越大性能越好吗?
不一定。MIPS 衡量的是每秒执行多少百万条指令,但不同指令的功能差距很大。一台机器的 MIPS 数高可能是因为它的指令集简单(每条指令做的事少),完成同一任务反而需要更多指令。MIPS 不能跨指令集比较。
3. 翻译程序、汇编程序、编译程序、解释程序有什么区别?
翻译程序是统称,包括汇编程序和编译程序。汇编程序将汇编语言翻译成机器语言。编译程序将高级语言整体翻译成目标代码后再执行。解释程序对高级语言逐条翻译并立即执行,不生成目标代码。编译生成的程序执行更快,解释更灵活但每次运行都需要重新翻译。
考点清单
- CPU 执行时间 = 指令条数
CPI / 主频(最核心公式) - CPI = 总时钟周期数 / 指令条数;IPS = 主频 / CPI
- MIPS = 主频 / (CPI
) - 主频高不等于性能好——还取决于 CPI 和指令条数
- MIPS 不能跨指令集比较
- 存储用
,速率用 - 基准程序存在针对性优化的局限