非统一内存访问架构(英语:Non-uniform memory access,简称 NUMA)是一种为多处理器的电脑设计的内存架构,内存访问时间取决于内存相对于处理器的位置。

支持2~8路 物理CPU 直接互联,在Windows/Linux操作系统中视为NUMA架构的CPU物理核心被视为统一多核心架构,不需要程序猿熬秃头写分布式计算程序,不需要开发做专门的应用适配(极致性能追求的程序可以考虑对NUMA CPU/进程进行亲和度适配)。

在NUMA架构支持下,双路服务器的CPU计算能力为最高桌面家用平台CPU性能的3~6倍。Cinebench R23 跑分在3万分以上均为服务器CPU,或者服务器CPU同一款晶圆,只是封装后NUMA功能,打个W标(Workstation)的工作站CPU。家用桌面CPU目前无法突破3万分大关。
第二,服务器CPU拥有超强的内存控制器,宛如50吨泥头重卡
内存ECC校验/超大容量支持,持久化内存支持(Intel Optane技术)。服务器的CPU封装尺寸非常大,目前AMD EPYC和Intel Xeon服务器CPU都是大半巴掌那么大。

通过6/8/12通道IMC内存控制器,REG寄存器等服务器黑科技支持,加上按照1:8内存颗粒数量配置ECC。目前单服务器CPU内存控制器支持2TB以上的JEDEC 3200AA DDR4 REG ECC RAM内存。自2022年之后将会出现DDR5 REG ECC 服务器内存将会上市。

家用级的CPU双/4通道内存带宽目前是50~100GiB/s,服务器CPU的8通道内存带宽为180GiB~500GiB/s,家用CPU哪怕用DDR5跨级打服务器CPU DDR4内存,带宽性能相差依然超过2倍的水平。等今年之内DDR5的服务器CPU上市,内存性能差距会拉大到4倍以上。对游戏性能至关重要的内存延迟指标,家用级CPU多为40~60ns,服务器CPU因为Mesh总线(Intel)和IODIE(AMD)内存延迟平均为80~100ns,则为家用级CPU更优,所以要打电竞类游戏请不用怀疑选家用CPU。
第三海量PCle通道支持
每一块服务器CPU拥有不低于48条PCIe 4.0通道,因此可以安装3张 PCIe显卡。当使用双路或者降速到PCIe 3.0/4.0x8 安装 8 张独立显卡进行CUDA/ROCm显卡异构计算加速。

在安装NVMe固态盘方面,服务器CPU每一路CPU最少可以安装12块PCIe 3.0/4.0x4 NVMe SSD,双路服务器则可以轻松安装24块PCIe 3.0/4.0x4 U.2 NVMe固态硬盘。
第四、超强的容错能力
服务器架构CPU和对应架构具有容错和纠错能力,在内存故障的情况下,还能支持持续运行。但是性能会有一定程度的下降。
Intel从Xeon 服务器CPU 中增加了一种机制,称为MCA——Machine Check Architecture,它用来检测硬件错误,比如ECC错误等。 这套系统通过一定数量的MSR来实现,这些MSR分为两个部分,一部分用来进行设置,另一部分用来描述发生的硬件错误。当CPU检测到不可纠正的MCE时,就会触发#MC,通常软件会注册相关的函数来处理#MC,在这个函数中会通过读取MSR来收集MCE的错误信息,然后重启系统。当然由于发生的MCE可能是非常致命的,CPU直接重启了,没有办法完成MCE处理函数;甚至有可能在MCE处理函数中又触发了不可纠正的MCE,也会导致系统直接重启。
当然CPU还会检测到可纠正的MCE,当可纠正的MCE数量超过一定的阈值时,会触发CMCI,此时软件可以捕捉到该中断并进行相应的处理。CMCI是在MCA之后才加入的,算是对MCA的一个增强,在此之前软件只能通过轮询可纠正MCE相关的MSR才能实现相关的操作。例如答主的量化交易服务器曾经遇到REG ECC内存稳定性问题。此时这台服务器并不会因为内存出错而蓝屏或者重启,它会通过管理软件报警,它使用了超微(Supermicro) X12SSL主板,超微主板内建的BMC管理软件此时记录下内存报错的情况。

换成PC端CPU的机器,碰上严重内存错误,早就蓝屏了。

转自超微服务器公众号