SMP架構在x86系統裡面一直是令人又愛又恨又頭痛的產品, 價格上比Power系統的便宜, 普及的Windows與Linux作業系統亦可以降低使用者的排斥感. 但是由於x86本身的系統就不易實現兩個CPU以上的SMP架構, 使得Intel只能靠運算速度以及多核的CPU的相對優勢守住半邊天, 而不被AMD打的毫無還手之力.
SMP架構在設計上有幾個需要注意的地方, 當然也是我們用來辨別SMP架構的主要方法
CPU一定要有支援APIC(Advanced Programmable Interrupt Controller)的功能, 這個功能主要有兩個目的, 第一個是控制IRQ(Interrupt ReQuest)的分配, 可以把IRQ從傳統的16個增加到24個. 不知道IRQ是什麼的請看這邊.
第二個是管理CPU與CPU之間的通訊, 如果主機板跟CPU上的APIC有出現相容性的問題, 多CPU架構下的運作有時候會比單獨使用一個CPU還要慢的
CPU們肯定要是相同的產品型號(也就是要同一批生產出來的CPU). 因為SMP架構裡, CPU與CPU之間必須是有相同的運作頻率, 不然系統可能根本是開不起來的. 為什麼要用同一批生產出來的CPU們呢? 因為不同批生產出來的CPU們, 彼此間多少還是會有些差距, 小小的不同可能就會造成系統的不穩定的.
記憶體們也是要用相同品牌, 相同型號, 相同數量的配置. 不然系統沒事當機一下, 後續要處理的問題就很讓人頭痛了.