流行多核处理器的真正原因流行多核处理器的真正原因有

文/M叔

图侵删

我敢跟你打个赌,你问身边的熟悉的人:”买手机或者电脑,处理器是单核好还是双核好?”

十个人起码有九个都会回答”肯定双核啊”,理由通常是”人多力量大之类的”。

如果按照这逻辑8核一定比4核的快,16核一定比8核快,以此类推,核是越多越好。

可是,我得告诉你情况不是这样的。

CPU发展的困境

我们买电脑时,常常看到上面图片里的参数,如果只能选一项的话,其中CPU主频这栏是比较直观的反应CPU快慢的参数。(虽然这样理解不够全面,但是好理解)

CPU的主频,即CPU内核工作的时钟频率,一般以GHz(1GHz=1000MHz)为单位。也可以理解成CPU内数字脉冲信号振荡的速度,比如,1GHz指数字脉冲信号在每秒钟振荡一亿次。

要知道,三十多年前,英特尔在1983年能做出来的最好的CPU主频才20Mhz,几十年时间里CPU技术在快速发展,2000年英特尔就能做出2000Mhz的CPU了,十七年的时间就主频率上增加了100倍!

你或许听过摩尔定律,就是说”所有的芯片每18个月之后,它的运算速度要增加一倍,这个定律就是英特尔的创始人提出来的。”

CPU的发展一直遵循摩尔定律,但是摩尔定律到了近几年渐渐不灵了。在2017年,英特尔单核CPU最高主频速度只达到4000Mhz,十七年的时间频率上比2000年只增加了1倍。尤其是最近3年,频率上可以说几乎没怎么增加。

CPU的发展好像遇到了技术瓶颈,那么是怎么的技术难题呢?

CPU的技术难题之一发热

只从发展时间和主频值看,大家都能明显感觉英特尔的CPU技术已经发展得很快了。但是应用开发商们,一旦看到CPU的性能有冗余,一定会在冗余的算力基础上开发更多功能的软件,以此来满足消费者多样性的需求。这样就倒逼CPU的生产企业,不断开发出更快更好的处理器芯片。

于是,芯片设计企业想方设法的把频率提升,遗憾的是,随着主频率的提升,CPU的发热也按正比例提升,主频提升一倍,发热也提升一倍,而且提升频率的过程中CPU出现工作不稳定的情况,处理的程序要么出现乱码,要么死机。

很多芯片工程师提出提升电压解决CPU不稳定的问题,但是电压提升后对CPU的发热,简直是火上浇油。CUP发热比之前还高,将电压增加两倍,发热量是之前的4倍。

让芯片企业十分为难的是,现在为了满足客户的需求,把速度提升了一倍,为了保证稳定,把电压提升了1倍,叠加后总的结果就是,发热是从前的8倍。

一倍速度的提升,换来8倍发热,本来之前的CPU发热就是难题,光加风扇肯定是不行的。

况且按照这个情况,CPU速度几轮提升后,发热的量简直不敢想象,可能一开机CPU就烧坏了。

硅基芯片的极限

工程师根据失败经验和理论明白了,应付发热暴增的强效方法是缩小芯片尺寸

要说明白这个原理,就要提到MOSFET的结构,不过这个太专业了,涉及很多陌生概念,今天我们就简单理解一下:

我们把半导体的开关管想象成一道闸门,那么闸门越大,每次打开关上耗费的能量就越多,这些能量最终都会变成热能。如果闸门做得越小,每次开关耗费的能量就少多了。

以前CPU 的核心大概就是平面1.5平方厘米的硅片制作而成,一张12寸直径的硅片圆盘大约值2.8万美元,缩小尺寸意味着一片硅片圆盘上可以切出更多的CPU核心。

所以,缩小CPU的尺寸,不光能解决发热问题,还能大幅度降低了成本,又提升了CPU的频率,简直是一举三得。

但是,到2007年开始,缩小CPU尺寸这一招也接近极限了。

CPU晶体管放大图

我们现在的手机上的处理器上,大致有100亿个晶体管,这些晶体管是CPU算力的基础。刚刚我们说了,CPU的核心是个平面为1平方厘米左右的硅片,就这么大个东西上要做100亿个晶体管,你可以想象每个晶体有多小了。如果晶体管再小下去,很可能就会出现“量子效应”——也就是说,芯片会变得不稳定、不可靠。

越来越多的核心的真正原因

基于上面的原因,CPU的企业们想到的办法就是多核心来增加算力

为了多核处理器能够正常工作,程序员在设计计算机语言和应用程序时,是尽量把单一任务拆分成多线程的任务,以此来平衡处理器之间的算力。

举个例子,我们要给一张照片做一键美颜,一个CPU处理当然没问题,16个也行,只要把这个任务分成16份就可以了。

不过多核心处理器方案也有它的弊端

1.有相当多任务压根就没法完成多任务,只能交给一个核心完成。

2.多核心有算力浪费,假如单个4GHz的核心能提供1个单位的算力,4个3GHz的核心性能平均是2个单位的算力,相当于单个核心8GHz的水平了。

3. 从单核增加到双核是性能提升最明显的,再增加到四核,八核,甚至二十核,带来的提升就越来越不明显,这不光是因为指令中确实有相当多的压根没法转化为多线程。还因为从单一任务分成多线程任务,再分配到每个处理器,最后再整合结果输出,这一系列多出的步骤本身就会浪费算力。

当知道这些后回头看数码厂商,其实也挺难的,明明是整个行业遇到了技术难题,被迫用多核,又不得不营销多核的出色计算力。

结语

好了,我们再回头看看文章开头的问题:”买手机或者电脑,处理器是单核好还是双核好?”

多核处理器并不能发挥1+1大于2的算力,多核也不是越多越好,它有它的极限。而且假如处理器行业,从根本上解决了发热问题,那么其实单核比双核要好。

比如说,我以前文章介绍过,石墨烯材料中的”魔角”——当两层石墨烯之间有一个特别小的夹角的时候(大概1.1°),两层石墨烯的薄膜之间会交替出现超导和绝缘的区域。这种材料如果开发出来后,由于它超导的特性,基本上就不会有发热问题。

我们之所以会脱口而出,认为多核更好,其实商家营销的结果。当然并不是商家更聪明,只是他们知道的更多。不过有了这些CPU的小知识,以后再有商家给你吹,他家的产品是16核的,多么快,性价比多么高,你会更理智的看待了。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注