sys.dm_os_memory_nodes (Transact-SQL)
SQL Server の内部的なメモリ割り当てには、SQL Server メモリ マネージャーが使用されます。 sys.dm_os_process_memory カウンターと内部カウンターから、プロセス メモリ カウンター間の差を追跡することにより、SQL Server のメモリ領域における外部コンポーネントのメモリ使用状況を把握できます。
ノードは、物理 NUMA メモリ ノードごとに作成されます。 これらは、sys.dm_os_nodes の CPU ノードとは異なる場合があります。
Windows メモリ割り当てルーチンを介して直接実行された割り当ては追跡されません。 次の表は、SQL Server メモリ マネージャー インターフェイスを使ってのみ実行されるメモリ割り当ての情報を示しています。
列名 |
データ型 |
説明 |
---|---|---|
memory_node_id |
smallint |
メモリ ノードの ID を指定します。 sys.dm_os_memory_clerks の memory_node_id に関連付けられています。 NULL 値は許可されません。 |
virtual_address_space_reserved_kb |
bigint |
コミットも物理ページへのマップもされていない仮想アドレスの予約サイズ (KB 単位) を指定します。 NULL 値は許可されません。 |
virtual_address_space_committed_kb |
bigint |
コミットまたは物理ページへのマップが済んでいる仮想アドレスのサイズ (KB 単位) を指定します。 NULL 値は許可されません。 |
locked_page_allocations_kb |
bigint |
SQL Server によってロックされた物理メモリ量 (KB 単位) を指定します。 NULL 値は許可されません。 |
pages_kb |
bigint |
メモリ マネージャー ページ アロケーターによってこの NUMA ノードから割り当てられる、コミット済みのメモリ量 (KB 単位) を指定します。 NULL 値は許可されません。 |
shared_memory_reserved_kb |
bigint |
このノードから予約された共有メモリの量 (KB 単位) を指定します。 NULL 値は許可されません。 |
shared_memory_committed_kb |
bigint |
このノードでコミットされた共有メモリの量 (KB 単位) を指定します。 NULL 値は許可されません。 |
cpu_affinity_mask |
bigint |
内部使用のみ。 NULL 値は許可されません。 |
online_scheduler_mask |
bigint |
内部使用のみ。 NULL 値は許可されません。 |
processor_group |
smallint |
内部使用のみ。 NULL 値は許可されません。 |
foreign_committed_kb |
bigint |
他のメモリ ノードからコミットされたメモリの量 (KB 単位) を指定します。 NULL 値は許可されません。 |
権限
サーバーに対する VIEW SERVER STATE 権限が必要です。
互換性サポート
SQL Server 2012 では、以下の列の名前が変更されました。
以前の列名 |
新しい列名 |
---|---|
single_pages_kb |
pages_kb |
multi_pages_kb |
foreign_committed_kb |