NUMAトポロジーは、モデルのスレッドとアクセラレーターへのデータ供給が、別のソケットに接続されたメモリへ繰り返しアクセスすると、複数モデルのスループットを低下させます。
ホームサーバーのワークフローでは、NUMAトポロジーがインタラクティブな動作とバックグラウンドのリソース使用量の両方を変えることがあります。目に見える影響は、リクエストが複数の処理段階を通過した後にのみ現れるため、1つの平均値だけでは、遅延、品質低下、または障害がどこで始まったのかが隠れてしまいます。転送、計算、ストレージ、アプリケーションの状態を分離すれば、他の条件を同一に保ったまま、この関係を検証できます。
NUMAトポロジーの影響を受ける入力段階
入力段階では、各CPUソケットがローカルメモリへより低いレイテンシでアクセスできます。この段階によって次のコンポーネントが受け取るものが変わるため、観測された結果を最終的なインターフェースやモデルだけに帰することはできません。入力とワークロードを一定に保つことで、この初期の変化を可視化できます。
NUMAメモリポリシーモデルは、この段階を解釈する具体的な方法を提供します。各CPUソケットはローカルメモリへより低いレイテンシでアクセスできます。実用上の価値は、後続のバッファリング、スケジューリング、ストレージ、レンダリングによって似た症状が生じる場合でも、変化した変数をそれらの影響から切り分けられることにあります。
最初の段階が変化すると、バインドされていないプロセスが一方のノードに重みを割り当て、別のノードで実行する可能性があります。その影響は、記事の問いに応じて、レイテンシ、精度、消費電力、容量、または体感の滑らかさとして現れることがあります。しかし因果関係の経路は、最終出力が表示される前から始まっています。
後続段階が変化を引き継ぐ仕組み
バインドされていないプロセスが一方のノードに重みを割り当て、別のノードで実行する可能性があるため、後続の段階ではその変化が維持されたり増幅されたりします。そのため、AI、ストレージ、メディア、または自動化のジョブを同時に実行すると、単一リクエストのベンチマークでは小さく見える影響が増幅されることがあります。アイドル状態のシステムにおける平均値よりも、テールの挙動が重要です。
NUMAローカリティの仕組みは、共有リソース層と結果を結び付けます。バインドされていないプロセスが一方のノードに重みを割り当て、別のノードで実行する可能性があるためです。この層を個別に測定することで、スループット、キャッシュヒット、確認応答、または楽観的なステータス更新を、ユーザーに表示される処理の完了と取り違えるのを防げます。
共有I/Oデバイスは、トポロジー上、特定のノードにより近い位置にあるため、この相互作用は続きます。そのため、同じ主要ハードウェアやネットワーク速度を備えた2台のホームサーバーでも、キューの深さ、データ配置、キャッシュ状態、またはポリシーが異なると、動作が異なることがあります。
NUMAトポロジーにおける実用上の上限
より積極的なチューニングが、必ずしも優れているとは限りません。この場合、キャッシュに収まる小さなモデルでは、リモートメモリのペナルティが現れない可能性があります。NUMAトポロジーの変更が測定可能になる前に、別のボトルネックが上限を決めてしまうこともあります。
リモートメモリアクセスの関係は、想定される仕組みと競合する説明を区別するのに役立ちます。制御されたテストでは、タイトルの変数だけを変更し、元データ、ハードウェア、同時実行数、キャッシュ状態、ソフトウェアのバージョンを固定する必要があります。
キャッシュに収まる小さなモデルでは、リモートメモリのペナルティが現れない可能性があるため、そこが限界点になります。その先でより積極的なチューニングを行っても、タイトルで示された結果を改善しないまま、コスト、リスク、または不安定性が増す可能性があります。
NUMAトポロジーに関するFAQ
NUMAトポロジーが主なボトルネックですか?
必ずしもそうではありません。バインドされていないプロセスが一方のノードに重みを割り当て、別のノードで実行する可能性があり、他の条件を固定した状態でNUMAトポロジーの変更が結果を動かす場合にのみ、それが主なボトルネックになります。出力が変化しない場合は、別の段階が上限を決めています。
キャッシュによってNUMAトポロジーの影響が隠れることはありますか?
はい。ウォームキャッシュ、保持されたセッション、常駐モデル、バッファリングされたメディア、楽観的なインターフェース更新によって、調査対象の段階が迂回されることがあります。コールド実行とウォーム実行は分けて報告してください。この依存関係は、再現可能なホームサーバーのテストで見える状態に保つ必要があります。
どのNUMAトポロジーの指標が最も重要ですか?
有用な測定値は、ローカル帯域幅、リモートアクセス、モデルスループット、p95レイテンシです。平均値には、テールレイテンシ、エラー、品質、またはリソースコストを組み合わせる必要があります。そうしなければ、より滑らかに見える結果を、より優れたシステムと誤認する可能性があります。
NUMAトポロジーの制御テストを実行する
代表的なワークロードを作成し、NUMAトポロジーを変更する前に、ローカル帯域幅、リモートアクセス、モデルスループット、p95レイテンシを記録します。コールド試行とウォーム試行を実行し、現実的な同時実行数を含め、すべての比較で同じデータ、バージョン、ハードウェア、ユーザーに表示される成功基準を維持してください。
NUMAトポロジーに関連する仕組みを使って、テスト前に予想される方向を定義します。一度に1つの変数だけを変更し、中央値とテールの挙動を記録し、運用上の境界を結果に含めるため、失敗または性能が低下したケースも残してください。
測定されたメリットが繰り返し試行でも持続し、示された境界が許容範囲内にある場合にのみ、その変更を採用してください。別の段階が支配的である場合は、相関から因果関係を推測するのではなく、NUMAトポロジーを変更せず、その競合するボトルネックを検証してください。
テック&AIハブ
もっと読む

ローカルLLMはプロセスの再起動後に生成を再開できますか?
LLM生成の再開についてのメカニズム優先の説明、共有リソースにおけるトレードオフ、クエリ・ファンアウトに関する3つのFAQ、そして実践的な検証プロトコル。

ホームサーバーは同じ内蔵GPUで埋め込み生成と動画トランスコードを実行できますか?
共有 iGPU の埋め込みとトランスコーディングについて、仕組みを第一に説明し、共有リソースのトレードオフ、クエリファンアウトに関する3つのFAQ、実践的な検証方法を紹介します。

アクセストークンの有効期間はセキュリティと家庭内の手間にどのような影響を与えるか?
アクセストークンの有効期間について、仕組みを重視した説明、共有リソースのトレードオフ、クエリファンアウトに関する3つのよくある質問、そして実践的な検証手順。

