如何在 Linux 中取得記憶體通道(單通​​道、雙通道等)類型?

如何在 Linux 中取得記憶體通道(單通​​道、雙通道等)類型?

我想知道 Linux 中我的記憶體通道是什麼類型,單通道還是雙通道等等。

  1. 我嘗試透過檢查 /proc 檔案系統找到它,但沒有成功。進而
  2. 我用dmidecode取得系統訊息,查了一下,也沒找到。

我怎麼才能得到它?

答案1

dmidecode在輸出中搜尋Interleaved Data Depth.雙頻道記憶體的交錯深度為 2。

答案2

人們給出「交錯數據深度」作為答案是不正確的。交錯數據深度要么不是正確的指標,要么經常被錯誤報告(如果有報告的話)。

取得您正在使用的頻道數量的簡單方法是執行以下操作:

sudo dmidecode -t 17 | awk 'BEGIN { FS=":"; OFS="\t" } /Size|Channel/ { line = (line ? line OFS : "") $2 } /^$/ { print line; line="RAM" }' | grep -iv 'no'

樣本輸出(雙通道):

RAM  32 GB   ChannelA-DIMM0
RAM  32 GB   ChannelB-DIMM0

在同一台機器上,讓我們檢查交錯資料深度:

sudo dmidecode | grep Interleaved

輸出:

Interleaved Data Depth: 1
Interleaved Data Depth: 1

在同一台機器上也透過 CPU-Z 在 Windows 中進行了驗證。根據記憶,逐字稿:雙通道

因此交錯資料深度不正確,但我們可以輕鬆檢查我們的通道(A、B、C、D 等)。

答案3

通道不會告訴您它是否以雙通道模式運行,它只會告訴您哪個通道正在使用記憶體模組

這是我嘗試讓 2x8GB + 4x4GB DIMM 在我的 x79 主機板上工作後的輸出

RAM  8192 MB     ChannelA_Dimm1  ChannelA    ChannelA_Dimm1_AssetTag
RAM  4096 MB     ChannelA_Dimm2  ChannelA    ChannelA_Dimm2_AssetTag
RAM  8192 MB     ChannelB_Dimm1  ChannelB    ChannelB_Dimm1_AssetTag
RAM  4096 MB     ChannelB_Dimm2  ChannelB    ChannelB_Dimm2_AssetTag
RAM  4096 MB     ChannelD_Dimm1  ChannelD    ChannelD_Dimm1_AssetTag

您無法從中判斷它們是在單通道、雙通道還是三通道模式下運作。

相關內容