DA0017: Altas taxas de paginação de memória ativa para o disco

Item Valor
ID de regra DA0017
Categoria Memória e paginação
Método de criação de perfil Tudo
Mensagem Uma alta taxa de paginação de memória ativa em disco está ocorrendo. O aplicativo pode ser associado à memória.
Tipo de regra Informações

Ao criar o perfil usando a amostragem, a memória do .NET ou métodos de contenção de recursos, é necessário coletar pelo menos 10 amostras para disparar essa regra.

Causa

Os dados de desempenho do sistema coletados na execução de criação de perfil indicam que ocorreu uma taxa alta de paginação de memória ativa do ou no disco durante a execução de criação de perfil. Normalmente, taxas de paginação nesse nível afetarão a capacidade de resposta e o desempenho do aplicativo. Considere a redução das alocações de memória revisando os algoritmos. Talvez você também precise considerar os requisitos de memória do aplicativo.

Descrição da regra

Observação

Essa regra informativa é acionada quando os níveis de paginação de memória ativa atingem uma quantidade significativa. Quando ocorre um nível extremamente alto de paginação, a regra de aviso DA0014: taxas extremamente altas de paginação de memória ativa em disco é acionada.

A paginação excessiva em disco pode ser causada pela memória física insuficiente. Se as operações de paginação dominarem o uso do disco físico em que o arquivo de paginação reside, elas poderão deixar mais lentas outras operações de disco orientadas por aplicativo no mesmo disco.

Com frequência, as páginas são lidas do disco ou gravadas no disco em operações de paginação em massa. O número de Saída de páginas/s é geralmente muito maior do que o número de Gravações de página/s, por exemplo. Pois a Saída de páginas/s também inclui as páginas de dados alterados do cache de arquivos do sistema. No entanto, nem sempre é fácil determinar qual processo é diretamente responsável pela paginação e por quê.

Como corrigir violações

Clique duas vezes na mensagem na janela Lista de Erros para navegar até o modo de exibição de marcas . Encontre a coluna Memória\Páginas/s. Determine se há fases específicas da execução do programa em que a atividade de E/S de paginação é mais pesada do que em outras.

Se estiver coletando dados de perfil para um aplicativo ASP.NET em um cenário de teste de carga, tente executar novamente o teste de carga em um computador configurado com memória física (ou RAM) adicional.

Considere a redução das alocações de memória revisando os algoritmos e evitando APIs de uso intensivo de memória, como String.Concat e String.Substring.