手册下载
H3C Intel G3系列服务器 RAS技术白皮书-6W108-整本手册.pdf (825.59 KB)
H3C G3系列服务器
RAS技术白皮书
Copyright © 2019-2024 新华三技术有限公司 版权所有,保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。
除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。
本文档中的信息可能变动,恕不另行通知。
· 由于产品版本升级或其他原因,本文档内容会不定期进行更新。
· 本文为产品通用资料。如果用户有定制化需求,请以产品实际情况为准;有需要请联系H3C技术支持。
本手册适用以下产品:
· H3C UniServer R2700 G3
· H3C UniServer R2900 G3
· H3C UniServer R4700 G3
· H3C UniServer R4900 G3
· H3C UniServer R6900 G3
· H3C UniServer R4300 G3
· H3C UniServer R6700 G3
· H3C UniServer R8900 G3
服务器是任何现代数据中心基础设施的关键组成部分之一,它包含处理器、存储设备、PCIe设备,电源和风扇等多种部件。对任何现代数据中心的关键要求之一就是需要在不影响数据完整性的前提下,保持服务器长时间的稳定运行。换言之,既要确保服务器稳定运行,还要保证数据在任何服务器部件(如内存、缓存或处理器寄存器)中存储或在平台链路(如Intel®UPI、PCI Express、DMI链路)中传输时,都不会发生数据损坏。在服务器的部件出现故障时,RAS技术通过最大化可用性及保证所有部件中的数据完整性,尽可能满足上述需求。
RAS(Reliability、Availability and Serviceability),即可靠性、可用性、可维护性。
以下是RAS的三个主要目标:
· 提升系统可运行时间。
RAS技术可以提升服务器的可靠性,一般通过测量平均故障时间(MTTF)、年崩溃率(ACR)或年服务率(ASR)来度量系统可运行时间。一个可靠的系统将保持运行更长的时间,因此更加可用。
· 减少非计划停机时间。
即使做了最周密的计划,仍然有可能发生停机。当出现非计划停机时,可以通过测量MTTR平均修复时间来度量服务器的可维护性。一个可维护的系统可以快速恢复正常运行。
H3C UniServer G3系列机架式服务器搭载Intel至强可扩展处理器设计,使硬件和固件协同支撑日志记录,帮助识别和隔离故障,让操作者可以进行预防性或主动性的维护。如果出现停机,可以快速地将系统重新上线,减少维护成本,并减轻停机对企业的后果。
· 维护数据完整性。
RAS技术提供了多种机制来防止数据损坏并纠正出错的数据。当检测到错误数据时,会确保它在可控制的范围内,避免引起更严重的问题。
RAS所包括的具体内容并没有一个特别严谨的定义和划分,本文表1中呈现的是H3C服务器团队参考业界相对通用的标准,并结合服务器的特点给出的RAS定义。
表1 RAS定义
类型 |
定义 |
Reliability |
可靠性可定义为系统在某个给定时间T内产生正确输出的概率,通过规避、检测和修复硬件故障的功能来增强系统可靠性。可靠的系统不会提供错误的数据和计算结果,而会检测并对错误数据进行纠正。 可靠性以平均故障间隔时间(MTBF)为度量进行描述。 |
Availability |
可用性为系统在给定时间运行的可能性,及设备实际运行的时间与实际应该运行时间的百分比。 可用性通常以系统预计可用时间百分比进行描述:如99.99%。 |
Serviceability |
可维护性指出系统可以修复或维护的简单程度和速度。如果系统修复故障的时间增加,则可维护性降低。 可维护性包括在出现问题时提供轻松诊断系统的方法。这方面则需要软件提供更加智能、清晰的错误信息和通知手段,并尽可能提供故障预警,避免系统挂死。 |
通过表2对本文中出现的专业名词及缩略语进行简要的解释。
术语 |
解释 |
AER |
Advanced Error Reporting,高级错误报告 |
BIOS |
Basic Input Output System,基本输入输出系统 |
BIST |
Built in Self-Test,内建自测 |
CDC |
Corrupt Data Containment,又称为Data Poisoning |
Core |
处理器的一部分,包括处理单元,例如执行引擎(EE)和专用高速缓存 |
CHA |
Cache and Home Agent |
CMCI |
Corrected Machine Check Interrupt |
CRC |
Cyclic Redundancy Check,循环冗余校验 |
DCU |
Data Cache Unit,数据缓存,属于一级缓存 |
DMI |
Direct Media Interface,直接媒体接口。DMI是Intel公司开发的用于连接处理器和平台控制器(PCH)的总线 |
DIMM |
Dual-Inline-Memory-Modules,双列直插式存储模块,一种内存条 |
ECC |
Error Checking and Correcting,差错校验纠正 |
EMCA |
Enhanced Machine Check Architecture |
FFM |
Firmware First Model,固件优先模型 |
FW |
Firmware,固件 |
FRB |
Fault Resilient Boot |
HDM |
Hardware Device Management,H3C自研的遵循IPMI协议的板级管理控制器 |
HW |
hardware,硬件层 |
ICU |
Instruction Cache Unit,指令缓存单元 |
IFU |
Instruction Fetch Unit,指令存取单元 |
IIO |
Integrated I/O Module,集成I/O模块 |
IMC |
Integrated Memory Controller,整合内存控制器 |
LLC |
Last Level Cache (L3 cache),三级缓存 |
LPC |
Low Pin Count,用于连接I/O设备 |
MCA |
Machine Check Architecture |
MCE |
Machine-Check Exception |
MLC |
Mid Level Cache,二级缓存 |
MRC |
Memory Reference Code,内存参考代码 |
OS |
Operating System,操作系统 |
PCH |
Platform Controller Hub,平台控制器中心 |
PCIe |
Peripheral Component Interconnect Express,外围组件快速互连 |
POST |
Power On Self Test,开机自检 |
RAS |
Reliability,Availability,Serviceability,可靠性、可用性、可维护性 |
runtime |
运行期间。本文特指在OS运行期间。 |
SDDC |
Single device data correction (DIMM CRC) |
SMI |
System Management Interrupt,系统管理中断 |
TLP |
PCIe事务层数据包 |
UEFI |
Unified Extensible Firmware Interface,统一的可扩展固件接口 |
Uncore |
指处理器Core之外的处理器Socket的模块。 Uncore包含CHA、M2M、Intel ®UPI、iMC、IVR、PCU、UBOX等。需要注意的是,IIO模块被视为Uncore之外,但它仍然集成在同一个Die内 |
UPI |
Ultra Path Interconnect,极速通道互联 |
VT-d |
Intel Virtualization Technology For Directed I/O,英特尔定向I/O虚拟化技术 |
如图1,业界对错误有如下分类。
基于上图中的错误分类,RAS处理流程如图2所示。当检测到可纠正错误CE时,对错误位置进行标记,并通过对应模块的RAS技术快速修复错误,大部分情况下用户不会感知到这类错误的发生。
当出现不可纠正错误UCE时,会尝试对故障进行隔离。比如通过隔离内存坏块、总线降频等手段,维持系统的运行。若发生了更为严重的故障,系统直接宕机,这时需要通过带外管理软件HDM恢复或重启系统。
对于硬件永久性故障,需要更换新的硬件或者启用备用设备进行修复。通过对部分硬件的热插拔功能,可以支持用户在系统不断电的情况下,进行故障设备的更换,使服务器恢复正常工作。
图2 RAS流程
Intel至强处理器平台提供了强大的错误处理架构MCA,G3系列机架服务器在MCA架构的基础上,整合硬件、BIOS、HDM以及现有OS的故障处理机制,创建出了一套完善的故障管理系统,可以在系统发生错误后提供完备的故障诊断、故障定位、故障恢复、故障信息搜集、故障上报等一系列功能,而且由于此系统的核心模块是运行于BIOS及HDM上的,不依赖于OS,并且处于一直运行的状态,因此可以实现对系统运行的全时段检测,在错误发生的第一时间进行针对性的处理,使其远离异常宕机的风险。
故障管理系统由硬件层、CPLD、处理器平台、带外管理HDM、BIOS、OS共同配合及交互,实现故障精确定位、故障及时处理。
故障管理系统的整体架构如图3所示,主要组件包括:
· HDM:故障定位系统的核心,它负责故障的收集、汇总和分析,并通过Web管理界面事件日志以及故障告警等方式向客户呈现。
· 处理器平台:G3系列机架式服务器采用Intel至强CPU平台,该平台较上一代基础上增强了RAS的能力,增强了对处理器、内存、PCIe设备硬件故障的管理能力。
· CPLD:向下与各个硬件模块,包括电源、风扇以及其他底层硬件(除CPU、内存、硬盘和PCIe标卡外)接口,捕获硬件异常状态,向上与HDM互连,传递故障信息。
· BIOS:主要实现CPU、内存、PCIe以及存储设备的故障收集和定位,向HDM提供故障定位的结果,对OS层面来说,BIOS提供WHEA等OS级故障管理的接口。
· FIST(可选部件):FIST是由H3C开发的一款服务器配套管理软件。SDS日志会记录服务器平台在每个使用周期过程中产生的从硬件到软件,从主CPU到BIOS、OS到BMC的大小事件。SDS日志需通过FIST来解析。根据该功能查找服务器的使用记录或判断服务器的健康状况,客服或者工程师可以追寻服务器健康问题的蛛丝马迹,快速定位问题,从而提高服务器的可服务性。
· iFIST(可选部件):iFIST是一款内嵌于服务器的单机管理工具,通过iFIST可以配置RAID、安装操作系统、安装驱动程序和诊断服务器健康状况,以满足用户对单台服务器进行直接管理的需求。
· 客户界面:主要通过HDM的Web界面,可以方便客户在远程或者本地进行系统维护工作,当然在主要部件上也会有故障指示灯。
· 各类协议:故障管理系统中所用到的接口、协议包括:LPC,PECI,PCIe,UART,I2C,SMBUS,LocalBus等。
H3C的RAS技术要点主要包含故障的检测、上报及处理三个部分,下面分别进行介绍。
如表3所示,G3系列机架式服务器的处理器在各种内部模块中,实现了广泛的错误检测和纠正能力,以保持处理器的可靠性水平。一旦错误被检测及纠正,就会通过各种错误上报方式进行上报,下一节将详细介绍故障上报的方式。
故障检测主要通过4.2 1. 故障检测及校正(包含Socket级别)特性实现。
模块 |
定义/子模块 |
检测方式 |
EE |
Execution/Engine |
residue check |
IFU |
Instruction Fetch Unit(L1 I-Cache) |
Parity |
DCU |
Data Cache Unit(L1 D-cache) |
Parity |
I/DTLB |
指令/数据转换后备缓冲区 |
Parity |
MLC |
Mid Level Cache |
ECC |
CHA |
L3 Cache:数据标志,MESIF状态 |
ECC |
Home Agent |
Parity |
|
PCU |
Power Controller Unit 电源控制单元 |
Parity,Stack overflow,time schemes |
IVR |
Integarted Voltage Regulators |
Over voltage and over current |
UPI |
Ultra Path Interconnect |
CRC |
RX和TX队列 |
Parity |
|
iMC |
读数据缓存Parity |
Parity |
Memory Read Write Data Byte Enable |
ECC |
|
IIO/PCIe |
Integarted I/O:Phy and Link Layer |
CRC |
RX/TX queues |
Parity |
|
IIO,IRP,Inter VT-d,MISC,DMA errors |
||
内部环路 |
Internal ring – Data and Command(DPPP,APPP) |
Parity |
故障上报用于通知可能发生的各种类型的故障,只有在检测到故障时才启动处理器错误上报流程。故障上报包含错误信号发送和错误日志记录两部分。
故障上报功能涵盖了四个模块,MCA、AER、内存和UPI。
· Machine Check Architecture (MCA):对于不可纠正错误,可以捕捉并记录第一个错误。对于可纠正错误会记录最后一个错误。MCA的作用域包括处理器中的所有模块,Core、Uncore和IIO(通过IOMCA)。
· Integrated I/O Advanced Error Reporting (IIO AER):PCI Express的可选扩展功能,它提供了比标准PCI Express错误报告机制更强大的错误报告功能,包括PCI Express AER、Traffic switch、IRP、IIO核心、英特尔VT-D、CBDMA和其他特定于英特尔的扩展。
· 内存可纠正错误上报:内存可纠正错误数量记录和信号发送的功能。
· UPI可纠正错误上报:UPI错误记录及信号发送的功能。
处理器提供了以下几种不同的MCA错误上报模式:
已经有几代英特尔处理器均支持Legacy IA-32 MCA模式,该模式是大多数操作系统都支持的。
· Corrupt Data Containment模式
CDC(Corrupt Data Containment Mode)模式是对MCA机制的一种强化。当启动CDC模式并检测到不可纠正错误时,检测代理将设置“poison”位和数据一起转发给请求代理。
· Enhanced MCA Gen1 (EMCA Gen1) Mode
该模式是Legacy IA-32 MCA模式的第一代增强模式,是为了实现固件优先的错误报告模型。
· Enhanced MCA Gen2 (EMCA Gen2) Mode
第二代增强的Legacy IA-32 MCA模式。主要的目的是创建一个可通过操作系统启用的模式,并且进一步扩大固件第一模型(FFM)的错误报告范围。
· IOMCA Mode
允许IIO的不可纠正致命错误和不可纠正非致命错误通过MCE发送错误信号。
· Viral模式
Viral模式相比于CDC模式,在硬件中通过额外的措施,进一步提升了对错误的包容性。CDC模式可以包容数据的错误,而Viral模式对地址、控制或其他致命错误都可以包容。目的就是包容错误并防止它被提交到硬盘或网络。
这些模式中的一些是可以同时启用且互补的。表4描述可同时启用的错误上报模式。
操作模式 |
Legacy IA-32 MCA模式 |
CDC模式 |
EMCA Gen1模式 |
EMCA Gen2模式 |
IO MCA模式 |
Viral 模式 |
Legacy IA-32 MCA模式 |
Yes |
|
|
|
|
|
CDC模式 |
No |
Yes |
|
|
|
|
EMCA Gen1 模式 |
No |
Yes |
Yes |
|
|
|
EMCA Gen2 模式 |
No |
Yes |
No |
Yes |
|
|
IO MCA模式 |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Viral 模式 |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
根据故障的类型不同,会采用不同的中断进行故障上报,如表5所示。
故障类型 |
中断类型 |
作用域 |
备注 |
|
可纠正错误故障上报 |
CMCI (Corrected Machine Check Interrupt) |
Core/uncore |
仅Legacy IA-32 MCA模式使能 |
|
CSMI (Corrected SMI) |
Core/uncore |
仅eMCA2模式使能 |
||
SMI (System Management Interrupt) |
Memory errors |
带内通信。可通过UPI总线在所有socket之间通信 |
||
MSI (Message Signaled Interrupt) |
PCIe errors |
|
||
ERROR_N[0] Pin |
IIO AER and Memory errors |
可以被用于基于BMC的RAS实现 |
||
不可纠正可恢复故障上报 |
UCNA |
CMCI |
Core/uncore errors at the source |
仅Legacy IA-32 MCA模式使能 |
MSMI |
core/uncore errors at the source |
仅在eMCA2模式使能 |
||
MSI and ERROR_N[1] Pin |
Severity1 IIO AER nonfatal errors |
|
||
SRAO、SRAR |
MCERR |
core/uncore errors |
Legacy IA-32 MCA模式使能 |
|
MSMI |
core/uncore errors at the source |
仅eMCA2模式使能 |
||
灾难性故障 |
IERR |
core/uncore errors |
仅Legacy IA-32 MCA模式使能 |
|
MSMI |
core/uncore errors at the source |
仅eMCA2模式使能 |
下面详细描述可纠正错误和不可纠正错误的整体处理流程,如图4所示。
· 可纠正错误的处理如图4所示的橙色流程。针对系统发生的可纠正错误,通过漏桶算法及设置可纠正错误阈值,可以实现在可纠正错误频繁发生时,触发SMI中断通知BIOS进行错误处理,BIOS接收到SMI中断请求后会根据不同的中断类型进行相对应的错误处理,在确保系统正常运行的同时,对发生错误的器件进行定位,隔离,搜集相关的错误状态寄存器信息,并上报HDM相关的错误事件及详细的错误状态寄存器信息,可供用户或服务器维护人员进一步分析问题发生原因。
· 不可纠正可恢复错误的处理如图4所示的深绿色流程。对于不可纠正错误,如果这个错误是软件可恢复的(recoverable),则此错误并不会影响系统运行,只会将此错误数据将打上错误标记,并触发SMI中断,BIOS收到此SMI中断后会搜集相关的错误寄存器信息,并对错误器件进行定位并上报HDM相关的错误信息及详细的错误状态寄存器信息。
· 不可纠正错误的处理如图4所示的黄褐色流程。如果x86系统发生了不可纠正且不可恢复的错误,CATERR_N管脚会被拉低,这种错误会造成系统挂死,将会触发HDM的错误搜集程序,HDM可以获取x86系统的错误状态寄存器信息,保证可以在系统挂死的情况下仍能在第一时间获取到错误现场信息,定位出错误根源并及时反馈给用户相关的信息。
使用MCA Bank、AER状态寄存器、内存可纠正错误状态寄存器和Intel UPI错误状态寄存器实现Core、Uncore以及IIO模块的错误日志记录。
表6 错误等级和上报方法
错误类型 |
上报作用域 |
错误日志记录 |
Corrected或Advisory Non-Fatal |
MCA |
通过MCA Bank寄存器 |
AER(Severity 0) |
通过IIO错误记录寄存器 |
|
iMC |
CORRERRSTATUS(每个RANK) |
|
Uncorrected Recoverable或Non-fatal |
MCA |
通过MCA Bank寄存器 |
AER(Severity 1) |
通过IIO错误记录寄存器 |
|
Uncorrected Fatal |
MCA |
通过MCA Bank寄存器 |
AER(Severity 2) |
通过IIO错误记录寄存器 |
|
Catastrophic |
MCA |
通过MCA Bank寄存器 |
当多个可纠正错误被上报时,可通过4.2 11. First Corrected Error (FCERR) Mode功能,防止后面更新的错误记录覆盖原始的错误记录。
通过4.2 12. PCIe可纠正错误上报功能记录PCIE可纠正错误数量。结合4.2 13. 可纠正错误阈值功能,一旦IIO子模块和UPI内可纠正错误计数达到阈值,就发出错误上报信号。
根据具体的故障类型,采取对应的故障处理措施。下面针对各个模块的故障问题处理方式进行说明。
如表7,针对不同层级的内存故障,G3系列机架式服务器有不同的处理技术。
故障类型 |
可能原因 |
处理方法 |
Bit error |
High energy particle strike-Soft Error (SE) |
SDDC,Patrol Scrub |
Row error |
SE or Persistent fault |
|
Bank error |
Hard failure |
ADDDC-SR,ADDDC-MR+1 |
Device error |
Hard failure |
ADDDC-MR+1 |
Addr/Cmd error |
Transient Event |
DDR4 CMD/ADDR Parity error check and retry |
Multi-device error |
Hard failure + SE |
MCA-recovery,Address Range Mirroring |
Connector error |
Wear-out or manufacturing defect |
Memory disable/mapout for FRB |
Channel failure |
Board defect |
其中,SDDC(Single Device Data Correction)技术的简介可查看4.2 18. 单内存颗粒数据错误纠正SDDC。SDDC技术是基于纠错码去纠正单个DRAM颗粒错误,在G3系列机架式服务器BIOS中,SDDC功能自动开启且不可调整,支持x4内存颗粒。SDDC提供错误检查和校正,用于校正DIMM上的单个DRAM颗粒故障(硬错误)和多比特故障。
另一项内存故障处理的关键技术ADDDC(MR),同样需要在Virtual Lockstep模式下启用,并且只支持可纠正区域。对于x4 DDR4的DIMM,ADDDC功能支持每个IMC纠正2个DIMM区域(Bank或Rank)。
在Virtual Lockstep模式下,Bank/Rank区域可以被匹配到DIMM中的任何区域。所有写cacheline操作要同时写两个32 Byte且位于同一个Channel的2个不同DIMM上,这样对耗电和性能的影响最小。
当出现内核级错误,处理手段主要涉及到Core Disable For Fault Resilient Boot功能和Core Corrupt Data Containment Enabled for DCU/IFU功能。
· Core Disable For FRB功能
随着处理器内核数量的逐代增加,单个故障点从整个处理器转移到处理器内部的较小模块,比如单个Core或LLC的一部分。当出现了故障,除了可以禁用整个CPU之外,现在可以做到禁用特定的核。
Core的禁用需要保留至少一个Core是活动的,才能完成系统引导过程。
· Core Corrupt Data Containment Enabled for DCU/IFU功能
处理器支持DCU/IFU的内核缺陷数据包容特性,在启用MCA恢复-执行路径的高级RAS特性的情况下,可以将某些类型的不可纠正数据错误上报为不可纠正可恢复错误(SRAR类型的UCR)而非致命错误。
“error containment”位被一路传递给DCU/IFU,从而允许隔离损坏的数据。下面是过程描述:
¡ DCU/IFU从IMC接收到“error containment”Bit被置起的数据。
¡ DCU/IFU将错误记录在MC1/MC0的 MC Bank中,并触发MCERR信号。SW将查找错误标识以确定该错误是否可恢复。
PCIe的故障处理主要介绍两个功能,PCIe链路重建链和恢复功能和PCI Express Corrupt Data Containment功能。
· PCIe链路重建链和恢复
PCI Express接口在出现链路降级时结合恢复机制,可以在不影响挂起的事务的情况下,进行重建链。如果在特定lane上出现了降级,恢复机制会按照Platform Design Guide (PDG)定义的链路降级规则,降低链路宽度(例如,x16链路将降级到x8链路)。如果在多个lane上出现降级,恢复算法会尝试在下一个允许的速度下重建链。
· PCI Express Corrupt Data Containment功能(又称为Data Poisoning)
当接收端检测到不可纠正的数据错误时,使用“bad data”状态标识该错误数据,再将数据转发给目标,这种错误报告形式被称为“data poisoning”。
接收poison数据的目标端,必须忽略数据,或者将数据带着“poison”标识存储起来。PCIE和一致性接口在事务分组中提供poison字段来标识错误数据。
Data Poisoning功能不仅限于发送的请求。需要用数据完成的请求也可以标识poison数据。
UPI故障处理的关键特性包括Intel UPI Corrupt Data Containment 和Intel UPI Dynamic Link Width Reduction功能。
· Intel UPI Corrupt Data Containment
每条UPI链路上有一个全局的POISON_ENABLE位,BIOS通过写这个比特设置是否启动data poison。
当UPI Date Poison功能开启时,Intel UPI只是一个poison标识的管道。UPI TX/RX接接收到poison数据,会继续将数据传送到目的地,并且不会触发错误信号或记录错误日志。这样将由数据的消费者来决定如何处理不可纠正的数据错误。
当UPI Date Poison功能关闭时,UPI将看不到带有poison状态的数据,所有单元都返回到Legacy MCA模式,Intel UPI RX收到poison数据,会发出一个错误信号并立即记录。
· Intel UPI Dynamic Link Width Reduction
该特性通过动态重新调整lane宽度来恢复物理Intel UPI链路上的一个或多个数据通道的硬故障。
如果可能,链路将保持在窄宽度上操作。在物理lane故障的情况下,支持从全带宽减小到x8,半带宽支持仅用于x8位的最小集合,以允许任何单个数据通道失败。所得到的动态链路带宽减少模式是lane[7:0]或[19:12],就是说只要不是所有故障都在[7:0]和[19:12]上,多lane故障就可以被恢复。L0p只支持Intel UPI从全宽链路到x8,以节省电力,如果由于动态链路带宽减小而导致端口劣化,则L0p将被禁用。
本小节对H3C已经支持且用户可用的RAS功能分类并介绍,共计62项。
G3系列机架式服务器不同机型所支持的RAS功能有所差异,表8展示每个机型所对应支持的RAS功能。
G3系列机架式服务器每个机型支持多种CPU型号,支持的CPU型号列表可查看用户指南附录。其中,CPU型号为4XXX或3XXX的,不支持表8中标明“部分CPU型号不支持”的RAS功能。
表8 RAS功能一览表
类型 |
功能名称 |
H3C UniServer R2700 G3 |
H3C UniServer R2900 G3 |
H3C UniServer R4700 G3 |
H3C UniServer R4900 G3 |
H3C UniServer R6900 G3 |
H3C UniServer R4300 G3 |
H3C UniServer R6700 G3 |
H3C UniServer R8900 G3 |
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
||
CPU |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
CPU |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
CPU |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
CPU |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
Memory |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Memory |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Memory |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Memory |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Memory |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Memory |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
||
Memory |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
||
Memory |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Memory |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Memory |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
Memory |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
Intel® UPI |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Intel® UPI |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Intel® UPI |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
Intel® UPI |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
IIO |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
IIO |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
||
IIO |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|||
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
||
System |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
System |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
||
System |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
System |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
System |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
System |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
System |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
部分 CPU型号不支持 |
|
电源 |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
风扇 |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
硬盘 |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
硬盘 |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
存储控制卡 |
Yes(选配电池时) |
Yes(选配电池时) |
Yes(选配电池时) |
Yes(选配电池时) |
Yes(选配电池时) |
Yes(选配电池时) |
Yes(选配电池时) |
Yes(选配电池时) |
|
存储控制卡 |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
存储控制卡 |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
|
HDM |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
功能名称 |
故障检测及校正(包含Socket级别) |
功能说明 |
这个特性涵盖了整个处理器级的故障检测和纠错能力。通过增强Cache错误上报、数据路径奇偶校验保护(DPPP)和地址路径奇偶校验保护(APPP)来提供“数据保护”和“数据完整性”。 |
功能目标 |
保证组件级别的可靠性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
Corrupt Data Containment Mode(Poison Mode) |
功能说明 |
处理器支持Legacy IA-32 MCA Mode和MCACorrupt Data Containment Mode两种模式。其中在传统IA32 MCA模式下,一旦有模块(包括产生错误的模块、传输数据的模块等)检测到不可纠正错误,将直接触发MCE,进行系统复位。而Corrupt DataContainment 模式基于数据的实际使用执行错误处理:错误源头和传输过程中,检测到不可纠正错误的模块并不会直接触发 MCE,而是对数据打上“poison”标记并继续传输,同时触发CMCI中断;最终使用数据的模块可以执行多样化的处理,包括忽略错误(例如屏幕显示某个像素点的错误)、丢弃数据、发起重传、触发MCE等。 |
功能目标 |
增加整个系统的容错能力 |
使用方式 |
默认开启,可以通过 BIOS 设置关闭 |
约束/限制 |
无 |
功能名称 |
Complex Instruction Recovery Improvements |
功能说明 |
处理器的绝大多数复杂指令流是可恢复的。本功能用于当以下两个活动同时发生时,提高系统恢复的概率: · 检测到一个SRAR事件。 · 一个复杂指令正在被处理。 |
功能目标 |
提升系统的可靠性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
Time-out timer Schemes |
功能说明 |
各种子模块内的超时计时器,使故障报告尽可能接近故障源。在G3系列机架式服务器的处理器中,实现了以下6种超时功能: · Core 3-strike · CHA TOR timeout · Intel UPI Link Level Retry timeout · Mesh-to-Memory (M2Mem) Timeout (formerly called CHA BT timeout) · IRP Config_retry_time-out · PCIe port Completion Timeout (CTO) |
功能目标 |
提高了系统的可用性/可维护性。 |
使用方式 |
默认开启,部分可配置 |
约束/限制 |
无 |
功能名称 |
故障上报(MCA、AER)- Core,Uncore,和IIO |
功能说明 |
故障上报包括日志记录和发送错误信号。G3系列机架式服务器主要支持MCA(Machine Check Architecture)和AER(Advanced Error Reporting)两种机制,也支持特定平台的内存和UPI错误汇报机制。 |
功能目标 |
报告服务器内发生的各种类型的故障,并提高平均修复时间(MTTR)。也用于加速故障的调试,特别是在现场的调试 |
使用方式 |
默认开启,不可配置 |
约束/限制 |
无 |
功能名称 |
EMCA Gen1的故障上报(Error reporting through EMCA Gen1) |
功能说明 |
· 针对致命可纠正错误使用SMI和MCE双信号。 · 针对内存可纠正错误选择SMI信号代替CMCI。 · 允许基于DSM的指针增强错误日志。 |
功能目标 |
优化故障上报FFM(优先固件模型) |
使用方式 |
默认关闭,BIOS可配置 |
约束/限制 |
不可与EMCA Gen2同时启用 |
功能名称 |
MCA2.0的故障上报 Error reporting through MCA 2.0 (EMCA Gen2) |
功能说明 |
在EMCA Gen2之前,Legacy IA-32 MCA会直接将错误信号直接发送给OS/VMM,不能很好的利用UEFI固件的错误诊断能力。EMCA Gen2允许固件加强MCA的错误记录能力,当该特性使能时,UEFI-FW SMI handler可以在OS machine check handler读并清除MCA Bank之前读取MCA Bank寄存器和其他错误寄存器。 |
功能目标 |
提供执行基于UEFI固件恢复故障的机制 |
使用方式 |
默认开启,BIOS可配置 |
约束/限制 |
不可与EMCA Gen1同时启用 |
功能名称 |
处理器BIST |
功能说明 |
处理器内部有自检模块,在BIOS启动过程中可以对处理器的每个内核进行自检,并记录自检结果。 |
功能目标 |
检测并发现处理器故障 |
使用方式 |
默认开启,BIOS可配置 |
约束/限制 |
无 |
功能名称 |
基于IOMCA 的故障上报(Error reporting via IOMCA) |
功能说明 |
允许IIO通过MCE发送不可纠正致命和不可纠正非致命错误信号,提升平台的诊断能力。没有该特性,所有的IIO不可纠正错误是通过NMI或者平台特定的采用SMI或者ERROR_N[2:1]的错误handler来处理。 |
功能目标 |
为不可纠正错误提供与MCA对齐的一个统一的错误汇报机制而不依赖NMI |
使用方式 |
默认关闭,BIOS可配置 |
约束/限制 |
无 |
功能名称 |
MCA Bank 故障控制(MCA Bank Error Control) |
功能说明 |
该特性允许BIOS向操作系统隐藏可纠正错误和UCNA错误。既然该类错误已经被硬件修正,可以将一定数量的可纠正错误被视为正常的系统动作。该特性阻止操作系统在BIOS准备暴露该类错误之前采取任何动作。使能后,只有SMM和PECI可以访问该类错误日志。 |
功能目标 |
增强BIOS对故障的控制 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
First Corrected Error Mode of Error Reporting |
功能说明 |
多个可纠正错误被上报时,防止后面更新的错误记录覆盖原始的错误记录。 在可纠正错误突发的情况下,错误处理FW/SW将能在清除日志之前捕获与一个给定错误事件相关联的所有错误日志。在清除错误日志寄存器之前,硬件将不会重写日志寄存器。 |
功能目标 |
提升故障现场识别FRU的能力,增强服务器可用性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
PCIe可纠正错误上报 PCI Express Corrected Error Reporting |
功能说明 |
BIOS可在每个PCIe Root Port设置PCIe可纠正错误的阈值,并实现通过SMI的更完善的可纠正错误报告体系。 |
功能目标 |
实现更完善的可纠正错误上报结构 |
使用方式 |
默认开启,BIOS可配置阈值 |
约束/限制 |
无 |
功能名称 |
可纠正错误阈值(Thresholding for Corrected Errors) |
功能说明 |
该功能的范围为PCIe和UPI链路,控制可纠正错误触发事件的阈值。 当PCIe链路中发生了一定数量的纠正错误时,该特性允许触发SMI。 当启用EMCA Gen2.0时,当UPI链路中发生了一定数量的纠正错误时,该特性允许触发CSMI。 |
功能目标 |
用于当启用固件优先模型(FFM)时,捕获基于阈值的错误日志,用于FRU隔离、PFA和调试 |
使用方式 |
默认开启,BIOS可配置 |
约束/限制 |
无 |
功能名称 |
CSR Error Log Cloaking |
功能说明 |
通常,OS不会从CSR(Control and Status Registers)区域获取错误日志,但是一些用户驱动有可能会获取。但这些错误早就被硬件纠正了,并且我们允许特定等级的错误被视为正常的系统行为。 此功能隐藏部分CSR错误日志寄存器,防止OS对这些寄存器操作,直到BIOS准备好暴露这些错误。 |
功能目标 |
系统开发人员以其基于BIOS的错误处理代码,可以管理系统错误日志捕获和报告,而不受来自OS的错误处理代码的任何干扰,增强服务器的可维护性 |
使用方式 |
默认开启,BIOS可配置 |
约束/限制 |
无 |
功能名称 |
Corrupt Data Containment – Core |
功能说明 |
当检测到硬件层不可纠正错误时,该功能允许恢复系统(包括内存、MLC/LLC缓存在内),可以和非核心的缺陷数据容忍功能联合使用。 如果缺陷数据的接收器是内核(例如,从存储器获取数据),要么数据被丢弃,或者内核触发致命的MCERR或可恢复的MCERR(又称为SRAR事件),从而允许OS尝试恢复系统。 |
功能目标 |
提高系统可靠性 |
使用方式 |
默认开启,BIOS可配置 |
约束/限制 |
无 |
功能名称 |
病毒模式(Viral Mode of error containment) |
功能说明 |
病毒模式是针对致命问题而设计的高级容错特性,用于防止故障问题扩散到非易失性存储设备或网络设备,能使处理器进入病毒模式的错误都是不可纠正错误。 |
功能目标 |
防止故障扩散 |
使用方式 |
默认开启,BIOS可配置 |
约束/限制 |
需要优先使能Poison Mode |
功能名称 |
Advanced Error Detection and Correction (AEDC) |
功能说明 |
AEDC允许使用”residue checking”和奇偶保护技术来侦测故障。故障纠正是通过“Instruction Retry”实现。CE事件会被记录到IFU MCA Bank中。如果重试后不能纠正故障,那么会触发MCERR信号。AEDC不需要额外的SW/OS支持。它依赖当前存在的错误汇报机制。基于AEDC的错误记录和信号触发是通过IFU Machine Check Bank来管理并且默认是关闭的,需要OS/UEFI FW在系统初始化时使能。 |
功能目标 |
AEDC提高了Core内执行引擎中的故障覆盖率 |
使用方式 |
默认关闭 |
约束/限制 |
无 |
功能名称 |
单内存颗粒数据错误纠正(SDDC ,DRAM Single Device Data Corrction) |
功能说明 |
能够纠正一个x4内存颗粒上的多比特错误。SDDC纠正错误采用的是一种”read retry”的方式,即逐个将某一个bit设置为相反的值,然后计算CRC是否匹配成功。 |
功能目标 |
有效应对内存颗粒的硬失效,很大程度上提升内存系统的可用性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
如果内存颗粒硬失效,尽管SDDC可以实现纠错,但内存系统的性能会急剧下降 |
功能名称 |
内存地址校验(Memory Address Parity Protection) |
功能说明 |
RDIMM和LRDIMM都有一个MA-PAR信号线,对Address/Command进行校验。 |
功能目标 |
可以帮助定位内存系统的故障源 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
当前,受处理器平台的限制,仅支持DDR3内存,尚只能做到检错,无法实现纠错 |
功能名称 |
内存数据不规则编码(Memroy Data Scrambling) |
功能说明 |
通过线性移位寄存器对内存数据流进行伪随机编码,平衡0/1分布,降低软错误的发生概率;另外实现内存地址双bit错误检测 |
功能目标 |
通过编码方式,避免高电平和低电平大量集中出现,降低电冲击,增加可靠性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
内存指令式/定期巡检(Memory Demand/Patrol Scrubbing) |
功能说明 |
Demand Scrubbing 是读数据的时候,如果读出数据存在不可纠正的错误,会重新读一次。如果读出的数据存在可纠正的错误,则将纠正后的数据重新写入到内存中。通过重读和及时纠正单bit错误的方式,降低不可纠正错误出现的概率。 Patrol Scrubbing的实现机制:CHA内部有一个SSR引擎(Sparing和Patrol Scrubbing 共用)。 SSR引擎按照设定的频率和步长,在空闲的时候读取内存中的内容,如果读出的数据存在可以纠正的错误,将纠正后的数据重新写入到内存中。通过及时纠正单 bit 错误的方式,降低不可纠正错误出现的概率。 |
功能目标 |
通过重试的方式,降低内存系统出现问题的可能性 |
使用方式 |
默认开启,可以通过BIOS设置 |
约束/限制 |
开启该功能后,即使设置为 MCA Corrupt Data Containment Mode,默认情况下检测到不可恢复错误都会上报MCE中断,会导致单板复位 · 一些没有使用的内存,有可能通过写内存都会检测出错误 · 有一定的功耗增加 |
功能名称 |
内存Rank备用(Memory Rank Sparing) |
功能说明 |
在内存初始化过程中,将每个内存通道选择1个Rank设为备用,当使用过程中预测到某块内存即将出错时可以将要出错的的内存中的数据搬移到备份内存中,避免系统因为遇到不可纠正的错误而宕机,实现过程需要依赖BIOS的配合和芯片组的支持。 |
功能目标 |
有效应对内存颗粒的硬失效,很大程度上提升内存系统的可用性,比SDDC和DDDC增强更大 |
使用方式 |
默认关闭,可以通过BIOS设置开启 |
约束/限制 |
· 每个内存通道会损失1个Rank的内存容量,内存带宽不受影响 · 内存Rank备用特性与内存镜像特性不能同时使用 |
功能名称 |
内存温度调节(Memory Thermal Throttling) |
功能说明 |
在内存条过热情况下,即检测到温度超过设置的阈值时,降低内存读取速度 |
功能目标 |
可以有效防止因为过热问题而引发内存数据错误或者器件损坏,将降低因此产生的宕机风险 |
使用方式 |
默认开启 |
约束/限制 |
发生内存过热后,会不同程度引起内存的性能下降 |
功能名称 |
内存镜像(Memory Mirroring) |
功能说明 |
为内存建立一个镜像副本(mirror),当内存出现错误后,将会使用副本。镜像需要处于同一个处理器的同一个CHA下,无法跨CHA进行。 |
功能目标 |
通过冗余的手段,增加内存系统的可用性 |
使用方式 |
默认关闭,可以通过BIOS设置开启 |
约束/限制 |
· DIMM安装要做到符合Mirror插法要求 · OS下可见的内存容量将只有50% · 内存镜像特性与内存Rank备用特性不能同时使用 |
功能名称 |
Adaptive DDDC - Single Region (ADDDC - SR) |
功能说明 |
在同一Rank内,DDDC可以实现总共两次的内存故障颗粒替换;对于x8颗粒的内存条则不支持此特性 |
功能目标 |
有效应对内存颗粒的硬失效,很大程度上提升内存系统的可用性 |
使用方式 |
默认关闭,BIOS可配置(R6900 G3特定版本默认开启) |
约束/限制 |
· 开启ADDDC功能后,系统即会产生内存性能小幅度降低的现象 · 仅在Lockstep工作模式下支持,而且只有x4内存颗粒的内存有具有该特性 · 如果内存颗粒硬失效,尽管DDDC可以实现纠错,但内存系统的性能会急剧下降 |
功能名称 |
Mem SMBus hang recovery |
功能说明 |
该功能允许BIOS在运行时使用SMI中断去执行SMBus故障修复。服务器的内存控制器可以被配置为在SMBus故障时产生一个SMI中断,中断产生后BIOS SMI处理器将会执行: (1) 保存上次发布的TSOD地址。 (1) 保存当前的TSOD轮询设置和错误恢复设置。 (2) 禁用TSOD轮询和禁用错误恢复。 (3) 程序安全温度。 (4) 保存当前的闭环热节流(CLTT)设置并禁用CLTT。 (5) 触发硬件定时器,激活SMBus的软复位,并启动n ms的周期性SMI。n的值取决于平台。 (6) 在周期性SMI到期时,检查恢复是否已完成并禁用定期计时器。如果恢复未完成,则将再次执行周期性SMI处理程序。 (7) 在SMBus恢复完成后,停用软复位,恢复上述步骤1-5中保存的系统状态。 |
功能目标 |
提供在运行时恢复SMBus故障的方式,提升系统可用性 |
使用方式 |
自动生效,不可关闭 |
约束/限制 |
无 |
功能名称 |
内存可纠正错误上报(Memory corrected error reporting) |
功能说明 |
提供每个Rank基于漏桶算法的可纠正错误计数器与和SMI/NMI/ERROR_N[0]。可根据每个Rank的可纠正错误记录数目,激活各种RAS功能,比如SDC(SR)、ADDDC(MR)+1、SDDC和 Rank Sparing。 |
功能目标 |
提供每个Rank的可纠正错误计数器 |
使用方式 |
默认启动,BIOS可配置阈值 |
约束/限制 |
无 |
功能名称 |
DDR4写数据CRC校验和重试(DDR4 Write Data CRC Check and Retry) |
功能说明 |
基于DDR4规范的写入数据CRC在DRAM设备内进行检查,并将事件发送回CPU/IMC进行重试。DIMM使用PARI告警信号对CRC不匹配的数据匹配进行处理。 当启用时,增加两个额外的bursts(总共10个脉冲串)来传输写入CRC位。该功能改善了主板上的总线瞬态/持久错误的覆盖范围,检测所有的1B、2B、奇数位和垂直列错误。 |
功能目标 |
DDR4写数据CRC保护在写操作期间检测DDR4数据总线故障 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
Address range/partial memory mirroring |
功能说明 |
部分内存镜像模式,BIOS内可以配置Mirror内存的大小。完全镜像模式中的所有错误检测、信令和校正操作均可应用于镜像区域内的部分镜像模式。 |
功能目标 |
用户可以使用部分内存镜像模式保存关键代码或数据 |
使用方式 |
默认关闭,BIOS可配置 |
约束/限制 |
系统不支持将内存模式同时设置为Mirror Mode和Memory Rank Sparing |
功能名称 |
Adaptive DDDC-Multi Regions (ADDDC-MR) |
功能说明 |
在Virtual Lockstep模式下,ADDDC(MR)功能可以修复DRAM颗粒的硬故障。 当Bank/Rank区域粒度下出现了一个硬故障,它将被通过自适应虚拟Lockstep的方式映射出去。ADDDC(MR)+1功能允许两次这样的硬故障,之后可以再纠正一个单bit故障。 |
功能目标 |
处理DRAM内存颗粒故障 |
使用方式 |
默认关闭,BIOS可配置(R6900 G3特定版本默认开启) |
约束/限制 |
需要优先配置为Virtual Lockstep模式。 |
功能名称 |
UPI链路CRC校验 |
功能说明 |
通过对UPI链路上的数据包进行CRC校验,检测发生在UPI链路上的数据错误 |
功能目标 |
增强UPI链路的可靠性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
UPI链路重试 |
功能说明 |
该特性允许当接收端检测到CRC错误时保持链路正常工作。一旦侦测到CRC错误,接收端会向发送端发送一个重试请求。如果CRC错误是由于transient事件引起的,则重新发送的数据将不会再次出错。该特性会重试两次,两次之后还是不行会让物理层重新初始化,初始化还是不行会触发不可纠正错误事件。 |
功能目标 |
通过重试机制可以有效避免由于临时性错误造成的传输数据错误,提高UPI链路的传输可靠性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
UPI Protocol Protection via 32 bit Rolling CRC |
功能说明 |
检查临时数据错误,使用CRC校验两个数据包,并使32位CRC滚动在每条UPI链路。该功能是作为链路协议在硬件内实现的。 |
功能目标 |
通过32位滚动CRC错误检测功能保证数据完整性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
动态减少UPI链路宽度(UPI Dynamic Link width reduction) |
功能说明 |
通过动态调整链路宽度来恢复物理英特尔UPI链路上的一个或多个数据通道的硬故障。如果系统在链路上检测到持续错误,则可以使系统UPI链路宽度减半。 |
功能目标 |
在某些lane中检测到硬故障仍允许系统继续运行,从而提高系统的可用时间和可靠性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
· 如果出现了时钟链路失效,UPI 带宽会下降50% · 降带宽后以后将不再具有再次”容忍失效”的能力 · 建议,客户发现该问题后,有计划安排维护 |
功能名称 |
PCIe链路重建链和恢复(PCI Express Link Retraining and Recovery) |
功能说明 |
根据PCIe Spec3.0中定义的错误条件,CPU会适时启动PCIe链路的重建链功能。 重建链包括将链路训练和状态机LTSSM重置到恢复状态并继续运行。一旦处于恢复状态,如果在再训练序列中检测到进一步的错误,LTSSM将启用速度或带宽劣化。 |
功能目标 |
通过链路操作期间的错误检测和重建链机制来保证PCIe链路的可靠性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
PCIe链路CRC错误检查和重试(PCI Express Link CRC Error Check and Retry) |
功能说明 |
检测CRC错误,如失效则重试的功能。这个特性的要点是保护链路免受EMI、边缘链路、不良连接器、长跟踪长度等引起的信号完整性问题。提供了一种通过重试来检测大部分可纠正错误的机制。 |
功能目标 |
保证低信号完整性的情况下,PCIe链路的可靠性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
PCIe Corrupt Data Containment (Data Poisoning) |
功能说明 |
在将分组转发给下一个代理之前检测到未纠正的错误时,将EP位附加到报头,以在事务层上保持数据的双向完整性。接收器检测到有Poison标记的TLP并将错误事件重定向为一个非致命性的警告(可纠正错误事件),而不是将其作为不可纠正的错误信号发送,避免系统重置。 |
功能目标 |
故障数据出现时标记Poison,使系统继续运行,提高了系统的正常运行时间及可靠性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
PCIe ECRC |
功能说明 |
根据PCIe Gen 3规范实现PCIe端到端CRC。当检测到ECRC错误时,根端口将上报为不可纠正的非致命错误。 |
功能目标 |
ECRC在存储划分中使用,以在两个PCIe终端之间交换数据时实现更高的数据完整性 |
使用方式 |
默认关闭,可以通过BIOS设置开启 |
约束/限制 |
无 |
功能名称 |
PCIe “Stop and Scream” |
功能说明 |
该特性允许当在传出数据中发现poison时禁用PCIe端口,这样可以阻止缺陷数据被不支持“corrupt data containment”的PCIe设备使用。只要IIO的子模块在TX方向侦测到缺陷数据,它会丢弃该数据包,禁用该端口,记录致命错误日志并发送错误信号。 |
功能目标 |
在不兼容PCIe终端的系统中实现高可用性,检测外向方向上的缺陷数据,并在不发送Poison数据的情况下,标记错误。通过识别缺陷数据的精确源和简化修复过程来最小化停机时间 |
使用方式 |
默认关闭,可以通过BIOS设置开启 |
约束/限制 |
若安装了不支持“Poisoned TLP”的PCIe设备,可启用此功能 |
功能名称 |
故障内存隔离(Failed DIMM Isolation) |
功能说明 |
故障管理系统将跟踪可纠正错误的数量,并执行预测性故障分析,在错误严重性变得不可纠正之前提示用户。识别特定失败的DIMM,并通过HDM发出告警,方便用户替换有缺陷的DIMM |
功能目标 |
提升服务器可用性、可维护性 |
使用方式 |
自动生效,不可关闭 |
约束/限制 |
无 |
功能名称 |
带外获取错误日志(OOB access to Error logs) |
功能说明 |
基于HDM的RAS功能。通过PECI接口访问MCA Bank寄存器获取内存错误日志、UPI错误日志和IIO AER 日志。 |
功能目标 |
增强HDM故障管理系统对故障的监控能力 |
使用方式 |
自动生效,不可关闭 |
约束/限制 |
无 |
功能名称 |
Core Disable for FRB(Fault Resilient Boot) |
功能说明 |
在启动时有选择的关核的功能,并允许系统在核失效的情况下启动。平台使用处理器BIST的检测结果判断失效的核,并在随后的启动中禁用或者不映射这个核。UEFI会将受故障影响的核的映射报告给OS。 |
功能目标 |
使系统可以在有故障核的情况下启动,保障服务器可用性 |
使用方式 |
默认开启 |
约束/限制 |
每个CPU至少需要一个可运行的Core |
功能名称 |
Enhanced SMM(ESMM) |
功能说明 |
有多个RAS特性都是通过eMCA Gen2上报故障的,SMM是eMCA Gen2的一个组成部分。本功能通过改进Long flow/blocked 指示器中的线程、目标SMI、SMM转储到内部MSR的状态存储等方式,改进现有的SMM模式。 |
功能目标 |
改进现有的SMM模式,促进通过eMCA Gen2启用错误上报 |
使用方式 |
自动开启,不可关闭 |
约束/限制 |
仅在eMCA模式下启用 |
功能名称 |
故障注入(Error injection capability) |
功能说明 |
BIOS提供故障注入开关,开启该功能后支持通过注入故障检验系统性能。 |
功能目标 |
提供验证RAS功能的能力,保障系统可靠性 |
使用方式 |
默认关闭,可配置启用 |
约束/限制 |
无 |
功能名称 |
MCA Recovery–Execution Path |
功能说明 |
通过软件层辅助服务器从不可纠正的数据错误中恢复。软件层包括OS、VMM、DBMS、应用等,可以帮助系统从硬件层的不可纠正错误中恢复,并且通过CPU 将错误标记为“损坏数据”。 · 如果处理器识别出不能被硬件校正的错误,则处理器标记数据为“损坏数据”,并且将错误事件移交给固件和/或操作系统。 · 如果固件/操作系统具有数据的冗余副本,则它可能能够纠正错误。 · 如果在应用程序空间中发生错误,操作系统可以使用SIGBUS事件向应用程序发出信号,并允许进一步恢复或终止应用程序并保持操作系统运行。 如果内核空间发生错误,操作系统将触发“Kernel panic”。 |
功能目标 |
通过软件层辅助从不可纠正的错误中恢复,提升服务器可用性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
推荐的 OS:Windows 2008 以上,Red Hat Enterprise Linux 6 以上, SUSE Linux Enterprise Server 11 以上 |
功能名称 |
MCA Recovery–Non-execution Path |
功能说明 |
针对一些非执行路径上的不可纠正错误,OS通过特定的处理能够进行恢复或者隔离故障数据。非执行路径包括在内存定期巡检事件以及处理LLC显式回写事务。 当处理器识别到硬件不可纠正错误,将标记错误数据为“corrupted date”,并将错误事件移交给固件或OS。OS将隔离受影响的Page并阻止应用程序使用它,从而让系统恢复正常运行。需要注意的是,如果错误发生在内核空间,OS不能隔离错误的Page,只能记录错误并且继续正常的操作。 |
功能目标 |
通过软件手段增强系统可用性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
推荐的 OS:Windows 2008 以上,Red Hat Enterprise Linux 6 以上, SUSE Linux Enterprise Server 11 以上 |
功能名称 |
MCA 2.0 Recovery(as per EMCA Gen2 architecture) |
功能说明 |
EMCA GE2是一种允许固件拦截通过MCA触发的错误(可纠正和不可纠正错误),启用固件优先模型(FFM)进行错误处理和可能的恢复的功能。 |
功能目标 |
通过EMCA GEN2机制,使软件层帮助从不可纠正数据错误中恢复 |
使用方式 |
默认关闭 |
约束/限制 |
无 |
功能名称 |
Local Machine Check(LMCE) based Recovery |
功能说明 |
LMCE允许将SRAR类型的UCR错误上报事件传递给受影响的逻辑处理器,接收Poison数据。LMCE实现以下功能: · 枚举:通过软件识别支持LMCE的硬件 · 控制机制:UEFI有启用/ 禁用LMCE的能力。要求SW选择进入LMCE。 · LMCE的识别:在MCE传送时,软件能够确定所传递的MCE是否仅针对一个逻辑处理器,并且不会需要全局参与。 |
功能目标 |
通过软件阻止向所有线程广播可恢复错误类型的MCE |
使用方式 |
默认关闭 |
约束/限制 |
必须启用Corrupt Data Containment – Uncore功能 |
功能名称 |
电源N+N冗余,支持热插拔 |
功能说明 |
可以直接由机器后面板进行热插拔。 |
功能目标 |
保证服务器供电系统的可用性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
风扇提供N+1冗余,支持热插拔 |
功能说明 |
风扇支持N+1冗余,即支持单风扇失效。可以直接由机器后面板进行热插拔。 |
功能目标 |
保证服务器散热系统的可用性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
存储控制卡支持 RAID,硬盘支持热插拔 |
功能说明 |
存储控制卡支持RAID 0/1/1 ADM/10/10 ADM/1E/5/50/60,硬盘支持热插拔 |
功能目标 |
保证存储系统的可用性 |
使用方式 |
RAID 组构建需要专门配置 |
约束/限制 |
支持的RAID级别与使用的存储控制卡相关 |
功能名称 |
故障硬盘的定位 |
功能说明 |
可以定位到单个硬盘故障 |
功能目标 |
快速找到故障硬盘 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
掉电保护功能 |
功能说明 |
整机掉电时,能防范数据丢失的能力。在服务器断电的情况下,存储控制卡上的缓存数据在电池的作用下仍能保存。当服务器恢复供电,存储控制卡正常后,会先把缓存中的数据写回硬盘。 |
功能目标 |
防范因异常掉电导致数据丢失 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
由于RAM电池容量限制,而数据又是保存在RAM中,能保护的时长有限,通常是几个小时到几十个小时之间,具体规格由型号决定 |
功能名称 |
硬盘故障监控&恢复功能 |
功能说明 |
识别到物理盘或逻辑盘故障时,能够通过带内/带外通道通知用户: · 带外通过标准SEL事件日志上报故障。 · 标识出各个下挂硬盘的状态。 在已组RAID的情况下,可利用相应RAID的特点,恢复部分硬盘失效导致的问题。 |
功能目标 |
快速识别故障硬盘,防止错误扩展;在部分盘失效时,利用RAID特性来恢复数据 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
存储控制卡自身故障定位 |
功能说明 |
存储控制卡自身故障时,可及时通过各种途径展现出来: · 大多数机型设置有存储控制卡温度传感器,当存储控制卡过温时,可通过传感器上报告警。 · 可通过一键下载功能获取存储控制卡自身的串口日志(仅部分机型支持),及时了解存储控制卡内部的运行状况。 |
功能目标 |
可方便监控存储控制卡运行状态,有效识别存储控制卡故障,加快问题排查 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
提供双带外管理软件双镜像功能 |
功能说明 |
如果HDM启动文件的一个镜像出现错误,系统会自动从另一个镜像实现启动 |
功能目标 |
保证HDM软件的可用性 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
集中式故障管理系统 |
功能说明 |
· 故障管理系统对服务器进行了全面的监控,并且提供了可靠的故障检测和故障预测机制。并通过HDM对用户进行告警,能检测到的故障包括: · CPU硬件故障(CAT ERROR、自检失败、配置错误) · 超温告警(进风口、CPU、内存、系统电源、硬盘) · 主板和板卡电压故障 · 风扇故障 · 系统电源故障(AC/DC输入丢失、高温、电源风扇故障) · DDR3/DDR4内存故障(可纠正ECC错误超门限、高温、配置错误) · 存储系统的故障,包括LSI存储卡、SAS/SATA硬盘故障和逻辑盘异常。 · 系统宕机故障 · 通过系统健康灯来标识系统硬件的监控状态 · 可通过SEL事件日志来识别对应的失效部件 · 可通过SEL事件日志来识别HDM、OS重启的原因 |
功能目标 |
为用户提供一站式的故障管理中心 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
故障处理器的定位 |
功能说明 |
可通过HDM查看事件日志上报的故障处理器的具体槽位 |
功能目标 |
快速找到故障点 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
故障内存条的定位 |
功能说明 |
故障管理系统可以定位故障内存条的具体位置,客户可以通过HDM事件日志告警信息找到故障的内存条 |
功能目标 |
可精确定位故障内存条 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
故障电源的定位 |
功能说明 |
可以通过HDM 事件日志告警信息或者电源指示灯定位至故障的电源 |
功能目标 |
快速找到故障电源 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
故障风扇的定位 |
功能说明 |
可以通过HDM事件日志告警信息定位至故障的风扇 |
功能目标 |
快速找到故障风扇 |
使用方式 |
自动生效,不能关闭 |
约束/限制 |
无 |
功能名称 |
HDM可实现系统软件和固件远程升级 |
功能说明 |
实现远程软件和固件的升级 |
功能目标 |
增加可服务性 |
使用方式 |
自动生效,不能关闭,可以通过HDM升级 |
约束/限制 |
无 |
功能名称 |
HDM提供蓝屏快照功能 |
功能说明 |
用于查看服务器Windows操作系统发生故障重启前自动捕获的蓝屏快照,通过蓝屏快照可对故障进行快速分析。HDM最多可保存十张蓝屏快照,并以快照捕获时间及序号命名。当蓝屏快照超过十张时,新的快照会覆盖最早生成的快照。 |
功能目标 |
客户发现宕机时,可以查看宕机截图辅助故障的定位 |
使用方式 |
默认开启,可以通过HDM设置为关闭 |
约束/限制 |
· 必须先开启KVM服务,本功能才会生效 · HDM最多可保存十张蓝屏快照 |
功能名称 |
HDM 提供录像回放功能 |
功能说明 |
开启服务器的自动录像功能。当服务器操作系统发生崩溃、重置或关机时,系统会自动录制事件发生前的录像。技术人员可以通过服务器操作系统在崩溃、重置或关机前录制的视频,对操作系统崩溃、重置或关机的原因进行分析。 |
功能目标 |
客户需要查看录像时,可以通过HDM的录像回放控制台播放,帮助故障精确定位 |
使用方式 |
默认开启,可以通过HDM设置为关闭 |
约束/限制 |
· 必须先开启KVM服务,该功能才会生效 · 录制视频过程中,必须保持远程控制台处于关闭状态 · 崩溃前录像只支持Windows系统 · 如果事件发生时,操作系统处于休眠状态,查看录像回放时会显示无信号 |
功能名称 |
HDM提供SDS日志 |
功能说明 |
用于收集服务器的SDS日志,SDS日志包括事件日志、存储日志、静态日志和HDM日志。下载SDS日志时,您可以选择下载指定时间段内的SDS日志,也可以下载整个SDS日志。 具有以下亮点: · 携带简易故障定位指南 · 信息明文化方式展现 · 可在带内、带外,通过多种方式来获取 · 每个故障发生时,会记录对应的上下文信息,方便定位 |
功能目标 |
故障数据收集,故障分析,故障诊断,提供精确定位的能力,提升可维护性 |
使用方式 |
默认开启,可以通过HDM下载 |
约束/限制 |
SDS日志无法直接在HDM Web界面上查看,请下载到本地后,通过FIST进行解析 |