Skip to content

计算机的性能指标

考情分析

CPU 执行时间的计算是 408 真题中考频最高的知识点之一(2012、2013、2014、2017、2022、2023 均涉及)。CPI、MIPS 的定义和相互关系也常以选择题形式出现。

吞吐量与响应时间

  • 吞吐量:系统在单位时间内处理请求的数量
  • 响应时间:从用户发出请求到系统返回结果的总等待时间,包括 CPU 时间和等待时间(磁盘访问、I/O 等)

主频与时钟周期

CPU 时钟周期=1主频
  • CPU 时钟周期:CPU 工作的最小时间单位,由主时钟脉冲决定
  • 主频(时钟频率):每秒包含的时钟周期数,单位 Hz

主频 10GHz 意味着每秒 10×109 个时钟周期,每个周期 0.1ns

同一型号 CPU,主频越高执行越快。但不同型号的 CPU 不能仅凭主频比较性能,因为每条指令所需的时钟周期数(CPI)可能不同。

CPI 与 IPS

CPI(Cycles Per Instruction):执行一条指令所需的平均时钟周期数。

CPI=总时钟周期数指令条数

IPS(Instructions Per Second):每秒执行的指令条数。

IPS=主频CPI

不同指令的 CPI 不同,程序的 CPI 是所有指令 CPI 的加权平均值:

CPI=i=1nCPIi×fi

其中 fi 是第 i 类指令在程序中出现的频率。

CPU 执行时间(核心公式)

CPU 执行时间=指令条数×CPI主频=总时钟周期数主频

CPU 性能取决于三个要素:指令条数CPI主频,三者相互制约。

  • CISC:指令条数少,但 CPI 高、主频难以提升
  • RISC:指令条数多,但 CPI 低、主频更容易提升

例 1:M1 主频 2GHz,程序 P 运行 10s。M2 主频提升但 CPI 变为 M1 的 1.5 倍,要使 P 在 M2 上运行 6s,M2 主频至少多少?

解:P 在 M1 的总时钟周期数 =10×2×109=2×1010

P 在 M2 的总时钟周期数 =1.5×2×1010=3×1010

M2 主频3×10106=5GHz

M2 主频是 M1 的 2.5 倍,但实际性能仅提升 10/61.67 倍。

例 2:某 CPU 主频 800MHz,程序包含 4 类指令,执行情况如下:

指令类别CPI占比
A150%
B220%
C310%
D420%
CPI=1×0.5+2×0.2+3×0.1+4×0.2=2.0MIPS=800×1062.0×106=400

MIPS

MIPS=指令条数CPU 执行时间×106=主频CPI×106

MIPS 表示每秒执行多少百万条指令。

局限性:不同机器指令集不同,一条指令的功能强度不等,MIPS 不适合跨架构比较。

FLOPS 系列

FLOPS 表示每秒执行的浮点运算次数。

指标含义数量级
MFLOPS百万次浮点运算/秒106
GFLOPS十亿次/秒109
TFLOPS万亿次/秒1012
PFLOPS千万亿次/秒1015
EFLOPS百亿亿次/秒1018
ZFLOPS十万亿亿次/秒1021

K/M/G 的两种含义

场景KMG
存储容量210=1024220230
速率/频率103=1000106109

1KB=1024B,但 1GHz=109Hz

基准程序

基准程序(Benchmarks)是一组专门用于性能评测的标准程序,在不同机器上运行同一基准程序并比较执行时间,以评估性能。

局限性:硬件或编译器可能针对基准程序的关键代码做特殊优化,导致评测结果不能代表处理一般负载的能力。

易混淆知识点

1. 主频高就一定快吗?

不一定。CPU 执行时间 = 指令条数 × CPI / 主频。即使主频更高,如果 CPI 更大(每条指令需要更多周期)或指令条数更多(指令集效率低),整体可能更慢。比较不同 CPU 的性能必须三个因素综合考虑。

2. MIPS 数越大性能越好吗?

不一定。MIPS 衡量的是每秒执行多少百万条指令,但不同指令的功能差距很大。一台机器的 MIPS 数高可能是因为它的指令集简单(每条指令做的事少),完成同一任务反而需要更多指令。MIPS 不能跨指令集比较。

3. 翻译程序、汇编程序、编译程序、解释程序有什么区别?

翻译程序是统称,包括汇编程序和编译程序。汇编程序将汇编语言翻译成机器语言。编译程序将高级语言整体翻译成目标代码后再执行。解释程序对高级语言逐条翻译并立即执行,不生成目标代码。编译生成的程序执行更快,解释更灵活但每次运行都需要重新翻译。

考点清单

  • CPU 执行时间 = 指令条数 × CPI / 主频(最核心公式)
  • CPI = 总时钟周期数 / 指令条数;IPS = 主频 / CPI
  • MIPS = 主频 / (CPI ×106)
  • 主频高不等于性能好——还取决于 CPI 和指令条数
  • MIPS 不能跨指令集比较
  • 存储用 210,速率用 103
  • 基准程序存在针对性优化的局限

真题练习