技術 > cpu內部的內存控製器
目錄
No. 1
  許多應用程序擁有更為復雜的讀取模式(幾乎是隨機地,特別是當cache hit不可預測的時候),並且沒有有效地利用帶寬。典型的這類應用程序就是業務處理軟件,即使擁有如亂序執行(out of order execution)這樣的cpu特性,也會受內存延遲的限製。這樣cpu必須得等到運算所需數據被除數裝載完成才能執行指令(無論這些數據來自cpu cache還是主內存係統)。當前低段係統的內存延遲大約是120-150ns,而cpu速度則達到了3ghz以上,一次單獨的內存請求可能會浪費200-300次cpu循環。即使在緩存命中率(cache hit rate)達到99%的情況下,cpu也可能會花50%的時間來等待內存請求的結束- 比如因為內存延遲的緣故。
  你可以看到opteron整合的內存控製器,它的延遲,與芯片組支持雙通道ddr內存控製器的延遲相比來說,是要低很多的。英特爾也按照計劃的那樣在處理器內部整合內存控製器,這樣導致北橋芯片將變得不那麽重要。但改變了處理器訪問主存的方式,有助於提高帶寬、降低內存延時和提升處理器性
No. 2
  內存控製器(Memory Controller)是計算機係統內部控製內存並且通過內存控製器使內存與CPU之間交換數據的重要組成部分。內存控製器决定了計算機係統所能使用的最大內存容量、內存BANK數、內存類型和速度、內存顆粒數據深度和數據寬度等等重要參數,也就是說决定了計算機係統的內存性能,從而也對計算機係統的整體性能産生較大影響。
  CPU內存集成內存控製器有很多優點 比較突出的是三點:
  第一 傳統的計算機係統其內存控製器位於主板芯片組的北橋芯片內部,CPU要和內存進行數據交換,需要經過“CPU--北橋--內存--北橋--CPU”五個步驟,在此模式下數據經由多級傳輸,數據延遲顯然比較大從而影響計算機係統的整體性能;而AMD的K8係列CPU(包括Socket 754/939/940等接口的各種處理器)內部則整合了內存控製器,CPU與內存之間的數據交換過程就簡化為“CPU--內存--CPU”三個步驟,省略了兩個步驟,與傳統的內存控製器方案相比顯然具有更低的數據延遲,這有助於提高計算機係統的整體性能。
  第二 CPU內部集成內存控製器可以使內存控製器同頻於CPU頻工作(現在CPU工作頻率一般都在2G以上) 而北橋的內存控製器一般就要大大低於CPU工作頻率 係統延時就更加少
  第三 CPU內部集成內存控製器 由於內存數據不經過北橋有效的降低了北橋的工作壓力為北橋減低可負擔
  CPU內部集成內存控製器是K8 CPU的一大設計亮點 就算是現在的扣肉雖然在總體性能上遠遠超過K8 但是在內存性能上扣肉相對於K8來說還是望塵莫及
  許多應用程序擁有更為復雜的讀取模式(幾乎是隨機地,特別是當cache hit不可預測的時候),並且沒有有效地利用帶寬。典型的這類應用程序就是業務處理軟件,即使擁有如亂序執行(out of order execution)這樣的CPU特性,也會受內存延遲的限製。這樣CPU必須得等到運算所需數據被除數裝載完成才能執行指令(無論這些數據來自CPU cache還是主內存係統)。當前低段係統的內存延遲大約是120-150ns,而CPU速度則達到了3GHz以上,一次單獨的內存請求可能會浪費200-300次CPU循環。即使在緩存命中率(cache hit rate)達到99%的情況下,CPU也可能會花50%的時間來等待內存請求的結束- 比如因為內存延遲的緣故。
  你可以看到Opteron整合的內存控製器,它的延遲,與芯片組支持雙通道DDR內存控製器的延遲相比來說,是要低很多的。英特爾也按照計劃的那樣在處理器內部整合內存控製器,這樣導致北橋芯片將變得不那麽重要。但改變了處理器訪問主存的方式,有助於提高帶寬、降低內存延時和提升處理器性
  傳統的計算機係統其內存控製器位於主板芯片組的北橋芯片內部,CPU要和內存進行數據交換,需要經過“CPU--北橋--內存--北橋--CPU”五個步驟,在此模式下數據經由多級傳輸,數據延遲顯然比較大從而影響計算機係統的整體性能;而AMD的K8係列CPU(包括Socket 754/939/940等接口的各種處理器)內部則整合了內存控製器,CPU與內存之間的數據交換過程就簡化為“CPU--內存--CPU”三個步驟,省略了兩個步驟,與傳統的內存控製器方案相比顯然具有更低的數據延遲,這有助於提高計算機係統的整體性能。