此系列为王道计算机考研组成原理精细笔记
首先探讨度量存储器的性能指标:
最常用的也是大家熟悉的一个是:存储器的容量,MAR位数反映有多少个存储单元,MDR的位数反映每个存储单元能够存放多少个二进制bit。
例如:MAR有32位,MDR有8位,总容量=232 * 8=4GB
这里有两个点需要阐述一下,第一个是MAR如果是32位的话,存储器的总容量是4GB,但真的有4GB那么多吗,这是不一定的,因为它最大可以是4GB,但其实可以是小于4GB大小的。第二就是为什么32位的二进制数,为什么只能表达2的32次方这么多个地址呢?
我们可以探讨一下:n个二进制位能够表示出多少种不同的状态呢?
1个二进制位:0, 1
2个二进制位:00,01,10,11
3个二进制位:000,001,011,010,100,101,110,111
…
可以观测到n个二进制位有2的n次方,所以之前MAR是32位的,它就有232种状态。
1M=220
1G=230
1T=240
我们可以在淘宝等商城找一些Intel的CPU,会提到3.6GHZ,2.9GHZ。
这个GHZ就是CPU的主频:CPU内数字脉冲信号振荡的频率。如下图,每一个波峰就是一个脉冲信号,所以CPU这些数字脉冲信号是有规律有节奏发生的,那么这些脉冲信号有什么作用呢,我们可以将这些脉冲理解为指挥CPU内所有的部件来一步一步工作的节奏,如我们做的广播体操总有人喊1234,2234这样的口号的,每个信号你都会跟着它来完成你的动作,所以这个口号和CPU的数字脉冲信号作用是一样的。
时钟周期:我们将每一个脉冲的周期称为CPU时钟周期,单位是微秒或纳秒。
CPU的主频单位是HZ,10HZ的意思就是每秒钟有10个脉冲信号。
在其它硬件一样的条件下,主频越高,CPU速度越快,所以CPU主频很大程度上反映了它的性能,但也不是CPU主频越高就证明它越强,处除了主频之外还有其它因素会影响它的性能。比如CPI。
CPI:执行一条指令所需的时钟周期数。即每一条指令的执行需要多少时钟周期。不同的指令,CPI不同,甚至相同的指令,CPI也可能发生变化。能够影响CPI的因素有很多,如当前内存的情况等,我们通常考虑执行一条指令所需的时钟周期的时候,通常考虑的是一个平均的情况,只要我们知道执行每一条指令平均需要多少时钟周期再乘CPU时钟周期,就能算出执行一条指令的时间。
例题:
下一个常用的指标叫IPS,也就是每秒会执行多少条指令
下一个指标是FLOPS:每秒执行多少次浮点运算
对于IPS和FLOPS这两个指标,我们通常在使用的时候会在它们前面加一些数量单位比如:KIPS,MIPS,对于浮点运算来说我们还会加G和T这样的数量单位,这里的K是103,M是106,G是109,T是1012。
如果一台计算机它的性能能达到2MIPS,就是说这台计算机平均每秒能够执行两百万条指令。
一般来说,我们描述文件的容量和文件的大小,我们说的K,M,G,T就是下图这种方式:
如果我们描述的是数据的处理速率我们说的K,M,G,T是下图这种形式:
以此类推,当我们描述这种频率这种属性的时候,如CPU的主频是3GHZ,这个G是109,刚好是十亿。
数据通路带宽:数据总线一次所能并行传送信息的二进制位数(各硬件部件通过数据总线传输数据)(CPU和内存,内存和I/O设备都是通过数据总线传输数据的)
如:有一台计算机它的数据带宽是8bit,那么要从存储体里面读出16个bit的数据,把它读到CPU里面就总共进行两次的数据的传输。
吞吐量:系统在单位时间内处理请求的数量。这个概念比较抽象,你可以把一条指令理解为一个请求,也可以把一个完整的程序运行理解为一个请求。
举个例子:比如淘宝的服务器,它基本上处理的业务就是用户发来的一个一个HTTP请求,那么淘宝的服务器每秒钟能处理多少个http请求这就是它的吞吐量,吞吐量并不局限于某个固定场景。
响应时间:指从用户向计算机发送一个请求,到系统对该请求做出响应并获得它所需要的结果的等待时间,比如我在电脑上点击右键会有一个如下图所示的菜单,那么从我点击右键开始直到它弹出菜单的这个时间就是响应时间。
之前我们所学习的性能指标都是静态的指标,但这样的静态指标很难反映出一个计算机的综合能力,所以我们会用一个叫基准程序程序来测量计算机的实际速度,所谓的基准程序就是我们所说的跑分软件:
响应时间:表征从输入有效到系统产生响应之间的时间度量,用时间单位来度量。
利用率:在给定的时间间隔内系统被实际使用的时间所占的比率,用百分比表示。
处理机字长:指处理机运算器中一次能够完成二进制数运算的位数,如32位、64位。
下一节是计算机性能指标,期待大家和我交流,留言或者私信,一起学习,一起进步!