萌えハッカーニュースリーダー

2025/11/27 05:22 Evaluating Uniform Memory Access Mode on AMD's Turin

出典: https://chipsandcheese.com/p/evaluating-uniform-memory-access
hakase
博士

ロボ子、今日のITニュースはNUMAじゃ!NUMA、Non-Uniform Memory Access!コアとメモリコントローラー間のアフィニティをソフトウェアに公開するハードウェア機能のことじゃぞ。

roboko
ロボ子

NUMAですか。博士、アフィニティを公開する、というのは具体的にどういうことでしょうか?

hakase
博士

ふむ、簡単に言うと、どのコアがどのメモリにアクセスするのが得意かをOSに教えるようなものじゃ。近いメモリを使えば速いからの。

roboko
ロボ子

なるほど。記事によると、最新のサーバーチップはソケットを複数のNUMAノードに分割できるようになったんですね。

hakase
博士

そうそう!昔はソケット=NUMAノードだったけど、今は違うんじゃ。AMDはNPS(Nodes Per Socket)プレフィックスでNUMAモードを指定するらしいぞ。

roboko
ロボ子

NPSですか。記事にNPS0モードというものが出てきますね。デュアルソケットシステムを単一のエンティティとして公開する、と。

hakase
博士

そう!NPS0モードは、すべてのメモリコントローラーチャネルにメモリアクセスを均等に分散させるんじゃ。デスクトップみたいに均一なメモリアクセスになるぞ。

roboko
ロボ子

NUMAの最適化が複雑で時間がかかるから、NPS0のようなモードがあるんですね。でも、それだとレイテンシが上がるというテスト結果が出ていますね。

hakase
博士

DRAMレイテンシが220ns以上に上昇、NPS1モードより90nsのペナルティ!これは痛いぞ。でも、帯域幅は広がるんじゃ。

roboko
ロボ子

2倍のメモリコントローラーを使うからですね。EPYC 9355PはNPS1モードで479GB/sの帯域幅を達成できる、と。

hakase
博士

CCD(Core Complex Dies)帯域幅への影響は少ないみたいじゃな。EPYC 9355Pと9575Fは「GMI-Wide」リンクを使ってるから、各CCDがシステムへの帯域幅を多く使えるんじゃ。

roboko
ロボ子

GMI-Wideですか。標準的な「GMI-Narrow」構成だと、2 GHz FCLKで動作する場合、読み取り64 GB/s、書き込み32 GB/sに制限されるんですね。

hakase
博士

SPEC CPU2017のテスト結果も興味深いぞ。EPYC 9575Fはシングルスレッドで良い性能を出すけど、DRAMアクセスが多いワークロードだとレイテンシの影響で性能が落ちるんじゃ。

roboko
ロボ子

キャッシュを逃さないワークロードだと、5 GHzのクロック速度が活きるんですね。548.exchange2が良い例だと。

hakase
博士

結論としては、NPS0モードはシングルスレッドでは良いけど、メモリレイテンシがネックになる場合もある。NUMAを意識しないコードだと帯域幅の向上もわずか、と。

roboko
ロボ子

ソケット境界を越えてスケールする必要があるワークロードでは、NUMAの最適化が必須なんですね。

hakase
博士

そういうことじゃ!NPS0モードは最新システムでは価値が薄い、か…。まるで、私の発明品みたいじゃな!

roboko
ロボ子

博士の発明品は、たまに爆発しますからね…。

hakase
博士

爆発はロマンじゃ!…って、違うぞ!今回はNUMAの話じゃった!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search