DA0017: Vysoké míry stránkování aktivní paměti na disk

Položka Hodnota
ID pravidla DA0017
Kategorie Paměť a stránkování
Metoda profilace Vše
Zpráva Dochází k vysoké rychlosti stránkování aktivní paměti na disk. Vaše aplikace může být vázané na paměť.
Typ pravidla Informace

Při profilování pomocí metod vzorkování, paměti .NET nebo vracení prostředků je nutné shromáždit alespoň 10 ukázek, aby bylo možné toto pravidlo aktivovat.

Příčina

Data o výkonu systému shromážděná během profilace indikují, že během spuštění profilace došlo k vysoké rychlosti stránkování aktivní paměti na disk a z disku. Frekvence stránkování na této úrovni bude normálně mít vliv na výkon a rychlost odezvy aplikace. Zvažte snížení přidělení paměti redukcí algoritmů. Možná budete také muset vzít v úvahu požadavky vaší aplikace na paměť.

Popis pravidla

Poznámka

Toto informační pravidlo se aktivuje, když úrovně stránkování aktivní paměti dosáhnou značného množství. Pokud dojde k extrémně vysoké úrovni stránkování, pravidlo upozornění DA0014: Místo toho se vyvolá extrémně vysoká míra stránkování aktivní paměti na disk.

Nadměrné stránkování na disk může být způsobené nedostatkem fyzické paměti. Pokud stránkovací operace dominují fyzickému disku, na kterém se nachází stránkovací soubor, mohou zpomalit jiné operace na disku orientovaném na aplikace na stejný disk.

Stránky se často čtou z disku nebo se na disk zapisují hromadně stránkovacími operacemi. Například počet výstupů stránek za sekundu je často mnohem větší než počet zápisů stránky za sekundu. Vzhledem k tomu, že výstup stránek za sekundu zahrnuje také změněné datové stránky z mezipaměti systémových souborů. Není ale vždy snadné určit, který proces přímo zodpovídá za stránkování nebo proč.

Jak opravit porušení

Poklikejte na zprávu v okně Seznam chyb a přejděte do zobrazení Značky. Vyhledejte sloupec Memory\Pages/sec. Určete, jestli existují konkrétní fáze provádění programu, kde je aktivita stránkování V/V těžší než ostatní.

Pokud shromažďujete data profilu pro aplikaci ASP.NET ve scénáři zátěžového testování, zkuste zátěžový test znovu spuštění na počítači s další fyzickou pamětí (nebo pamětí RAM).

Zvažte snížení přidělení paměti redukcí algoritmů a zabráněním paměťově náročným rozhraním API, jako jsou String.Concat a String.Substring.