购买 AMD Ryzen Threadripper 之前,你应该要先了解什么是 NUMA! - 搜优惠

购买 AMD Ryzen Threadripper 之前,你应该要先了解什么是 NUMA!

08-30 00:00:00
所属:淘宝



▲当年 AMD Athlon X2 利用 Crossbar 将 2 个处理核心和记忆体控制器汇流排串接在一起。

不过这种将各个处理器统一连结至单一汇流排的结构,容易使得多核心多处理器的数量受限,因为单一汇流排频宽有限的关係,效能无法跟随核心或是处理器数量等倍数无限成长,反而会因为汇流排过于忙碌,核心或是处理器没有办法获得所需资料或写回运算结果。

「那就增加汇流排数量吧!」这种简单又暴力的方法早在商业环境行之有年,各位读者们就算没摸过,也应该看过具备 2 组以上处理器插槽的主机板,由于记忆体控制器早已整合进入处理器封装当中,也就意味着该主机板拥有与处理器插槽数量相等的记忆体汇流排,各自管理与控制对应的记忆体,处理器插槽之间再以其它形式的汇流排互通有无。这种架构就可以在增加核心或是处理器数量的同时,也提供同等倍数的汇流排数量,不怕单一汇流排被众多存取指令与资料塞爆。

虽然各个处理器封装内的记忆体控制器各自连结对应的记忆体模组,整体来看还是将所有的记忆体容量视为 1 个可以使用的大区块,只是当 A 处理器插槽内部的处理器核心想要存取 B 处理器插槽连结的记忆体时,会有额外的存取延迟,频宽也不会如存取连结至 A 处理器插槽的记忆体般快速。处理器核心存取记忆体空间会因为远近而有不同的速度,这种架构就称为 NUMA(Non-Uniform Memory Access)非统一记忆体存取;而先前连结至单一汇流排,记忆体空间存取速度一致的架构,称之为 UMA(Uniform Memory Access)统一记忆体存取。

回到 AMD Ryzen Threadripper 的讨论,该处理器内部启用 2 个晶粒,单一晶粒分别连结双通道四组记忆体模组插槽,合併起来就是四通道八组记忆体模组插槽。由于记忆体分属不同的汇流排,所以是 NUMA 架构,具备 2 个节点(1 组汇流排所连结的处理器和记忆体),这在家用市场(或是更精细的说:HEDT 市场)可谓首见。



▲存取由该 Core Complex 连结的记忆体延迟为 78ns,存取另一组时为 133ns。

由于 NUMA 存取不同位置的记忆体会有不同速度的特性,软体(无论是作业系统或是应用程式)必须要特地为 NUMA 最佳化,才可以提供最佳的运作效能。若是程式运作时需要较大的记忆体频宽,则需最佳化成 Distributed Mode,反之对于记忆体存取延迟较为敏感,则变更为 Local Mode。依据 AMD 释出的资料,Ryzen Threadripper 的 Distributed Mode 频宽大约多出 0.56%~21.65%,Local Mode 延迟减少约 23.82%。



▲若是程式运作时对于记忆体延迟较为敏感,需要最佳化成 Local Mode。



▲使用 AIDA64 实际量测 2 种不同记忆体存取模式的频宽和延迟差异。

作业系统部分,家用产品从 Microsoft Windows 7 开始之后的版本就支持 NUMA,Linux kernel 则是从 2.5 版开始提供基础性支持。也就是说现在购买 Ryzen Threadripper 处理器搭配 Windows 10作业系统并没有问题,端看软体应用程式能否针对首次飞入寻常百姓家的 NUMA 最佳化。

延伸阅读

AMD 逐步解开限制,Ryzen 记忆体运作时脉不再卡卡

别对 Intel Kaby Lake-X 处理器有所奢求,X299 晶片组罩门实测给你看

评价本文: 0 0 大家在评论: 0
声明:搜优惠是一家中立的,致力于帮助广大网友在网购时能买到性价比更高商品的分享平台,每天为网友们提供丰富、准确、新鲜的网上商品、特价资讯等信息。本站信息大部分来自于网友爆料,如果您发现了优质的商品或好的价格,不妨爆料给我们吧(谢绝任何商业爆料)!
 
扫码领大礼包
返回顶部