Partilhar via


sys.dm_xtp_system_memory_consumers (Transact-SQL)

Relata os consumidores de memória no nível do sistema para OLTP na memória. A memória desses consumidores vêm do pool padrão (quando a alocação está no contexto de um thread do usuário) ou do pool interno (se a alocação estiver no contexto de um thread do sistema).

-- system memory consumers @ instance
select * from sys.dm_xtp_system_memory_consumers

Para obter mais informações, consulte OLTP na memória (otimização na memória).

Aplica-se a: SQL Server (do SQL Server 2014 à versão atual).

Nome da coluna

Tipo

Descrição

memory_consumer_id

bigint

ID interna do consumidor de memória.

memory_consumer_type

int

Um número inteiro que representa o tipo do consumidor de memória.

  • 0 – Não deve ser exibido.

    Agrega o uso de memória de dois ou mais consumidores.

  • 1 – LOOKASIDE

    Rastreia o consumo de memória para a parte de um sistema.

  • 2 - VARHEAP

    Rastreia o consumo de memória para um heap de comprimento variável.

  • 4 - Pool da página de E/S

    Rastreia o consumo de memória para um pool da página do sistema usado para operações de E/S.

memory_consumer_type_desc

nvarchar(16)

A descrição do tipo do consumidor de memória:

  • 0 – Não deve ser exibido.

  • 1 – LOOKASIDE

  • 2 - VARHEAP

  • 4 - PGPOOL

memory_consumer_desc

nvarchar(64)

Descrição da instância do consumidor de memória:

  • VARHEAP

    Heap do sistema. Uso geral. Atualmente usado apenas para alocar itens de trabalho de coleta de lixo.

    A parte de heap. Usado por partes quando o número de itens contidos na lista de partes alcançar um valor predeterminado (normalmente em torno de 5.000 itens).

  • PGPOOL

    Para pools do sistema de E/S, há três tamanhos diferentes: pool de página do sistema 4K, pool de página do sistema 64K e pool de página do sistema 256K.

lookaside_id

bigint

A ID do provedor de memória de direções de local de thread.

pagepool_id

bigint

A ID do provedor de memória do pool de páginas de local de thread.

allocated_bytes

bigint

Número de bytes reservados para o consumidor.

used_bytes

bigint

Bytes usados por este consumidor. Aplica-se somente a consumidores de memória de varheap.

allocation_count

int

Número de alocações.

partition_count

int

Somente para uso interno.

sizeclass_count

int

Somente para uso interno.

min_sizeclass

int

Somente para uso interno.

max_sizeclass

int

Somente para uso interno.

memory_consumer_address

varbinary

Endereço interno do consumidor.

Permissões

Requer as permissões VIEW SERVER STATE no servidor.

Cenário de uso

-- system memory consumers @ instance
selectmemory_consumer_type_desc, 
allocated_bytes/1024 as allocated_bytes_kb, 
used_bytes/1024 as used_bytes_kb, allocation_count
from sys.dm_xtp_system_memory_consumers

A saída mostra todos os consumidores de memória no nível do sistema. Por exemplo, há consumidores para o registro de transações.

memory_consumer_type_name           memory_consumer_desc                           allocated_bytes_kb   used_bytes_kb        allocation_count
-------------------------------          ---------------------                          -------------------  --------------        ----------------
VARHEAP                                  Lookaside heap                                 0                    0                    0
VARHEAP                                  System heap                                    768                  0                    2
LOOKASIDE                                GC transaction map entry                       64                   64                   910
LOOKASIDE                                Redo transaction map entry                     128                  128                  1260
LOOKASIDE                                Recovery table cache entry                     448                  448                  8192
LOOKASIDE                                Transaction recent rows                        3264                 3264                 4444
LOOKASIDE                                Range cursor                                   0                    0                    0
LOOKASIDE                                Hash cursor                                    3200                 3200                 11070
LOOKASIDE                                Transaction save-point set entry               0                    0                    0
LOOKASIDE                                Transaction partially-inserted rows set        704                  704                  1287
LOOKASIDE                                Transaction constraint set                     576                  576                  1940
LOOKASIDE                                Transaction save-point set                     0                    0                    0
LOOKASIDE                                Transaction write set                          704                  704                  672
LOOKASIDE                                Transaction scan set                           320                  320                  156
LOOKASIDE                                Transaction read set                           704                  704                  343
LOOKASIDE                                Transaction                                    4288                 4288                 1459
PGPOOL                                   System 256K page pool                          5120                 5120                 20
PGPOOL                                   System 64K page pool                           0                    0                    0
PGPOOL                                   System 4K page pool                            24                   24                   6

Para ver a memória total consumida por alocadores do sistema:

select sum(allocated_bytes)/(1024*1024) as total_allocated_MB, sum(used_bytes)/(1024*1024) as total_used_MB 
from sys.dm_xtp_system_memory_consumers

total_allocated_MB   total_used_MB
-------------------- --------------------
2                    2

Consulte também

Conceitos

Exibições de gerenciamento dinâmico da tabela com otimização de memória (Transact-SQL)