计算机组成原理--浅谈计算机性能

计算机组成原理|浅谈计算机性能

本篇文章属于计算机组成原理的开篇之做,主讲影响计算机性能的因素与提高的计算机性能的路径。
关键词: 性能,CPU,响应时间,主频,功耗,电压,并行...缓存

前言

目前全部的文章思想格式都是:知识+情感。
知识:对于全部的知识点的描述。力求不含任何的自我感情色彩。
情感:用我本身的方式,解读知识点。力求通俗易懂,完美透析知识。

正文

计算机性能的衡量标准

衡量计算机性能的标准有两个,分别是响应时间(Response time)吞吐率(Throughput)
1.响应时间,也称为执行时间(Execution time)。表示的是,计算机执行一段程序的总时间。
2.吞吐率,也称为带宽(Bandwidth)。表示的是,计算机执行一段程序每一次执行的量。
注意:存在一个响应时间与吞吐率的关系,即响应时间=吞吐率x执行次数。性能优化

响应时间

首先,得知能够提升响应时间进而提升计算机性能。然而,在计算机中,影响响应时间的主要因素是CPU的性能。性能

通常性能测试

性能,能够当作是响应时间的倒数,即
** 性能 = 1/响应时间**
此时,只要保证响应时间越短,性能的数值就越好。学习

问题:响应时间怎么来,是现实生活中的时间吗?
回答: 固然不是!
第一种状况,CPU不可能作到只运行一个程序,首先是否是须要支持操做系统在运行,才能够进而运行测试程序。在真实的环境中,CPU会在不一样的进程中切换,运行程序,单位是GHz,人是感受不到的。
第二种状况,CPU会处于满载运行与降频运行两种模式,对应的运行结果固然是不同的!而且,你须要想一下,硬件的当前状态无时无刻都在变化,无法保证一致。测试

了解内容:在实际生活中,评价一个计算机性能的第三方机构叫SPEC(Standard Performance Evaluation Corporation),主要是提供的 CPU 基准测试程序,经过数十个不一样的计算程序,对于 CPU 的性能给出一个最终评分。优化

CPU性能测试

在了解了通常的性能测试以后,针对CPU,咱们能够获得新的性能测试方法,引入CPU时钟周期,即
性能 = 1/(CPU时钟周期数 x CPU时钟周期)lua

在上式中,CPU的时钟周期,就是咱们CPU 的主频(Frequency/Clock Rate)。个人主机是2.81GHz,表示1秒的时间内,能够执行的简单指令的数量是 2.8G 条。操作系统

因此,能够引入指令,获得新的性能公式:
性能 = 1/(指令数x每条指令的平均周期数 x CPU时钟周期)设计

即,能够优化性能就有了三个方面:
1.指令数,经过编译器将指定数减小,属于指令设计层面。
2.每条指定数的平均周期数,也叫做PCI(Cycles Per Instruction),经过提升CPU技术实现减小平均周期数,属于CPU设计层面。
3.CPU时钟周期,经过提高CPU的主频,得到更小的CPU时钟周期,属于电路硬件层面。code

了解内容:这里会涉及晶振的概念,玩过单片机的都知道有个晶振的东西,CPU内部有个相似的东西。
在打游戏,或者图像渲染的时候,会有一个超频的概念,就是将计算机的实际主频调快,这是能够认为调整的,只不过会出现散热问题而已。

CPU主频优化

经过上面,了解到能够经过提升CPU的主频,进而得到更高的性能。

先了解一下CPU的构成。CPU,通常都被叫做超大规模集成电路(Very-Large-Scale Integration,VLSI)。其内部,包含亿级别的晶体管,让晶体管里面的“开关”不断地去“打开”和“关闭”,来组合完成各类运算和功能。

一个 CPU 的功率,能够用这样一个公式来表示:
功耗 ~= 1/2 ×负载电容×电压的平方×开关频率×晶体管数量

从上式,能够看出电压与功耗是平方的关系,晶体管数量与功耗成线性关系。运用咱们聪明的1+1=2的大脑,确定是保证功耗不大的状况下,优先下降电压,其次增长晶体管的数量。

注意: CPU功率可不能搞的很大,笔记本可不是插电源的,须要携带,一个小时电就用完了,这是不理想的,固然一个月不充电也是幻想状态~
CPU的电压可不能随便小,理论上是只要保证有电压就能够,但实际是电压过小了,晶体管的打开与关闭就不工做....
CPU内部的晶体管的数量,也不能无限多,受限于CPU的体积,CPU工做会散热的,太多了不适合散热,会使得CPU罢工~

了解内容:相同的体积增长晶体管的数量,那就必须将晶体管作小,这就是提高制程
在本身组装台式机的时候,CPU仍是固然是盒装好,可是散片其实也还行,毕竟目前CPU的工艺,可不是假货能模仿的,给钱都作不出来....

吞吐率

当看了响应时间的优化以后,再看吞吐率优化,直接是简单的很,一句话归纳吞吐率核心思想:人多力量大

借助于并行的思想,实现多核CPU工做,实现性能优化,毕竟响应时间的优化已经步履艰难了。

并行基于一个经验定律,即阿姆达尔定律(Amdahl’s Law)。
优化后的执行时间 = 受优化影响的执行时间 / 加速倍数 + 不受影响的执行时间

基于上式,想要提高性能,就是得到更小的 优化后的执行时间,只能从增长加速倍数出发。

注意: 受优化影响的执行时间表示的是能够并行执行的时间,加速倍数正是并行的CPU核心数。

虽然可使用并行思想,提高计算机性能,可是并行依然受限制与于 不受影响的执行时间,这一段时间依然是串行的执行。而且会有一个极限值,不管提升多少加速倍数,时间变化不大。

总结

本文,讲述计算机性能的提高,提出了基于响应时间的性能优化,基于吞吐率的性能优化。
基于响应时间的优化,能够提高CPU的主频,下降CPU的电压,提升晶体管的数量,可是受限制于CPU的散热与功耗。
基于吞吐率的优化,能够进行并行,可是依然受限制于不能并行的部分。
还能够基于大几率事件选择GPU运算,代替CPU;使用CPU的流水线技术;使用预测提升性能。

了解内容:计算机显卡内部就是GPU。

CPU的预测,会对CPU内部1、二级缓存变量调用产生影响。

结束语

最近在深刻挖掘计算机的底层知识,不只仅是学习知识,对于计算机这个世界也有了新的认识,状态很好!感受本身收获不少!
但愿本身能够一直挖下去~

相关文章
相关标签/搜索