注意事项 文章发表日期:2015年12月26日。 在过去的一段时间中,一些作者的论点已被真实事实所证实,而另一些则被证明是错误的-大约。 反式
在过去的40年中,我们已经看到计算机的速度是如何成倍增长的。 今天的CPU的时钟速度比1980年代初期的第一批个人计算机快一千倍。 计算机上的RAM数量增长了1万倍,硬盘驱动器的容量增加了10万倍以上。 我们已经习惯了这种持续的增长,以至于我们几乎将其视为自然定律,并将其称为摩尔定律。 但是这种增长是有限度的,
戈登·摩尔本人指出 。 我们现在正在接近物理极限,其中计算的速度受到原子大小和光速的限制。
英特尔的佳能时钟开始在这里和那里跳过条形图。 每个“刻度”对应于晶体管尺寸的减小,每个“刻度”对应于微体系结构的改进。 当前称为“ Skylake”的处理器类似于采用14纳米工艺的处理器。 从逻辑上讲,下一个应该是采用10纳米工艺技术的“滴答”,但是英特尔现在在每个“类似”之后发出“更新周期”。 宣布于2016年发布的下一个处理器将是对Skylake的更新,
该技术仍采用14纳米工艺技术 。 降低Tik-Tak时钟速度是一项物理上的必要,因为我们正在接近一个极限,即晶体管的大小只有几个原子(硅原子的大小为0.2纳米)。
另一个物理限制是数据速率,不能超过光速。 从CPU的一端到另一端需要花费几个时钟周期。 随着越来越多的晶体管使微芯片变得更大,速度开始受到微芯片自身上数据传输的限制。
技术限制并不是减慢处理器发展的唯一因素。 另一个因素是市场竞争的减弱。 英特尔最大的竞争对手AMD现在将重点更多地放在所谓的加速处理单元(APU)上,该加速器是用于迷你PC,平板电脑和其他超移动设备的具有集成图形的较小处理器。 英特尔现已占领了高端PC和服务器处理器的巨大市场份额。 英特尔和AMD之间的激烈竞争几乎已经消失了,这种竞争将x86处理器的开发推了几十年。
近年来,计算机功能的增长并不是因为计算速度的提高,而是由于并行性的提高。 现代微处理器使用三种类型的并行性:
- 同时执行多个团队并更改顺序。
- 向量寄存器中的单操作多数据(SIMD)操作。
- 单个芯片上有多个CPU内核。
这些类型的并发没有理论上的限制,但是有实际的限制。 顺序更改的命令的执行受到程序代码中独立团队数量的限制。 如果第二个命令正在等待第一个命令的结果,则不能同时执行两个命令。 当前的CPU通常可以同时执行四个命令。 增加此数目不会带来太多好处,因为处理器将很难或不可能在可以同时执行的代码中找到更多独立的指令。
当前的AVX2处理器具有16个256位向量寄存器。 即将面世的AVX-512指令集将为我们提供32个512位寄存器,并且我们可以期望将来扩展到1024位或2048位向量。 但是向量寄存器的这些增加将产生越来越少的影响。 很少有计算任务具有足够的内置并行性来受益于这些较大的向量。 512位向量寄存器由一组具有64位大小限制的掩码寄存器连接。 2048位向量寄存器可以存储64个单精度数字,每个数字32位。 可以假定Intel不打算制作超过2048位的向量寄存器,因为它们将超过64位掩码寄存器的限制。
仅当同时运行许多对速度要求严格的程序或将任务划分为多个独立的线程时,许多CPU内核才有优势。 可以将任务有利地分成的线程数始终受到限制。
毫无疑问,制造商将尝试制造越来越强大的计算机,但是在实践中可以使用这种计算机功能的可能性有多大?
尚未使用并发的第四种可能性。 程序通常具有许多if-else分支,因此,如果CPU学习预测哪个分支可以工作,则可以将其执行。 您可以一次执行多个代码分支,以避免在预测不正确时浪费时间。 当然,您将不得不为此增加能耗。
另一个可能的改进是将可编程逻辑设备放置在处理器芯片上。 对于高级设备中使用的所谓的FPGA,类似的组合现在很普遍。 个人计算机中的此类可编程逻辑设备可用于实现特定应用的特定功能,以执行诸如图像处理,加密,数据压缩和神经网络之类的任务。
半导体行业正在尝试使用可以代替硅的材料。 某些III-V半导体材料可以
比硅更低的电压和更高的频率工作 ,但是它们不会使原子变小或变慢。 身体上的限制仍然适用。
有一天,我们可以看到三维多层芯片。 这将允许拉紧电路,减小距离,从而减少延迟。 但是,当能量分布在整个芯片上时,如何有效地冷却这种芯片呢? 将需要新的冷却技术。 微电路将无法同时向所有电路传输功率而不会导致过热。 她将不得不在大多数时间断开大部分零件的连接,并仅在使用过程中为每个零件供电。
近年来,CPU速度的增长速度快于RAM速度,这常常成为严重的瓶颈。 毫无疑问,将来我们将看到许多提高RAM速度的尝试。 一种可能的发展是将RAM与CPU(或至少一种情况)放在单个芯片上,以减少数据传输的距离。 这将是三维芯片的有用用法。 RAM可能是静态类型的,也就是说,仅在访问每个存储器单元时才为其供电。
英特尔还为科学用途的超级计算机提供市场。 Knight's Corner处理器在单个芯片上具有多达61个内核。 它的性能/价格比很弱,但是在这方面,它有望成为骑士登陆的继任者应该更好。 它可以在一个芯片上容纳多达72个内核,并且能够更改顺序来执行命令。 这是一个很小的利基市场,但英特尔可以提高其信誉。
我认为,现在是从软件方面提高性能的最佳机会。 由于摩尔定律,软件开发人员迅速找到了应用,以实现现代计算机的指数级增长。 软件行业开始使用它,也开始使用越来越多的高级开发工具和软件框架。 这些高级开发工具和框架使加速软件开发成为可能,但以最终产品消耗更多的计算资源为代价。 当今的许多程序由于过度消耗硬件计算能力而非常浪费。
多年来,我们观察到硬件和软件行业之间的共生关系,在硬件和软件行业中,后者产生了越来越高级的资源密集型产品,从而鼓励用户购买越来越强大的设备。 随着硬件技术的增长速度放慢,并且用户转向小型便携式设备,其中电池容量比性能更重要,软件行业现在必须改变方向。 她将不得不削减资源密集型开发工具和多层软件,并开发功能不那么丰富的程序。 开发时间将增加,但是程序将消耗较少的硬件资源,并且在电池寿命有限的小型便携式设备上可以更快地工作。 如果商业软件行业现在不改变方向,那么它可能会放弃更多禁欲的开源产品的市场份额。