中文 英语
18lk新利
的意见

确保大规模可靠的处理器性能

通过数据管理数据中心基础设施。

受欢迎程度

在当今的数据中心环境中,弹性是关键。云提供商建立在即服务业务模式之上,正常运行时间对于确保客户的业务连续性至关重要。声誉和竞争力要求服务具有极高的性能、低功耗和不断增加的功能,对计划外停机或错误零容忍。

如果您是一个超规模计算者,或者是超规模计算者的芯片供应商,那么您应该已经明白,任何拥有数十万个服务器的系统都会偶尔遇到CPU不做它应该做的事情。在某些情况下,这些错误以一种无法立即检测或标记的方式发生。有时计算会得出错误的结果。其他时候,指令的行为并不像它应该的那样。在某些情况下,错误是不一致的,使得它比“……当我这样做时总是发生!”这样的问题更难找到。

当此类问题发生时,追踪它们可能非常耗时。

这样的问题不是芯片设计的错,也不是它的使用方式的错,而是半导体行业使用不断缩小的工艺几何来挤压成本,并推动性能不断提高的产物。随着进程的缩小,任何芯片的性能都变得越来越多变。除此之外,某些参数在长期使用后会发生变化,您就有了解决问题的方法,这些问题很难精确定位,因为它们的持续成本很高。

一些真实的例子

以Facebook为例,如该公司2021年2月的论文《大规模无声数据腐败》[1]所述。固件升级突然开始在公司的一个数据中心引起随机问题。在18个月的时间里,这个问题在某种程度上被隔离在一个处理器芯片的一个核心上,这导致数学软件包Scala从一个非常具体的计算中返回一个错误的结果。计算数字的整数部分:1.153当它应该是156时被返回为零。系统中没有任何东西将此标记为错误。该核心给出了1.152的正确结果,但当幂为53时,它回答为零。由于这个数字在压缩文件后作为文件大小返回,系统软件认为文件不存在,或者基本上丢失了。不漂亮!

谷歌在6月份与该公司的报纸分享了一个类似的故事:“不算数的核心”[2]。在谷歌的案例中,处理器上的“水银”核心执行方式与预期不同,但问题仅限于所有处理器芯片中的某个核心,这使得它比Facebook的罪魁祸首更容易定位。谷歌将其命名为“腐败的执行错误”或cee,这是Facebook报告的一些sdc(无声数据腐败)的新发现原因。它们有时会导致错误的答案,而这些答案永远不会被发现。cee很难修复,因为与存储、内存或I/O中的错误不同,不能应用错误纠正。谷歌预计,随着硅工艺的缩小,这个问题将变得越来越难。在“许多工程师几十年”之后,调查这个问题的团队能够追踪到有问题的核心并将其隔离。

微软在2020年5月的OCP全球峰会上提出了自己的想法。该公司没有透露他们解决的具体问题,而是提出了一种统一的错误报告方式,因为大型系统经常遇到问题。该公司概述了当前云级硬件故障诊断面临的挑战,列举了一些原因,如缺乏清晰和全面的错误报告,遥测解决方案的差距,这是导致新故障的根本原因,以及由于缺乏基于标准的错误报告而导致的自定义错误日志格式。这些导致了“未发现问题”的高比率、硬件组件的高替换率、识别硬件故障缓解措施的较长前置时间,以及集成多个不支持云计算的供应商工具。微软希望业界能够团结起来,以统一的方式报告经常发生的错误,这样就可以通过软件进行纠正。

为什么会这样?

随着半导体工艺的缩小,芯片供应商面临的问题变得越来越复杂。噪音问题会恶化,金属线的电阻会随着时间的推移而改变,而困住的电荷会随着晶体管的使用而改变其性能。当这些影响结合在一起,导致芯片在非常全面的生产测试套件中表现良好时,出现意外问题的可能性很大。与此同时,半导体生产工艺规程必须不断变得更加严格,因为用今天的工艺几何结构使晶体管按计划工作变得越来越困难。从一个芯片到下一个芯片的可变性越来越大,以至于很难预测一个芯片是否符合其规格,甚至无法测试其可靠性。

这些问题都是新出现的,而且频率越来越高。上面提到的超规模计算者,以及其他人,是第一个发现这一日益增长的担忧并对此进行报告的人。但这当然不是一个可以摆脱的一次性谜题。该行业迟早需要解决这些需求。难怪今天的数据中心网络是建立在冗余架构之上的,而冗余架构的成本非常高。

更糟糕的是,问题并不总是立即显现出来。在某些情况下,当部署一个小型且经过良好测试的软件补丁时,一直运行良好的数据中心会突然开始出现问题。在其他情况下,一个平稳运行的数据中心将开始遇到随机错误,起初非常罕见,但随着时间的推移会变得越来越频繁。

现实生活中的问题

让我们来看一些例子:

在2019年10月的电子设计过程研讨会上,另一个谷歌团队[4]报告了随着时间的推移导致芯片故障的各种错误机制。主讲人列出了7种“主要可靠性退化机制”:NBTI、PBTI、RTN、HCI、TDDB、EM和SER。不需要详细说明,请注意其中四个,NBTI, PBTI, HCI和TDDB,都是由捕获电荷引起的,这些电荷随着芯片通电时间的增加而增加。RTN,随机电报噪声,在任何电子系统中都是不可避免的,而且是完全随机的。这是不可避免的,在芯片设计过程中必须采取措施来降低它破坏处理器的可能性。EM,电迁移,随着时间的推移增加金属线的电阻,是由芯片金属互连中的高电流密度引起的。随着芯片工艺的缩小,电流密度增加,问题就会恶化。十多年前,芯片制造商从铝转向铜来解决这个问题,但它再次成为问题,所以有传言说可能会转向其他材料。最后,软误差率(SER)是由辐射引起的,也正在成为地面系统的一个问题。

超级规模商以及芯片制造商都非常关注所有这些机制,因为数据中心可能会被这些统计偏差压垮。Facebook解释说,SDC问题可能是由设备错误、早期寿命故障、随着时间的推移而退化和寿命结束磨损引起的。谷歌表示:“有故障的核心通常会反复和间歇性地故障,并且随着时间的推移往往会变得更糟。”

这些超规模商希望他们的系统能够识别这些错误并报告它们。如果它们能被预测就更好了。通过适当的监测技术,这是完全可以实现的。

持续的监控

如何进行这种监控呢?

到目前为止,公司无法检测到Facebook和谷歌所呈现的SDC和CEE故障。但是今天,高度复杂的soc可以作为他们系统的传感器。它们可以在内部进行监控,从生产批次的变化到材料退化、老化、软件影响、应用压力、潜在的生产缺陷和环境影响。

今天,这种解决方案是可行的。Proteus, proteanTecs预测分析引擎,通过ML驱动的片上遥测技术,随着时间的推移收集深度数据,识别高风险问题,并根据学习主动跟踪它们。该平台利用芯片遥测数据、历史数据、预测建模和机器学习算法,使制造商和品牌所有者能够识别系统问题,并通过快速根本原因分析采取行动,延长系统寿命并预防流行病。通过持续监控,还可以验证现有硬件上的软件升级,以确保可靠的性能。

sdc和cee可以与芯片及其所嵌入的系统中的其他参数相关联,因此可以预测处理器行为,甚至在发生现场错误之前就标记出来。这为每个人提供了一种能力,从正在介绍新处理器的芯片开发人员到已经使用了多年的系统管理员,他们可以了解他们的系统今天的性能以及明天的可能性能。Proteus与数据中心管理系统集成,提供基于学习到的见解的自动化行动部署。


全生命周期运行状况和性能监视,以确保可靠性。

此外,监视类似的设备可以为责任评估提供精确的每个设备分析。通过检测故障的cpu,并将具有相同特征且可能容易出现此类错误的其他cpu关联起来,可以防止故障的发生。

通过针对性能监视、退化监视和根案例分析的应用程序,通过对供应链的反馈机制实现了预测性维护。设计、制造流程、测试程序和现场健康跟踪变得高度个性化和可预测。

  1. “无声的大规模数据腐败”;Harish Dattatraya Dixit Et. Al., Facebook,arxiv.org/abs/2102.112452021年2月
  2. “不算数的核心”;Peter H. Hochschild等人,谷歌Research, 2021年6月
  3. “改进云级硬件故障诊断”,Neeraj Ladkani, Rama Bhimanadhuni,微软,2020年3月OCP虚拟峰会
  4. “电路可靠性降低技术和EDA要求”,Georgios Konstadinidis,谷歌,EDPS 2019


留下回复


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

Baidu