非統一記憶體存取架構

非統一內存訪問架構(英語:non-uniform memory access,簡稱NUMA)是一種為多處理器的電腦設計的內存架構,內存訪問時間取決於內存相對於處理器的位置。在NUMA下,處理器訪問它自己的本地內存的速度比非本地內存(內存位於另一個處理器,或者是處理器之間共享的內存)快一些。

非統一內存訪問架構的特點是:被共享的內存物理上是分布式的,所有這些內存的集合就是全局地址空間。所以處理器訪問這些內存的時間是不一樣的,顯然訪問本地內存的速度要比訪問全局共享內存或遠程訪問外地內存要快些。另外,NUMA中內存可能是分層的:本地內存,群內共享內存,全局共享內存。

NUMA架構在邏輯上遵循對稱多處理(SMP)架構。它是在二十世紀九十年代被開發出來的,開發商包括Burruphs(後來的優利系統),Convex Computer(後來的惠普),意大利霍尼韋爾信息系統(HISI)(後來的Group Bull),Silicon Graphics公司(後來的硅谷圖形),Sequent電腦系統(後來的IBM),EMC,Digital(後來的Compaq,現惠普)。這些公司研發的技術後來在類Unix操作系統中大放異彩,並在一定程度上運用到了Windows NT中。

首個基於NUMA的Unix系統商業化實現是對稱多處理XPS-100系列服務器,它是由VAST公司的Dan Gielen為HISI設計。這個架構的巨大成功使HISI成為了歐洲的頂級Unix廠商。

AMD在OpteronEPYC處理器中實現了基於HyperTransportInfinity Fabric的NUMA。Intel在Xeon處理器中實現基於QPI的NUMA。

Linux內核2.5包含了基本的NUMA支援。

Windows Server 2008 R2Windows 7支援NUMA。

一致性高速緩存非均勻存儲訪問模型

一致性高速緩存非均勻存儲訪問模型(CC-NUMA):它最大的特點是,每一個節點是一個對稱多處理機(SMP),實際上是一個分布式共享存儲處理機(DSM)多處理機系統。在商業中,大多數訪存都在本地內存中進行,而網絡上傳輸的數據大多是用於高速緩存的無效性。

參閱