diff --git a/commodity-hardware-today.md b/commodity-hardware-today.md index 1d01c21..e7f067e 100644 --- a/commodity-hardware-today.md +++ b/commodity-hardware-today.md @@ -34,7 +34,7 @@ Red Hat 在 2007 年預測,未來大多數資料中心的「標準建構元件 幾個瓶頸立刻在這種設計中顯現出來,其一涉及裝置對 RAM 的存取。 在早期的個人電腦中,所有裝置 (無論在南橋還是北橋上) 與 RAM 的通訊都必須經過 CPU,這對整體系統效能產生負面影響。 -為解決這個問題,一些裝置開始支援直接記憶體存取 (Direct Memory Access,簡稱 DMA),後者允許裝置藉由北橋的幫助, +為解決這個問題,一些裝置開始支援直接記憶體存取 (Direct Memory Access,簡稱 DMA)。DMA 允許裝置藉由北橋的幫助, 在不需要 CPU 介入 (及相應的效能成本) 的情況下,直接儲存和接收 RAM 中的資料。 現今所有連接到匯流排上的高效能裝置都可使用 DMA,儘管這大幅減輕 CPU 的工作負擔,但這也引起北橋頻寬的競爭, 因為 DMA 請求與 CPU 對 RAM 存取的競爭。因此,這個問題必須納入考慮。 diff --git a/commodity-hardware-today/dram-access-technical-details/memory-types.md b/commodity-hardware-today/dram-access-technical-details/memory-types.md index c8c483a..090248c 100644 --- a/commodity-hardware-today/dram-access-technical-details/memory-types.md +++ b/commodity-hardware-today/dram-access-technical-details/memory-types.md @@ -146,7 +146,7 @@ DDR3 模組的記憶單元陣列會以外部匯流排的四分之一速度運轉 所有的 DDR 記憶體都有個問題:匯流排頻率的提升,會使得建立平行資料匯流排變得困難。DDR2 模組有 240 根針腳。必須要規劃所有連結到資料與位址針腳的佈線,以讓它們有大略相同的長度。還有個問題是,假如多過一個 DDR 模組被菊花鏈結(daisy-chain)在同一條匯流排上,對於每個附加的模組而言,訊號會變得越來越歪曲。DDR2 規範只允許在每個匯流排(亦稱作通道)上有二個模組,DDR3 規範在高頻時只能有一個。由於每個通道有 240 根針腳,使得單一北橋無法合理地驅動多於二個通道。替代方式是擁有外部的記憶體控制器(如圖 2.2),但這代價不小。 -這所代表的是,商用主機板受限於至多持有四個 DDR2 或 DDR3 模組。這大大地限制一個系統能夠擁有的記憶體總量。即使是老舊的 32 位元 IA-32 處理器都能擁有 64GB 的 RAM,即使對於家用,記憶體需求也在持續增長,所以必須作點什麼。 +這所代表的是,商用主機板受限於至多持有四個 DDR2 或 DDR3 模組。這大大地限制一個系統能夠擁有的記憶體總量。即使是老舊的 32 位元 IA-32 處理器都能擁有 64GB 的 RAM,即使對於家用,記憶體需求也在持續增長,所以必須做點什麼。 一個解決辦法是將記憶體控制器加到每個處理器中,如同第二節所述。AMD 的 Opteron 系列就是這麼做的,Intel 也將以他們的 CSI 技術來達成。只要處理器所能使用的、適當的記憶體容量都能被連接到單一處理器上,這會有所幫助。在某些情況下並非如此,這個設置會引入 NUMA 架構,伴隨著其負面影響。對某些情況來說,則需要另外的解法。 diff --git a/commodity-hardware-today/ram-types.md b/commodity-hardware-today/ram-types.md index e996494..84c6058 100644 --- a/commodity-hardware-today/ram-types.md +++ b/commodity-hardware-today/ram-types.md @@ -1,6 +1,6 @@ # 2.1. RAM 的種類 -這些年來,已經有許多不同種類的 RAM,而每種類型都各有 ── 有時是非常顯著的 ── 差異。只有歷史學家會對那些較老舊的類型有興趣。而我們將不會探究它們的細節。我們將會聚焦於現代的 RAM 類型;我們僅會觸及其問題的表面,探究系統核心或是應用程式能透過其效能特性看見的一些細節。 +這些年來,已經有許多不同種類的 RAM,而每種類型有時會出現非常顯著的差異。只有歷史學家會對那些較老舊的類型有興趣。而我們將不會探究它們的細節。我們將會聚焦於現代的 RAM 類型;我們僅會觸及其問題的表面,探究系統核心或是應用程式能透過其效能特性看見的一些細節。 第一個有趣的事情是,圍繞於在同一台機器中會有不同種類的 RAM 的原因。更具體地說,為何既有靜態 RAM(Static RAM,SRAM[^5])又有動態 RAM(Dynamic RAM,DRAM)。前者更加快速,而且提供了相同的功能。為何一台機器裡的 RAM 不全是 SRAM?答案是 ── 也許正是你所預期的 ── 成本。生產與使用 SRAM 比起 DRAM 都更加昂貴。這二個成本因素都很重要,而且後者變得越來越重要。為了瞭解這些差異,我們要稍微研究一下 SRAM 與 DRAM 儲存的實作方式。