2台の異なるコンピューターに2つの同じRAMをインストールしていますが、2台でdmidecode --type memory
を実行すると、2つのRAMの値が異なることがわかりました。なぜそうなのか、疑問に思っています。
Handle 0x0048, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0044
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 16384 MB
Form Factor: DIMM
Set: None
Locator: ChannelB-DIMM2
Bank Locator: BANK 3
Type: DDR4
Type Detail: Synchronous
Speed: 2133 MHz
Manufacturer: Corsair
Serial Number: 00000000
Asset Tag: 9876543210
Part Number: CMK32GX4M2B3000C15
Rank: 2
Configured Clock Speed: 2133 MHz
Minimum Voltage: Unknown
Maximum Voltage: Unknown
Configured Voltage: 1.2 V
Handle 0x0063, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0058
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 72 bits
Size: 16384 MB
Form Factor: DIMM
Set: None
Locator: DIMM_D1
Bank Locator: NODE 1
Type: DDR4
Type Detail: Synchronous
Speed: 2133 MHz
Manufacturer: Corsair
Serial Number: 00000000
Asset Tag: DIMM_D1_AssetTag
Part Number: CMK32GX4M2B3000C15
Rank: 2
Configured Clock Speed: 2666 MHz
Minimum Voltage: Unknown
Maximum Voltage: Unknown
Configured Voltage: Unknown
通常、AがBank Locator
で、BがBANK 3
であるNODE 1
値。それらの値はどういう意味ですか?そして、これらの異なるロケーターはgpu-cpuデータ転送に影響しますか?システムBは実際にこの問題に直面しています 私の別の質問を参照してください。
システムA: Asus Z170-P 、 i7 6700T 、32GB RAM、GTX1080。
システムB: Asus X99 E-WS 、 i7 5930K 、64G RAM、GTX1080。(問題1)
私のRAMはCorsairDDR4 3000MHzCMK32GBX4M2B3000C15です
Bank Locator:BANK-は特定のスロット(3)のメモリモジュールを意味します。
バンクロケーター:ノード1-バンクまたはバンクのクラスター(デュアルチャネルなど)にすることができます
ノードは、バンク上の単一のRAMモジュールよりも多くの帯域幅を持つことができます。
ノードの概念(DMAゾーン、通常ゾーン、HighMemゾーンなどのゾーンと呼ばれるいくつかのブロックに分割されている)は、Linuxがページを割り当てるときにノードローカル割り当てポリシーを使用して実行中のCPUに最も近いノードからメモリを割り当てます。プロセスは同じCPUで実行される傾向があるため、現在のノードのメモリが使用される可能性がはるかに高くなります。ノードはカーネルのinit_bootmem_core()
関数によって初期化されます。 。
追記:NUMAアーキテクチャでは、NodeはCPUとメモリの組み合わせを指します。