Udostępnij za pośrednictwem


DA0017: Wysoki poziom stronicowania aktywnej pamięci na dysku

Identyfikator reguły

DA0017

Kategoria

Pamięć i stronicowanie

Metoda profilowania

Wszystkie

Wiadomość

Występuje wysoki stopień stronicowania aktywnej pamięci na dysku.Aplikacja może być ograniczona przez pamięć.

Typ reguły

Informacje

Podczas profilowania metodami próbkowania, pamięci .NET lub metody rywalizacji o zasoby, należy zebrać co najmniej 10 próbek, aby wywołać regułę.

Przyczyna

Dane wydajności systemu, które zostały zebrane podczas przebiegu profilowania wskazują, że podczas przebiegu profilowania wystąpił wysoki stopień stronicowania aktywnej pamięci na i z dysku,Wskaźnik stronicowania na tym poziomie zwykle będzie miał wpływ na wydajność i responsywność aplikacji.Rozważ zmniejszenie liczby alokacji pamięci przez przegląd algorytmów.Należy także wziąć pod uwagę wymagania pamięciowe aplikacji.

Opis reguły

[!UWAGA]

Ta reguła informacyjna jest uruchamiana, gdy poziom ilości stronicowanej pamięci aktywnej osiągnie znaczącą wartość.Kiedy występuje bardzo wysoki poziom stronicowania, zamiast reguły informacyjnej uruchamiana jest reguła ostrzeżenia DA0014: Bardzo wysokie stawki stronicowania aktywnej pamięci na dysku.

Nadmierne stronicowanie na dysku może być spowodowane brakiem pamięci fizycznej.Jeśli operacje stronicowania dominują użycie dysku fizycznego, w którym znajduje się plik stronicowania, mogą spowolnić inne działania ukierunkowane na dysk na tym samym dysku.

Strony są często odczytywane z dysku lub zapisywane na dysku w zbiorczych operacjach stronicowania.Na przykład, liczba stron wychodzących/s jest często dużo większa niż liczba zapisów stron/s.Ponieważ liczba stron wychodzących/s obejmuje również strony ze zmienionymi danymi z pamięci podręcznej plików systemu.Jednak nie zawsze jest to łatwe do ustalenia, który z procesów jest bezpośrednio odpowiedzialny za stronicowanie lub dlaczego.

Jak naprawić naruszenia

Kliknij dwukrotnie wiadomość w oknie Lista błędów, aby przejść do widoku Marks.Znajdź kolumnę Pamięć\Strony/s.Określa, czy istnieją szczególne fazy wykonania programu podczas których aktywność stronicowania We/Wy jest większa niż podczas innych.

Jeśli gromadzone są dane profilowania aplikacji ASP. NET w scenariuszu testowania obciążenia, spróbuj uruchomić ponownie badanie obciążenia na komputerze skonfigurowanym z dodatkową pamięcią fizyczną (lub pamięcią RAM).

Rozważ zmniejszenie liczby alokacji pamięci przegląd algorytmów i unikanie API znacząco obciążających pamięć takich jak String.Concat oraz String.Substring.