This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
XenServer 9 における NUMA の最適化
概要
Non-Uniform Memory Access (NUMA) は、メモリが特定の CPU ソケットに接続されたノードに分割されるマルチプロセッサメモリアーキテクチャです。ローカル NUMA ノード上のメモリにアクセスする方が、リモートノード上のメモリにアクセスするよりもレイテンシが低くなります。VM の vCPU とそのメモリが同じ NUMA ノードに配置されている場合、ワークロードはメモリアクセスレイテンシを低減し、パフォーマンスを向上させることができます。
UMA と NUMA の比較
- UMA (Uniform Memory Access) ホストは、単一の物理メモリノードを CPU に提示します。
- NUMA ホストは複数のメモリノードを公開します。CPU は、リモートノードからメモリにアクセスするよりも、ローカルノードからメモリにアクセスする方がレイテンシが低くなります。
最適化された NUMA 配置の利点
- アプリケーションの応答性とワークロードのスループットが向上します。
- ホストあたりの VM 密度が高くなり、追加のホストの必要性とインフラストラクチャ全体のコストが削減されます。
制限事項
- ホスト上の単一の NUMA ノードに VM 用の十分な空きメモリがない場合、XS9 は VM を起動できるように、複数のノードにメモリを分散させて VM を起動します。
- メモリが分散されている場合、VM は複数の NUMA ノード (
NUMA nodes > 1) を使用し、NUMA 最適化されていません。 - パフォーマンスの向上は、ワークロード、ベンチマーク、CPU タイプによって異なります。
監視とトラブルシューティング
VM ごとの RRD メトリック (デフォルトでは無効) は、NUMA の動作と vCPU スケジューリングの監視に役立ちます。
メトリック
-
NUMAノード (
numa_nodes): VMが使用するNUMAノードの数。値1は最適化されていることを示し、1より大きい値は最適化されていないことを示します。 -
メモリNUMAノードX (
memory_numa_node_X): 物理NUMAノードXから割り当てられたVMメモリの量。値0はそのノードからのメモリがないことを意味します。 -
vCPU実行可能(任意) (
runnable_any): 少なくとも1つのvCPUが準備完了であるにもかかわらず、pCPUが利用できない時間の割合。これはCPU競合の初期指標です。 -
vCPU実行可能(合計) (
runnable_vcpus): スケジューリング遅延による、すべてのvCPUにおける予想されるパフォーマンス低下の割合。 -
NUMA非アフィニティvCPU (
numa_node_nonaffine_vcpus): vCPUがVMメモリと同じNUMAノードにないpCPUで実行される時間の割合。値が高いほど、メモリアクセス遅延が増加していることを示します。

デバッグチェックリスト
-
NUMA nodesを確認して、VMがいくつのNUMAノードを使用しているかを確認します。 -
vCPUs runnable anyでドメインレベルのスケジューリング競合を確認します。 -
vCPUs runnable sumでvCPUレベルのスケジューリング遅延を確認します。 -
NUMA non-affine vCPUsでNUMAアフィニティ違反と関連する遅延を確認します。
メトリックを有効にしてサンプルをエクスポートする
VMごとのRRDメトリックはデフォルトで無効になっています。VMのメトリック(例: runnable_any)を有効にしてサンプルをエクスポートするには:
# Enable the data source for a VM
xe vm-data-source-record uuid=<vm-uuid> data-source=runnable_any
# Export sample RRD output
rrd2csv VM:AVERAGE::runnable_any
<!--NeedCopy-->
NUMA配置を構成する (xe CLI)
NUMA配置最適化は、XS9ホストでデフォルトで有効になっています。有効にするための操作は不要です。
ホストでNUMA配置最適化を無効にするには、ホストのNUMAアフィニティポリシーをanyに設定します。
# View current policy
xe host-param-get uuid=<host-uuid> param-name=numa-affinity-policy
# Disable optimization
xe host-param-set uuid=<host-uuid> numa-affinity-policy=any
# Verify
xe host-param-get uuid=<host-uuid> param-name=numa-affinity-policy
<!--NeedCopy-->
デフォルトで有効になっている場合、ポリシー値はdefault_policyです。無効になっている場合、値はanyです。
共有
共有
この記事の概要
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.