摩尔定律是什么(摩尔定律预测了什么)

英特尔甚至准备堆叠两层,以便在单位面积上插入更多的晶体管,但这是正确的方向吗?如何解决摩尔定律将终结的燃眉之急?

随着芯片技术逐渐进入瓶颈,计算机设计师们正在走向摩尔定律的尽头。近半个世纪以来,业界一直依赖“逻辑电路密度每两年翻一番”的论断,但如果不再如此,又意味着什么呢?这可能意味着用户思考软件的方式发生了根本性的变化。

半导体设计领域的领先研究人员指出,尽管逻辑密度正在逼近物理极限,但这并不一定意味着摩尔定律的终结。在1975年戈登·摩尔国际电子器件会议(IEDM)上,人们预测除了周期性地减小晶体管尺寸和互连间距之外,增加芯片尺寸和改进电路设计也是缩小工艺的重要部分。

2005年在戈登·摩尔

在去年9月举行的IEEE国际设备和系统路线图小组(IRDS)的在线会议中,会议主席、英特尔技术战略总监Paolo Gargini指出,虽然Gordon已经明确预测到了,但人们仍然只对维度进行了缩放。这就是为什么人们对下一个技术节点持怀疑态度。我们似乎陷入了危机,但事实并非如此,因为还有另外两个因素。

摩尔在1975年的演讲中描述的“电路智能”在近年来做出了巨大贡献。斯坦福大学电气工程教授Philip Wong表示:电路设计者和从事核心工艺技术的工程师之间更紧密的合作,比仅仅使用尺寸缩放更有可能从每个新节点中获得更多利益。在过去十年的后五年里,将电源轨埋在晶体管下面和堆叠晶体管等进步应该会继续为大约两三代芯片带来一些好处。

在物理层面,未来改进的另一个方向是通过增加更多层逻辑门或其他器件来扩大面积。但是有人警告说这种方法有一些问题。麻省理工学院(MIT)的研究科学家尼尔·汤普森(Neil Thompson)表示:“3D集成会带来一些短期的好处,但当多层堆叠时,散热问题会更加严重。」

“这似乎与处理器内核的情况类似。多核处理器出现的时候,核心数量翻倍似乎才是正道。一开始我们获得了收益,但后来出现了收益递减的现象。」

一种选择是更有效地利用可用晶体管的数量。2017年图灵奖获得者约翰·汉尼斯和大卫·帕特森认为,高度专业化的加速器具有丰富的挖掘潜力。这些加速器可以消除通用计算的沉重开销(这主要是由于重复指令和数据获取导致的内存访问的高浪费),这是摩尔定律可能不支持的性能提供方法。

约翰·汉尼斯和戴维·帕特森

伦敦帝国理工学院软件技术教授保罗·凯利使用“图灵税”一词来指使用通用硬件执行功能的成本。这个术语是基于艾伦·图灵的思想,理论机器可以执行任何功能,但不一定高效。加速器为其预期功能支付了更低的图灵税,因为在通用处理器上运行时,模块电路中的隐式操作需要在软件中明确定义。

未来加速器丰富设计的潜在主要优势是,它们甚至不必局限于使用传统的数字逻辑。主流计算中对人工智能(AI)的更多强调鼓励设计师研究当今处理器中使用的CMOS技术的替代品。这些替代方案要么在模拟域中执行处理,要么使用基于电子自旋或超导技术的新开关设备来实现惊人的节能效果。虽然模拟和存储处理器面临着低精度和高噪声的问题,但它们可以将逻辑域中需要数百或数千个晶体管的乘法器数量减少到几个。

麻省理工学院计算机科学与工程教授查尔斯·莱瑟森(Charles Leiserson)表示,“这些方法中有许多有趣的地方,它们将对少数特定应用有所帮助。硬件加速器我还是很有印象的。」

机器学习等高性能计算领域的用户发现,即使使用定制代码,加速器也无法在大规模应用中保持高吞吐量。启动作业的数量和其他开销意味着它们经常会留下大量可用的性能未使用。Leiserson补充道:“但是多核还是有它的性价比的”,因为它们相对来说是可替换的,可访问的。

即使采用更传统的架构,任何多核实施的通信开销和内存级复杂性也很容易让开发人员失望。Leiserson说,“我们需要更多的性能工具,我们需要硬件来提供更多的帮助。」

Leiserson和Thompson认为,开发人员应该回到算法分析,以获得更好的可预测性,并将其应用于整个子系统。Leiserson说,“该算法的一个伟大成就是,可以通过使用big-O符号的粗糙分析来预测粗糙行为。即使n前面的常数很大,n的平方也会很差。」

研究人员发现,代码生成技术的潜在改进比现在更了解底层硬件及其约束,并可以通过使用运行时优化和调度在目标架构中保留可移植性。

德累斯顿工业大学教授兼德国编译器构造主席jerónimo castrilón介绍了该机构在帮助管理工作负载的运行时软件方面的研究工作。“你可以检查你所拥有的硬件功能,并通过堆栈将其渗透到应用程序编程接口中。为了让它正常工作,您需要驱动应用程序模型。」

例如,如果一个模块因为被其他正在运行的程序占用而不能使用加速器,调度器可以选择一个替代方案来编译一个更通用的内核,而不是保留整个应用程序,只要编译的代码包含足够的信息来进行分析。

Castlló n认为,对于应用程序中对性能敏感的部分,可能有必要转换为特定领域语言(DSL ),因为它们可以捕获开发人员的更多意图。“通常人们认为在更高层次上抽象会导致性能下降,但如果抽象做得正确,就不会这样。」

Kelly补充道:“有了DSL,工具可以理解一部分是图形,一部分是网格,所有C/C编译器看到的都是底层代码。然后,编译器要经历一个艰难的过程来推断会发生什么。」

自适应异构系统提出了验证和调试的问题:当特定的实现在特定的时间针对特定的结构重新优化时,程序员如何知道该实现仍然有效?一种可能性是使用类似于硬件设计者所采用的形式验证技术来检查在对电路执行优化之后电路是否在功能上等效。

当加速器工作在模拟域而不是数字域时,验证问题变得更加困难。所以对于数字精度来说,用不同的方法会有一些误差。

AI开发人员已经习惯于使用损失函数和类似的指标来确定以降低的精度运行的神经网络或采用其他近似技术是否可以达到令人满意的性能。但是对于其他类型的程序(如物理仿真)没有办法做类似的分析,用户希望使用固定的高精度格式。

凯利表示,更全面的数值分析对于确定模拟加速器取代更耗能的数字处理器的效果至关重要。现在硬件设计中通常采用常规的形式化验证方法来检验电路优化是否正确,但无法处理不确定性。Castlló n表示,这一领域的进展(如概率模型检查)可能会为工具提供一种方法,这些工具可以验证生成的代码是否适合于没有位级等价的应用。

Castlló n说:“我不知道这些能否结合起来。或者,你可以对大型系统进行强大的形式分析。」

如果不能结合,可能要由程序开发者来定义自己能容忍的精度水平;如果平台不能满足要求,受影响的代码模块将被分配给消耗更多能量或执行速度较慢的数字处理器。

虽然自动代码生成器可能能够比现在更好地利用加速器,但它们与通用内核之间的关系仍然很微妙。雷瑟森说,尽管对能耗的担忧让专用加速器变得更好,但普遍性显然将保持其重要性。“如果你使用专用硬件,最好先证明你大部分时间都会用。」

如果硬件的多功能性继续被证明是一种更好的方法,那么通往更高能效和速度的道路将从晶体管的数量走向算法层面。雷瑟森总结道,“让我们真正开始研究芯片的性能,不要等到技术发展了才推动计算能力的提升。摩尔定律的出现让我们很长一段时间不再担心计算力,但是历史的车轮已经开始转动了。」

(0)
上一篇 2022年6月25日
下一篇 2022年6月25日

相关推荐