www.hj8828.com 27

【www.hj8828.com】性能与能效 辨析服务器评测要素(1)

我们无法用简洁的言语概括计算机的性能,其实皆因它的体现必须要借助其他手段。这就如同要要看一个人的品格是否端正必须从观察其平日言行着手一样,要评估一个计算机的性能,我们也必须通过运行应用程序或计算任务的方法来考察。这种考察通常有两种,一是看执行时间,一种是看流量。

问题:不理解为什么cpu要堆那么多核,像苹果的单核可以秒高通联发科麒麟等的双核,双核秒四核八核。英特尔也是双核秒amd八核。为什么那些厂商不把重点放在怎么样大幅度提高单核性能,而是使劲堆核心,比如联发科的十核都出来了。注意我说的是同一时期的产品,不要抬杠。

问题:10多年前电脑的单核就能达到2GHz频率,而到了现在大多数cpu单核频率还是只有4GHz,是什么原因让cpu开始走多核而不是提高主频的路了?

这里所谓的执行时间,是指计算机完成一个计算任务的时间,能以最快速度完成指定任务的系统,我们说它的性能就是最高的。这种以执行时间度量性能的方法,较适用于执行单任务的环境,而要测试像服务器这种几乎时刻都在并行执行多个任务的计算机系统,考察其流量,也就是看系统在单位时间能完成多少计算任务则是必须的,事实上,很多拥有大规模数据中心的管理者,都对提升服务器的工作流量非常在意。

回答:

回答:

如何体现服务器性能

CPU的的单核性能有多重要,这个不用再重复了,但是CPU的单核性能可以无限增加下去吗?回答这个问题之前,先说一个小故事吧。很多年前VIA威盛还可以跟英特尔硬刚,那时候是Pentium
4时代,英特尔在CPU频率不断突破1GHz、2GHz、3GHz之后要做更高频率的CPU,放言称奔4频率上4GHz,后来就有了英特尔前任CEO巴瑞特下跪的一幕,因为英特尔在奔4时代并没有如承诺的那样推出4GHz高频的产品。

如果你对2004年英特尔总裁贝瑞特当年当着6500人惊天一跪还记忆犹新的话,或许能更能理解这个问题,当年老贝这一跪是对“惟主频论”失误的真心忏悔。

了解了服务器性能的体现,我们也就明晰了它的概念——它其实并不像其他产品那样侧重功能和质量,而是一种技术能力的反应,而且这种能力的高低,必须要用应用来体现和衡量。

www.hj8828.com 1

www.hj8828.com 2

摸清计算机的性能后,进而理解能效也就不再困难。它是系统的性能与功耗的比值,也就是每瓦功耗换得的性能。只不过,这个功耗并不是一个瞬时值,而应该是系统执行单个或多个任务时的平均功耗。

但是很多人不知道的是,4GHz并不是英特尔当时的最终目标,2001年的IDF会议上英特尔曾经表示奔4处理器可以上10GHz频率。如今18年过去了,这个目标一直都没实现,(硅基时代)可能永远都无法实现了。

当时NetBurst架构的Prescott(Pentium
4的核心),虽然已经是用了最先进的90nm工艺,但是3GHz主频的CPU功耗就超过百瓦,如果频率要超过4GHz,功耗将是何其了得。

能效这一概念在最近几年来很受业界及用户追捧,主要是因为能源紧缺以及能源浪费带来的环境危机越来越严重所致,这促使人们也开始用“吃多少草、挤多少奶”,甚至是“少吃草、多挤奶”的原则来指导计算机技术的发展。英特尔的智能服务器处理器在利用全新微架构大幅提升性能的同时,还不忘导入智能节能技术来根据应用负载精细地调节自身的功耗,去尽力实现输出多少性能就消耗多少电能的目标,其实就是受这一量入为出的原则影响。

www.hj8828.com 3

www.hj8828.com 4

我们在这里重谈服务器或计算机系统的性能和能效概念,其实并不仅仅是要帮助大家温习它们,而是希望说明它们都是时刻处于动态变化中的。暂且不论同一台系统在两次运行同一应用中表现出的细微性能差异,相信在很多媒体朋友评测服务器时,也会经常遇到它在某些理论性能测试中表现出色,但在贴近实用的测试中表现却不尽人意,或是一台系统在不同类型的应用测试中表现不一的情况吧?这种变化确实令人困扰,但对它们进行客观深入的分析,找出造成变化的因素和能推动这种变化向良性发展的方案,则就是对最终用户采购和应用服务器非常有意义的事情了。

这件事就能说明CPU频率不是想提升就提升的,奔4时代过去这么多年了,其实CPU的主流频率依然在4GHz左右,英特尔虽然在酷睿i7-8086K上首次实现官方5GHz频率,但绝大多数处理器日常使用的频率都没这么高,高负载下频率在4GHz出头就不错了。

所以,在这儿就可以回答题主,正是因为功耗(散热)制约了主频的提升。

如今人们在谈及影响一个人或一个组织机构的能力或竞争力的因素时,总爱引用“木桶原理”,即以木桶盛水多少是由其最短一块木板决定的物理现象,来形象地说明个人或机构在某个环节或方面的不足,可能会拖累其长处的发挥、进而拉下其整体水平的现象。其实,这个原理对于包括服务器在内的所有计算机系统也同样适用。本着以小见大的原则,我们想先从处理器入手,来说明该原理对计算机系统的影响。

制约单核性能超强的CPU出现的第一个问题就是频率无法大幅提升,而这个因素也跟现在的制程工艺有关,实质上是摩尔定律已经失效了,这个影响了半导体行业50年的金科玉律随着硅基芯片物理极限的到来已经失效了,从28nm节点之后其实就没有带来很大的性能改进了,而且功耗问题也越来越严重。

登纳德缩放定律的终结

相信你也听过摩尔定律,它告诉我们,芯片中晶体管的尺寸正在不断减小,因此芯片的晶体管数量可以不断增加。虽然近些年,摩尔定律一直在修改,但它似乎尚未完全停止。

事实上,除了摩尔定律,还有一个很重要的定律,称登纳德缩放定律(Dennard
Scaling),大体说,随着晶体管尺寸的减小,它的功耗也按面积大致按比例下降。

摩尔定律和登纳德缩放定律这两个好基友放在一起,就是要告诉我们,可以不断缩小晶体管尺寸,并且在CPU中容纳更多晶体管,而功耗基本不变。

但是,到了Pentium 4,基本上宣告了登纳德缩放定律的终结,因为Pentium
4的性能只有486的6倍,但功耗却是后者的23倍(6^1.75)!

www.hj8828.com 5

好吧,看看上面的图,随着晶体管的面积密度上升(蓝色线)16倍,功耗仅下降约4倍(紫色线),功耗降低已经不再与芯片面积密度上升成正比,Dennard
Scaling is dead.

也就是说,继续以提升频率来提升性能的方法已经行不通了!

众所周知,在多核时代到来之前,人们选择处理器时最看重的规格就是其时钟频率,而在多核处理器普及后,又有一些厂商和用户倾向于以内核数量的多少来判断其性能高下,其实,这两种做法都有失偏颇。大家还记得我们在上一篇文章中提及的——计算机系统的性能是通过它完成特定程序或计算任务所需的时间来体现和衡量的理念吧?以此为基础,业界的专家早在上世纪80年代就提出了一个处理器性能公式,点出了影响它的三大要素,即时钟频率、每时钟周期可执行指令数(缩写为IPC)以及应用程序的优化情况。

大家都知道理论上制程工艺越先进(制程数字越小),CPU性能会更高,功耗、发热会更低,但是实际上这个问题很复杂,CPU的功耗可以分为静态功耗(Static
Power)及动态功耗(Dynamic
Power),前者主要是漏电流引起的,制程越先进,漏电流又有增加的趋势,而动态功耗可以用1/2*CV2F这个公式来计算,F频率越高,动态功耗就越高。

多核也能刷性能

到底CPU的性能是怎么定义的?英特尔是这么说的:

CPU性能=IPC * f

其中f为频率,提升f就能提升CPU性能,不过这条路已经不通了。

但是,我们还可以提升IPC呀,IPC(instruction per
clock)是每时钟周期内所执行的指令数,所以才有了多核,2个核心,IPC就是原来的2倍,4个核心,IPC就翻了4倍,CPU的性能也就得到提升。所以我们消费级的CPU才从2核变成了4核,再到8核,现在已经升到了16核。

www.hj8828.com 6

反正呢,现在摩尔定律还能苟延残喘,但Dennard
Scaling已是过去式,虽然工艺越来越先进,CPU里可以装进更多的晶体管,但由于功耗墙的原因,已经没办法提高单个内核的频率,解决方法是在芯片上保留更多内核以提高CPU性能。当然并非所有程序都可以支持多核,因此这种潜在的性能增益并不总是能够得以呈现,但肯定是越来越好了。

回答:

一个CPU中含有数十亿个晶体管,比如英特尔的主流CPU拥有20亿个晶体管,在某些高端产品中晶体管数量高达60亿个。晶体管在做模拟信号的相互转换时会根据CPU主频的高低产生动态功耗,因而CPU的主频越高,发热量就越大。

www.hj8828.com 7

当然芯片的制造工艺一直是在不断发展,根据摩尔定律,集成电路上可容纳的元器件的数目,约每隔一年半会增加一倍,性能也将提升一倍。

2000年的奔腾4处理器,制作工艺是180nm;

2010年的酷睿i7-980X,制作工艺32nm;

2013年的酷睿i7 4960X,制作工艺是22nm;

现如今酷睿i7
9700k的制造工艺更是达到了10nm级别。晶体管做得越小,导通电压更低,就可以补偿了CPU主频升高带来功耗的增加。

但是,CPU的制造工艺是不会无休止地提升,越往后技术难度越大,因而制造工艺是限制目前CPU主频提升的最大障碍。
而且晶体管尺寸是减小了,但数量的增加会使晶体管之间的积热问题凸显出来,因此总的发热量并不会有太多减少。

www.hj8828.com 8

况且主频仅仅是CPU性能表现的一个方面,而不代表CPU的整体性能。CPU的性能参数还有二级缓存、三级缓存、指令集、前端总线等方面。一味地升高CPU的主频,会使CPU的发热量成倍增加,最后为了给CPU降温就要在散热装置上花费极大的功夫,这样做是得不偿失的。

所以为了增加CPU的速度,半导体的工程师们就给CPU设计多个核心,能够达到相同的效果。就好比有100道算术题要计算,单核CPU就是让一位速算高手来完成,而多核CPU就是请了四位速算能力一般的人,但最后还是四个人完成100道题所用的时间短,毕竟人多力量大嘛。

回答:

因为Intel在2004年的时候曾经在提高CPU主频的事情上吃过大亏,于是转战多核心的路线。而多年以后的今天CPU已经是多核心+高频率的组合了。

www.hj8828.com 9

Intel在奔腾Pentium
4的时代开始研发超长流水线设计的CPU,为了使超长流水线能够发挥它的设计功效,Intel开始在提高CPU主频上下功夫,一度达到3.4GHz。

但那是十几年前的2004年,CPU的工艺只有90nm,超高主频带来的后果就是巨大的发热量和耗电量,3.4GHz
CPU的功率可以超过100瓦,而当时Intel正在研发的4GHz
CPU的功耗更是无法想象了。

再加上当年Intel 820 + Rambus的风波,直接导致了Pentium
4新一代芯片取消上市,于是就有了非常著名的Intel CEO“下跪道歉”事件。

www.hj8828.com 10

在这之后,Intel痛定思痛,决定从「高频率」转向「多核心」,开始了双核、4核、6核研发,通过多核心的“人海战术”来提高CPU的工作效率。

十几年过去了,CPU的制造工艺也在不停进步,慢慢的主频又开始逐渐提升。比如第八代14nm的的Core
i7处理器主频就达到了3.7GHz(睿频4.7GHz),同时也采用了6核心的架构。

www.hj8828.com 11

所以CPU的主频是和制造工艺密切相关的,制造工艺越高,CPU的频率也能够进一步的提高,否则只能靠堆核心的办法提高运算能力了。

回答:

时钟频率对于处理器性能的作用无须赘言。但是,只有在IPC相同的情况下,其快与慢才能反映处理器性能的强弱,而在处理器微架构不同、IPC有差异明显的情况下还执着于时钟频率的比较,就不免会步入歧途了。

为了上更高的频率,电压增加不可避免,但电压高了功耗也高了,总之静态功耗、动态功耗的存在就决定了CPU频率越高,功耗就会极速增加,将会严重影响处理器的性能表现,因为要降频。

欢迎你的阅读

首先,要说的是现在手机也不是不提高主频了,只是提高的速度比以前更慢了。

  1. 频率太高的话发热也会更严重,现在很多手机已经很会发热了,玩玩就烫的不行。并且提高主频也要更高的技术,研发的费用也会高很多,最主要怕压不住很大的发热。www.hj8828.com 12
  2. 对于cpu性能的提升,主频带来的效果也不是很明显,由于cpu发现技术,主频的上升空间有明显的局限。所以cpu核心数在现阶段比提高主频效果来的更明显。

www.hj8828.com 13

3.cpu核心的提升,会使得程序以最快的速度运行,使得运算速度比以前的产品高出不少。而且多核心对运行多任务有很大好处,毕竟人多力量大,当然不是像联发科一核有难,8核围观。

www.hj8828.com 14
欢迎关注作者,一起聊科技、数码。

回答:

现在cpu并没有在核心数上突飞猛进,多核已经是十年前的技术了。现在普遍仍然停留在8核,服务器16核,多的32核,无法进一步提高。为啥,因为多核在访问缓存和内存上需要一定的同步机制。简单讲,核越多,协调它们越困难,访问缓存和内存越慢,制约了核心数的进一步提高。计算机体系结构是一个整体,cpu架构也是一个整体,不是单单某一方面决定的。比如就现在的计算机结构而言,制约其速度的根本不是cpu主频,而是内存访问速度,一级缓存,二级缓存,三级缓存存在的根本原因就是内存访问速度太慢。现在cpu的发展更多的是属于设计,优化范畴,而非技术突破,相对已经进入瓶颈期,单看主频和核数已经意义不大。

回答:

其实最主要的是半导体CPU再提升主频非常难,投资非常大,但获得的收益很低,很亏。所以想在半导体CPU没有被替代的时候通过堆核的方法再坑你点钱,想想,8核十六线程,用的到么。当然,里量子计算机普及还需要很长时间,即使普及也不稳定。目前也就i7
七代八代(AMD很少关注,所以不太了解,就不妄加评论)适合攒机,主频基本都在4.0GHz以上(睿频),普通不超频一体式水冷压的住。功耗也比较低,4核8线程也适合普通玩家使用,边打游戏边听歌,爽的。买牙膏厂的u得先看看红色阵营有什么动静。说实话牙膏厂的坑钱套路真的很烦。

回答:

因为不管硬件性能怎么提升,计算机的能力始终围绕着压榨有限的硬件性能,再强大的硬件都有性能上限,而硬件性能已经蹡蹡提升到了瓶颈阶段,这就是为什么现在传说就如中所言,是外星人给了我们技术,同时又限制了技术的发展上限,传说中的能自主升级的量子计算机和生物计算机也还只是传说,几个例子,人的大脑就是生物计算机,没有学习上限

回答:

因为cpu是靠其中无数的MOS管的通断来处理逻辑的,但是MOS管通断是一个电容充电和放电的过程,这个过程需要消耗时间,虽然这个时间很短。当这个时间达到一个瓶颈之后,就很难提升CPU的主频了,因为要考虑两方面的因素:要提高充放电速度,就要提高CPU的电压,但是提高了电压,电流又变大了,散热成了大问题,所以综合性能和成本因素考虑,就止步于4GHz了

回答:

不要光用频率衡量CPU的单核性能。举个例子,里程碑1代的555Mhz主频的德仪CPU,可以把HTC
G7上面那颗1Ghz
CPU从上到下秒一个遍。CPU单核心性能,可以用车辆的轮子计算。频率只是转速,代表转多块。影响的另外一个因素是单核能效,对应的是轮子的直径。轮子的直径大,并不需要转多快也能维持高度。但是直径小的,必须提高转速才能达到一样的速度,带来的结果就是功耗和发热的提高。

回答:

打个比方,生产线工人,主频表示能力,核心线程表示人数。一个人能力再高他能处理几个人的事情?或许是1.5个生产力,但增加人数就可以获得2个生产力。主频的提升总会有瓶颈的,所以必须要走上多核多线程的道路

www.hj8828.com 15

说到这一点,英特尔的14nm工艺虽然被人调侃挤牙膏,但从技术上来说真的很牛了,从Skylake架构的第一代14nm到现在Coffee
Lake的14nm++工艺,性能提升26%,或者功耗降低52%,在不改变基本结构的情况下这个成绩很难得。

制程工艺的放缓导致CPU频率不可能大幅提升,有很多人会想到那么有没有非常牛的CPU架构让IPC性能大幅提升呢?理论上这种思路是可以的,但是现实很残酷,CPU架构还是要服从半导体工艺物理定律的,没有先进的工艺,再好的CPU架构也不可能实现。

www.hj8828.com 16

此外,即便不考虑工艺对CPU架构的影响,单纯说CPU架构的话,不论是X86还是ARM架构,在64位时代CPU单元不外乎就是ALU单元、缓存、I/O等子单元,
但是不论提升那部分单元,归根到底还是要算到晶体管数量上来,还要考虑提升导致的成本——这个成本不只是钱的问题,比如提升L1/L2/L3缓存可以提高性能,但是缓存占用的核心面积很大,而且还有命中率及命中惩罚的问题,不是随便加加单元就行的。

此外,CPU的内部还可以分为整数部分、浮点部分,前者对日常使用很重要,浮点性能对计算更重要,但CPU的浮点性能并不是日常所需的,所以大家普遍感觉不到这部分的提升。

www.hj8828.com 17支持AVX512的酷睿i9-7900X浮点性能提升很大

公平地说,近年来CPU浮点单元的进步是符合题目所说的单核超强的要求的,因为从SSE到AVX到AVX2再到最新的AVX-512,CPU浮点性能是有大幅提升的。如英特尔所说:“借助多达两个512位融合乘加
(FMA)
单元,应用程序在512位矢量内的每个时钟周期每秒可打包32次双精度和64次单精度浮点运算,以及八个64位和十六个32位整数。因此,与英特尔高级矢量扩展
2.0(英特尔
AVX2)相比,数据寄存器的宽度、数量以及FMA单元的宽度都增加了一倍。”

但是前面也说了,CPU的浮点性能不是日常所需的,整数性能更加重要一些,但是整数单元性能提升就没这么明显了,导致很多人以为CPU架构多年来挤牙膏。

回答:

这么说吧,一个加工中心,有个分开的原料仓库,用一辆10吨大卡车运材料,运一次可以满足一天生产。后来产能提升,品种有多了,又在不同地点造了几个仓库,这时要满足生产要么原来的车加快速度不停的运(加快频率),要么买个50吨的车,每个原料还是每天运一次,运一次管几天(加强单核运算能力),还要么换几台5吨的,分开运不同仓库(多核)。

那么问题来了,在同时生产多个产品,且产量都不高,而且生产仓库分散的情况下是用一个50吨的车来运,还是用几个5吨的车来运合算?

所以单核强劲固然好,但往往运用时更多时候要同时处理几个任务,这样多核更适用。

苹果单核强劲,那是因为苹果都是单线程处理的,不像安卓后台会挂一大堆进程

回答:

www.hj8828.com 18
www.hj8828.com 19
www.hj8828.com 20
www.hj8828.com 21
关于多核心存在的意义,存在即合理,那么为何要做那么多核心,而不是4核心呢,这个要从网游多开说起,就我自己玩的剑灵,双开把amd
fx8320
关核心到4个核心4线程,此时处理器占用高达百分之九十九,其次像一些使用格式化工厂转码hd
1920×1080分辨率都会占满cpu,日常渲染不在话下,单核心虽然说当年snb处理器双核心4线程i3就能干翻fx
4300跟6300差不多持平这样的处境,问题是2160p硬解一个已经爆满了占用开始卡顿6300则没有,处理器多核心战未来,虽然漫长但是已经是
趋势, 不然英特尔不会堆核心到10核心出现i7
6950x,频率再高单核心再强,cpu资源抢夺厉害核心小的,最终导致结果只能卡顿跟无响应,所以多核心发展出多核心意义非常大,尤其是服务器,电脑真的不是只是游玩游戏用途,它的用途很广,计算机主要工作还是以计算速度快慢为主要,32多核心处理器不但是跑分高,它的渲染速度都不是8核心能比较的,再举个列子fx8跟翼龙x6
跑分差不多,但是跑r15浮点运算速度比较慢,x6可以花费1分钟跑完,而fx8只需要45秒,这个时候就体现多核心的价值了,现在锐龙8核心16线程道理也是一样。
www.hj8828.com 22
www.hj8828.com 23
www.hj8828.com 24
www.hj8828.com 25
www.hj8828.com 26
www.hj8828.com 27