非均勻訪存模型

非統一內存訪問架構 （ 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在Opteron 、 EPYC處理器中實現了基於HyperTransport 、 Infinity Fabric的NUMA 。 Intel在Xeon處理器中實現基於QPI的NUMA 。 Linux內核 2.5 包含了基本的NUMA支援 。 Windows Server 2008 R2 、 Windows 7支援NUMA 。