DA0017: taxas elevadas de paginação de memória ativa em discoDA0017: High rates of paging active memory to disk

ID de regraRule Id DA0017DA0017
CategoriaCategory Memória e paginaçãoMemory and Paging
Método de criação de perfilProfiling method TodosAll
MensagemMessage Uma alta taxa de paginação de memória ativa em disco está ocorrendo.A high rate of paging active memory to disk is occurring. O aplicativo pode ser associado à memória.Your application may be memory-bound.
Tipo de regraRule type InformaçõesInformation

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.When you profile by using the sampling, .NET memory, or resource contention methods, you must collect at least 10 samples to trigger this rule.

CausaCause

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.System performance data that was collected in the profiling run indicates that an high rate of paging active memory to and from the disk occurred throughout the profiling run. Normalmente, taxas de paginação nesse nível afetarão a capacidade de resposta e o desempenho do aplicativo.Paging rates at this level normally will impact application performance and responsiveness. Considere a redução das alocações de memória revisando os algoritmos.Consider reducing memory allocations by revising algorithms. Talvez você também precise considerar os requisitos de memória do aplicativo.You might also have to consider the memory requirements of your application.

Descrição da regraRule description

Note

Essa regra informativa é acionada quando os níveis de paginação de memória ativa atingem uma quantidade significativa.This informational rule fires when levels of paging of active memory reach a significant amount. 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.When an extremely high level of paging occurs, the warning rule DA0014: Extremely high rates of paging active memory to disk fires instead.

A paginação excessiva em disco pode ser causada pela memória física insuficiente.Excessive paging to disk can be caused by a shortage of physical memory. 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.If paging operations dominate use of the physical disk where the paging file resides, they can slow down other application-oriented disk operations to the same disk.

Com frequência, as páginas são lidas do disco ou gravadas no disco em operações de paginação em massa.Pages are often read from the disk or written to the disk in bulk paging operations. 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.The number of Pages Output/sec is often much larger than the number of Page Writes/sec, for example. Pois a Saída de páginas/s também inclui as páginas de dados alterados do cache de arquivos do sistema.Because Pages Output/sec also includes changed data pages from the system file cache. No entanto, nem sempre é fácil determinar qual processo é diretamente responsável pela paginação e por quê.However, it is not always easy to determine which process is directly responsible for the paging or why.

Como corrigir violaçõesHow to fix violations

Clique duas vezes na mensagem da janela Lista de Erros para navegar para a exibição Marcas.Double-click the message in the Error List window to navigate to the Marks view. Encontre a coluna Memória\Páginas/s.Find the Memory\Pages/sec column. 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.Determine if there are specific phases of program execution where paging IO activity is heavier than others.

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.If you are gathering profile data for an ASP.NET application in a load testing scenario, try running the load test again on a machine configured with additional physical memory (or RAM).

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.Consider reducing memory allocations by revising algorithms and avoiding memory-intensive APIs such as String.Concat and String.Substring.