中文 英语

处理器是否耗尽蒸汽?

第二部分:更多的核和更快的核应该更好。有时候是这样,但其他时候不是。

人气

这些天检查任何智能手机,您会发现对设备中的核心数量的一些引用。它不是具有差异的核心的数量,但甚至是它们运行的​​时钟速度。性能取决于潜在的设计,了解它们如何利用,偶然的频率,它们共享多少内存,核心之间的互动程度以及利用它们的软件应用程序。

性能在电力预算周围密切编织,尤其是在电池电荷之间有更多时间的移动设备中,但在插入墙壁的那些装置中也越来越多地。半导体和全系统设计中的拇指规则是您可以交易性能的权力,但您不能拥有两者。什么是不太明显的,但同样重要的是互连的速度,片上切换了多少处理,以及多少缓存一致性将在所有这些中发挥作用。获得这种平衡错误的设计可能有很多核心,并且可以允许快速的时钟速度,但仍然没有比他们更换更少的核心和较慢的时钟更好的型号。因此,虽然单个处理器无法通过转动时钟频率更快地获得任何更快的速度,但有些方法可以显着提高处理器速度之外的性能。

提高效率
软件虚拟化已成为在设计中使用更多内核的方式。它与性能常见较小,因为它实际上并没有加速单个操作。但它可以加快多种操作,有或没有一些帮助的帮助。如果它没有正确归档,它也可以在一致性问题中跳下系统。

技术首先由IBM于20世纪60年代后期开发,通过在过去十年中允许更多的任务作为提高数据中心的利用的方式来提高其大型机的性能,以便在过去的十年中同时进行广泛的关注。通过允许在使用称为虚拟机的薄层和管理它的超级代码上排队的任何操作系统上运行的任何应用程序都在同一服务器上排队,服务器利用率从大约5%的低至90增加到90%。反过来,允许的数据中心在服务器的电力和​​冷却机架上节省大量资金,并缩小这些数据中心内的机器的总数。在某些情况下,节省的数百万美元。

这种方法进一步精致“1型”虚拟机管理程序,它使用直接在金属上直接运行的甚至更薄的代码层而不是在操作系统上,结果是更好的能量效率和同一操作的性能。虚拟化最近也变得特别有吸引力,作为所有大小处理器的安全措施,因为它允许交易彼此隔离。它们与实际触摸的组件和过程物理地分离功能,而不是物理地分离,它们几乎可以分开,这是一种更不成本的方法。

但是并不是所有的虚拟化都需要在软件中完成。一种较少公开的方法是硬件虚拟化,它利用未使用的处理器周期,就像它们作为不同的处理器运行一样。这使得它更快,更不容易出错,甚至更高效,甚至可以在单核处理器上更好地利用处理能力。

Nucleus in高级产品经理安德鲁·凯博斯(Andrew Caples)表示:“你可以通过把它当成不同的处理器来最大化利用处理器。导师图形的嵌入式软件部门。“所以它用作虚拟CPU,但物理上只有一个CPU。这是MIPS(现在的一部分)的一个领域想象力技术)有性能收益。您还可以使用它来最小化电源和热量,同时提高性能。“

提高每个时钟周期的工作效率是所有类型处理器制造商面临的最大挑战之一。其中一部分还取决于指令集,这可能涉及到位的数量和操作的效率。synopsys.例如,伴随着MIPS的类似目标,例如,技术的扭曲不同。

“这不仅仅是关于添加说明,”Synopsys'arc处理器的产品营销经理Mike Thompson说。“您可以添加更多核心寄存器并在那里指定源和目的地,您可以引入寄存器,以便有单个时钟访问来读写。并且您可以通过使用具有性能密度的虚拟机管理程序来提高性能,因此您在同一处理器上运行第二个系统。因为您正在利用未使用的周期,这对最大化效率最大化具有影响。“

它还具有16/14nm的影响,因为逻辑运行得更快,但至少最初,存储器将比逻辑速度慢。“有些方法可以减轻该方法,例如更多阶段来访问内存,”汤普森表示。“但你愿意花多少钱在记忆中进行更大的司机?”

卸载任务
从通用处理器卸载一些处理是提高性能和降低功率的多种方案的核心。这通过应用程序利用多个核心的能力变化。

“您可以对特定核心具有艰难的亲和力,或者您可以在处理器可用时具有柔和的亲和力并加载不同的任务,”Mentor的Caples表示。“这样,您可以将夫妇处理器分配给许多任务。因此,您可以从多个核心工作的软件中获得性能增益,而不仅仅是添加越来越多的核心。“

有多少核是有效的,取决于它们中的多少可以有效地使用。大多数软件都可以是线程的,以使用两个核心。有些软件可以有效地使用四个核心。除此之外,该软件必须做出高度重复的任务,可以将独立计算的小块解析为小块,然后在最后重新组装,这是多处理世界中最大的挑战。

“在某种程度上,这是一个我们从黎明开始就在处理的问题SoC- 撰写代码,“首席技术官超声。“这一切都归结于处理器的能源效率。我们已经到了这条曲线的膝盖,在那里,让它跑得更快在动力方面是非常昂贵的。所以问题不再是关于并行处理器。它是关于应该使用多少单独的处理器,以及我们如何帮助软件社区使用混合处理器和不同指令集的平台。这也需要在中间装配中做一些改变,在中间装配中你需要智能调度器来移动流程。”

在特定于应用程序的处理器和编译器技术中,仍有很大的努力来提高特定处理器的软件速度。这有助于解释为什么Synopsys会获得收购目标编译技术本月早些时候。

权力和吞吐量
高级节点的处理器制造商面临的挑战之一是吞吐量。在每个新的进程节点上,内存和逻辑之间的连接更长、更薄,这不仅带来了性能方面的问题。新的选择公式是每瓦特的性能,但有时即使这样也不够。

“在某些情况下,这不仅仅是性能/瓦特,”埃兰布里曼说,营销副总裁塞瓦。“有时它是纯粹的性能差距,需要采用特定于通用处理器。例如,您甚至无法想象即使在无线基站中找到最快的CPU也无法运行LTE PHY(物理层)。无论您的权力预算如何,它都不适合。另一个例子来自计算摄影域。该域中的应用程序中最受欢迎的一个是镜头阵列,其中多个 - 最多4×4传感器同时捕获图像,然后操纵并将它们熔断在一起以创建单个高质量图像。试图将这些计算映射到最快的CPU上,您将在应用程序处理器中找到将失败。在如此的极端情况下,这些通用处理器只是缺乏所需的性能,更不用说权力问题。“

Briman指出,特定于应用程序的处理器的范围从极低的功率、始终打开的所有方式到高性能向量浮点处理器。“供应商接受这类处理器的最大障碍是其编程,以及向软件开发者开放。他们通常非常熟悉cpu,并熟悉它们的工具和ISA。如何让他们使用一组不同的工具,使用特定于应用程序的ISA,并明确关注以高效的方式编码?这时各种自动卸载工具就派上用场了,它们帮助软件开发人员将处理器抽象出来,开发人员不需要真正知道他的代码在哪个处理器上运行。在他看来,这一切都是基于arm的,实际卸载到特定应用程序的处理器是自动发生的。”

这些问题被要求更频繁地被询问。现在设计的粒度已达到处理器,应用程序和电源预算。

“你需要加快时钟速度来完成你需要做的事情吗?”该公司负责产品工程和支持的副总裁阿维克•萨卡尔(avek Sarkar)问道ANSYS / APACHE.。“时钟速度是确定因素,还是您需要更多的内核,这些内核更具应用程序特定和优化它?使用FinFET,过渡漏电流超出图片。但是,如果你催化时,你仍然必须处理权力。如果将电源电压降至0.7伏或甚至0.6伏,则性能几乎不会随FINFET而变化,但如果您在28nm并且您将其放下,则会显着降低性能。与此同时,如果你推出时钟速度,你会否定你想要完成的目标的目的。这就是为什么我们看到更多的核心以获得特定功能的核心。在过去,它是关于时钟速度的。现在它是关于功能和特定于应用的设计。“

堆叠同死2.5D3d- 在提高吞吐量,更少的内存泄漏和较低的I / O功率方面提供了另一种提升,提供了它们的成本效益。组件之间的距离较短,连接它们的电线更宽,这需要更少的能量来驱动信号。但也有一个反向趋势开始造成形状。而不是定义软件的处理器,在系统公司中有讨论有软件定义硬件本身,以及它的行为方式。这可能被证明是一种更昂贵的设计方法,因为它可能不需要最新的技术来提高性能。十亿个门可能无关紧要根据软件需求设计的硬件。

然而,在设计的每个部分,力量正在成为处理器可以运行的速度的限制因素。因此,虽然为特定功能添加更多核心是有意义的,但处理器本身并没有更快。他们中的更多,他们都更有效地工作。这就是良好的工程是什么。但营销世界可能需要很长时间才能弄清楚销售它的好方法。

要查看本报告中的第一个,请单击这里



1评论

可能会对半导体的未来产生深远影响。这些问题将在本文的第二部分讨论[…]

发表评论


(注意:此名称将被公开显示)