5.计算机系统的性能指标
-
性能指标的分类
5.1 基本性能指标
5.1.1 机器字长
-
定义
机器字长指 CPU一次能够处理的二进制数据的位数,也就是构成二进制数据的比特(bit/b)数量。
- 机器字长=CPU用于整数运算的ALU位数=通用寄存器的宽度
-
机器字长对计算机系统性能的影响:
1.字长越长,数的表示范围越大、精度越高。
2.字长越长,计算精度越高。
3.字长会影响计算速度。
5.1.2 主存容量
-
定义
主存容量是指 主存储器(内存)能够存储的最大信息量。
-
假设主存包含M个存储单元,每个存储单元可存储N个二进制位,则主存容量为:
主存容量 = N ∗ M ( 位或 b ) 主存容量=N*M(位或b) 主存容量=N∗M(位或b)
∵存储单元的数量M等于2的MAR的位数次方,而存储字长N等于MDR的位数(如下图),所以:
主存容量 = 2 M A R ∗ M D R 主存容量=2^{MAR}*MDR 主存容量=2MAR∗MDR
-
-
主存容量对计算机系统性能的影响
增加主存(内存)容量可减少程序运行期间对辅存(外存)的访问,
由于访问内存的速度远大于访问外存的速度,
因此可提高程序的执行速度,进而提高计算机系统的性能。
5.1.3 吞吐量
-
定义
吞吐量是指计算机系统在 单位时间内能够处理的信息量。
-
影响吞吐量的主要因素:
1.CPU的处理能力。
2.内存的访问速度。
3.外存的访问速度。
5.1.4 响应时间
-
定义
响应时间是指从向计算机系统提交作业开始,到完成作业为止所需时间。
-
响应时间包括:
5.2 运算速度相关的性能指标
5.2.1 CPU时钟频率和时钟周期
-
引入
计算机执行一条指令的过程:取指 ==》分析 ==》执行
- 上述过程每一步都需要特定的控制信号进行控制。
- 控制信号的发出时机、持续时间都需要响应的定时信号来调控。
- 而CPU时钟信号就是一个基本定时信号。
-
定义
CPU时钟信号是 一个基本的定时信号,是一种固定频率的脉冲信号,用于驱动计算机内部各组件协调工作。
- 这种脉冲信号的频率被称为CPU时钟频率,单位赫兹(Hz)
- CPU时钟周期=CPU时钟频率的倒数,单位秒(s)
-
对计算机系统的影响
对于同类型的计算机,同一指令执行所需的CPU时钟周期的数量是一样的,
因此CPU的时钟周期频率越高,该指令的执行速度就越快。
5.2.2 CPI
-
定义
CPI(Cycles Per Instruction):执行一条指令所需的时钟周期数量。
- 因为指令的功能、寻址方式不同,因此每条指令执行所需的时钟周期数量也不同。
- 对于一类指令或一个程序的的CPL=所有指令执行所需时钟周期数量的平均值。
-
计算公式
-
公式一:
C P I = 程序执行所需时钟周期数量 / 程序所包含的指令数量 CPI=程序执行所需时钟周期数量/程序所包含的指令数量 CPI=程序执行所需时钟周期数量/程序所包含的指令数量
-
公式二:已知某个程序中有n类不同类型的指令、每类指令的CPI、每种指令占比P,则该程序的CPI计算公式:
C P I = ∑ i = 1 n ( C P I i ∗ P i ) CPI=\sum_{i=1}^{n}(CPI_i*P_i) CPI=∑i=1n(CPIi∗Pi)
-
5.2.3 CPU执行时间
-
定义
CPU执行时间:真正用于用户程序的执行时间。
-
计算公式
5.2.4 IPC
-
定义
IPC:每个时钟周期能够执行的指令数量。
- IPC是CPI的倒数。
- IPC与CPU架构、指令集、指令流水线技术密切相关。
- 目前IPC的值可大于1。
5.2.5 MIPS
-
定义
MIPS:每秒执行多少百万条指令。
-
计算公式
-
注:用MIPS对机器性能比较会不准确。因为不同机器指令集不同,CPI和时钟周期也不同。
5.2.6 MFLOPS
-
定义
MFLOPS:每秒执行多少百万次浮点运算。
-
计算公式
M F L O P S = ( 浮点运算次数 ÷ 测试程序的执行时间 ) ÷ 1 0 6 MFLOPS=(浮点运算次数÷测试程序的执行时间)÷10^6 MFLOPS=(浮点运算次数÷测试程序的执行时间)÷106
-
注:MFLOPS不能全面反映计算机性能,只能反映浮点运算速度。