質問

IntelのNehalem MicroarchitectureとTriple Channel RAMに基づいて、デュアルプロセッサを備えたワークステーションで32ビットWindows XPを実行する予定です。 XPは4 GBのRAMに制限されていますが、私の理解では、4 GB以上がインストールされて機能しますが、4 GB(またはわずかに少ない)しか露出しません。

私の質問は、6 GBのRAMが6つの1 GBモジュールにインストールされていると仮定して、どの物理4 GBが実際にアドレス空間にマッピングされますか?

特に:

  • すべてのメモリチャネルを利用して、6つの1 GBすべてのモジュールを使用しますか? (私の推測はイエスであり、グループ内の個々のモジュールへのマッピングがハードウェアで発生することです。)

  • 2 GBのアドレススペースを2つのNUMAノードのそれぞれにマッピングしますか(各プロセッサに独自のメモリインターフェイスがあるため)、または1つのプロセッサが3 GBのRAMに迅速にアクセスできますが、もう1つは1 GBしかありませんか?

ありがとう!

役に立ちましたか?

解決

この質問はで回答されました スーパーユーザー. 。ここには他の回答がないので、関連する情報を簡単に見つけることができるように、私自身の質問に答えています。

質問が尋ねられて以来、私も出会った このブログ投稿 Mark Russinovichによると、Windows XPカーネルがメモリを処理する方法を説明します。

結論として、何が起こるかは、カーネルがPAEを認識しているにもかかわらず、すべての物理メモリアドレスを32ビットに切り捨て、最低のもののみを意味すると思われます。 物理的 4 GBのRAMが使用されます。これは、ハードウェアからメモリモジュールによってマッピングされ、最初のモジュールトリプレット全体(合計3 GB)と2番目のトリプレットの3分の1(3つのモジュールすべてに広がる - 合計1 GB)に対応します。 。

したがって、すべてのメモリチャネルが悪用されますが、メモリの量はnumaノード間でバランスが取れません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top