目录
前言
这几种性能指标的计算,每一个我都给出了不止一种的计算方法,可以根据题目的已知条件来灵活的使用不同的公式;
注意:1Byte = 8bit;1KB = 1024B;1MB = 1024KB;1GB = 1024MB;
适用场景 | 单位 | 换算 |
存储容量、文件大小 | K | 2¹⁰ |
存储容量、文件大小 | M | 2²⁰ |
存储容量、文件大小 | G | 2³⁰ |
存储容量、文件大小 | T | 2⁴⁰ |
速率、频率 | k | 10³ |
速率、频率 | M | 10⁶ |
速率、频率 | G | 10⁹ |
速率、频率 | T | 10¹² |
注意:
- 在描述存储容量、文件大小等时,K、M、G、T通常用2的幂次表示,如 1Kb = 2¹⁰b;
- 在描述速率、频率等时,k、M、G、T通常用 10 的幂次表示,如 1kb/s = 10³b/s。
- 通常前者用大写的K,后者用小写的k,但其他前缀均为大写,表示的含义取决于所用的场景;
主存容量
主存容量是指主存储器所能存储信息的最大容量,通常以字节来衡量,也可用字数x字长(如512Kx16 位)来表示存储容量。
其中,MAR 的位数反映了存储单元的个数(最多支持多少个),MDR 的位数反映了存储单元的字长(即每个存储单元的大小)。
【例】:MAR 为16 位, MDR 为32 位;
总容量 = 存储单元个数×存储字长bit = 存储单元个数×存储字长/8Byte
16位表示 2¹⁶=65536,即此存储体内有 65536 个存储单元(可称为 64K 内存,1K=1024),则表示存储容量为64Kx32 位。
CPU主频
主频(CPU 时钟频率)。CPU内数字脉冲信息振荡的频率;(脉冲信息振荡:可以理解为做广播体操时音乐的节奏;CPU通过脉冲信息振荡传递信息,进而控制计算机的各部件协调运转)
对于同一个型号的计算机,其主频越高,完成指令的一个执行步骤所用的时间越短,执行指令的速度越快。
主频最直观的理解就是每秒有多少个时钟周期。
主频 =1/CPU时钟周期,主频通常以 Hz(赫兹)为单位,10Hz表示每秒 10 次。
时钟周期
CPU 时钟周期。机器内部主时钟脉冲信号的宽度,它是 CPU 工作的最小时间单位。
时钟脉冲信号由机器脉冲源发出的脉冲信号经整形和分频 后形成。
时钟周期以相邻状态单元间组合逻辑电路的最大延迟为基准确定。
时钟周期也以指令流水线的每个流水段的最大延迟时间确定。
CPU 时钟周期 =1/主频,主频通常以 Hz(赫兹)为单位,10Hz表示每秒 10 次。
CPI
CPI(Cycle Per Instruction)。即执行一条指令所需的时钟周期数。(不同指令,CPI不同,甚至相同的指令,CPI也有可能有变化)
不同指令的时钟周期数可能不同,因此对于一个程序或一台机器来说,其 CPI 指该程序或该机器指令集中的所有指令执行所需的平均时钟周期数,此时CPI是一个平均值。
执行一条指令的耗时 = 执行一条指令所需的时钟周期数× CPU的时钟周期 = CPI×CPU时钟周期
时钟周期数
时钟周期数 = 指令条数×一条指令所需要的时钟周期数 = 指令条数×CPI = CPU的执行时间×每秒有多少个时钟周期数 = CPU执行时间×主频
IPS
IPS(Instructions Per Second),即每秒执行多少条指令;
IPS = 指令条数/执行时间 = 每秒的时钟周期数/一个指令所花费的时钟周期数 = 主频/平均 CPI。
CPU执行时间
CPU 执行时间 = CPU时钟周期数/每秒有多少个时钟周期数 = CPU 时钟周期数/主频 = (指令条数×一条指令所需要的时钟周期数)/主频 = (指令条数×CPI)÷主频 = CPU时钟周期数×CPU时钟周期
上式表明,CPU 的性能(CPU执行时间)取决于三个要素:主频、CPI 和指令条数。主频、CPI 和指令条数是相互制约的。例如,更改指令集可以减少程序所含的指令条数,但同时可能引起 CPU 结构的调整,从而可能会增加时钟周期的宽度(降低主频)。
【例】
假定计算机 M1和 M2具有相同的指令集体系结构,M1的主频为 2GHz,程序P在M1 上的运行时间为 10s。
M2 采用新技术可使主频大幅提升,但平均 CPI 也增加到 M1 的 15 倍。
则 M2 的主频至少提升到多少才能使程序P在 M2 上的运行时间缩短为 6s?
解:
- 程序P在M1上的时钟周期数 = 指令条数×CPI = CPU执行时间×主频=10s×2GHz=2x10¹⁰ 。
- M2 的平均 CPI为 M1 的 1.5 倍,因此程序 P 在 M2 上的时钟周期数 =1.5×2×10¹⁰=3x10¹⁰ 。
- 要使程序 P在 M2 上的运行时间缩短到 6s,则 M2 的主频至少应为
- 程序P所含时钟周期数 ÷ CPU 执行时间 =3x10¹⁰ ÷ 6s = 5GHz
由此可见,M2 的主频是 M1的 2.5 倍,但 M2 的速度却只是 M1 的 1.67 倍。
MIPS
MIPS(Million Instructions Per Second)。即每秒执行多少百万条指令。
MIPS 对不同机器进行性能比较是有缺陷的,因为不同机器的指令集不同,指令的功能也就不同。
比如在机器 M1 上某条指令的功能也许在机器 M2 上要用多条指令来完成;
不同机器的 CPI和时钟周期也不同,因而同一条指令在不同机器上所用的时间也不同。
MIPS = 指令条数 ÷ (执行时间×10⁶)= 主频 ÷ (CPIx10⁶)。(这里的单位K指的就是10的3次方而不是2的10次方,切记)