Poprawka: duże użycie pamięci w programie ReFS w systemie Windows

Symptomy

Intensywność użycia pamięci na komputerze z systemem Windows 10, Windows Server 2016, Windows Server 2019, Windows Server, 1903 lub Windows Server w wersji 1909.

Przyczyna

Aby zapewnić większą odporność na metadane, funkcja odporności systemu plików (ReFS) w systemie Windows Server 2016 używa semantyki przydzielenia do zapisu dla wszystkich aktualizacji metadanych. Oznacza to, że odwołania nigdy nie wprowadzają aktualizacji metadanych w miejscu. Zamiast tego wszystkie zapisy są zapisywane w nowo przydzielonych regionach.

Jednak przydzielenie w trakcie pisania powoduje, że w przypadku odwołań do nowych obszarów w woluminie niż w przypadku systemu plików, które nie są zapisanePonadto w przypadku funkcji ReFS jest używana logika buforowania bloków, która umożliwia buforowanie metadanych w pamięci RAM. Nie jest to efektywne dla zasobów jako logika buforowania plików.

Logika pamięci funkcji zablokowania i przydzielenia zapisu w systemie ReFS jest taka sama jak w przypadku dużych strumieni metadanych. Funkcja ReFS używa Menedżera pamięci podręcznej do tworzenia strumieni metadanych, a Menedżer pamięci podręcznej lazily nie mapuje widoków nieaktywnych. W razie wystąpienia tego rozmapowania z opóźnieniem powoduje wzrost aktywnego zestawu roboczego na serwerze. Powoduje to powstanie siły pamięci, która może powodować słabą wydajność.

Rozwiązanie

Ten problem został rozwiązany w aktualizacji zbiorczej 4013429, która została wydana 14 marca 2017. Aktualizacja wprowadza trzy tunable parametry rejestru. (Zobacz sekcję "Obejście").

Zbiorcza aktualizacja 4013429 jest dostępna za pośrednictwem usługi Windows Update. Możesz też pobrać go bezpośrednio za pośrednictwem wykazu usługi Microsoft Update.

Więcej informacji zawarto w następującym artykule z bazy wiedzy Microsoft Knowledge Base:

4013429 14 marca 2017 r. — KB4013429 (kompilacja systemu operacyjnego 14393,953)

Jak ustawić parametry tunable

Ta aktualizacja zawiera trzy parametry rejestru tunable, które umożliwiają rozwiązywanie dużych strumieni metadanych ReFS. Parametry można ustawić za pomocą następujących metod opcjonalnych. Te parametry mogą być używane w dowolnej kombinacji, ponieważ nie nakładają się na nie.

Ważne

  • Aby te zmiany parametrów zostały wprowadzone, wymagane jest ponowne uruchomienie.

  • Te parametry muszą być stale ustawiane w każdym węźle klastra trybu failover.

Opcja 1

Ta opcja powoduje, że funkcja ReFS wypróbuje pełne usunięcie strumienia strumieni o wszystkich strumieniach metadanych w każdym punkcie kontrolnym. Ta opcja powoduje, że oczekiwany wynik to tylko wtedy, gdy wolumin jest bezczynny i nie zawiera żadnych zamapowanych stron.

Określ wskazane wartości w następującym podkluczu:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

Nazwa wartości: RefsEnableLargeWorkingSetTrimSet RefsEnableLargeWorkingSetTrim = 1

Typ wartości: REG_DWORD

Opcja 2

W przypadku funkcji ReFS jest wypisana logika z opóźnieniem MM. W związku z tym, gdy program ReFS przetworzy cały obszar nazw w celu ukończenia mapowania MM, rozdzieli go na pewnym poziomie szczegółowości. Ilość niezamapowanej wirtualnej przestrzeni adresowej jest określana przez następującą formułę:

RefsNumberOfChunksToTrim * 128 MB (o rozmiarze > 10 TB)

RefsNumberOfChunksToTrim * 64 MB (wolumin o rozmiarze < 10 TB)

Ta opcja działa, jeśli zakres VA, który jest usuwany, nie ma żadnych aktywnych odwołań (czyli mapowanych stron metadanych).

Określ wskazane wartości w następującym podkluczu:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

Nazwa wartości: RefsNumberOfChunksToTrim

Typ wartości: REG_DWORD

Wartość domyślna (jeśli nie jest ustawiona lub 0): 4

Uwaga Ustawienie RefsNumberOfChunksToTrim do wyższych wartości powoduje, że odwołania są bardziej agresywne. Zmniejsza to ilość używanej pamięci. Ustaw wartość przycięcia na odpowiedni numer: 8, 16, 32 itd.

Opcja 3

Ta opcja powoduje, że funkcja ReFS wysyła wiersz przycięcia w dół podczas mapowania strony metadanych. Jest to najbardziej agresywna opcja, ponieważ może powodować regresję w przypadku korzystania z plików ReFS na nośnikach o wysokiej wydajności, takich jak SSD lub interfejsu NVMe.

Określ wskazane wartości w następującym podkluczu:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

Nazwa wartości: RefsEnableInlineTrim

Typ wartości: REG_DWORD

Set RefsEnableInlineTrim = 1

Rekomendacj

Jeśli duży aktywny zestaw roboczy powoduje słabą wydajność, najpierw spróbuj ustawić RefsEnableLargeWorkingSetTrim = 1. Jeśli to ustawienie nie daje zadowalającego wyniku, spróbuj użyć innych wartości dla RefsNumberOfChunksToTrim, takich jak 8, 16, 32 itd. Jeśli to nie poskutkuje, ustaw RefsEnableInlineTrim = 1

Więcej informacji

Aby zaktualizować swoje metadane, funkcja ReFS używa przydzielenia na piśmie zamiast zapisywania w miejscu, aby poprawić odporność na uszkodzenia.

Pisanie na miejscu jest podatne na przerwanie zapisu. Dzieje się tak, jeśli awaria zasilania lub nieoczekiwane odinstalowanie powoduje tylko częściowe ukończenie zapisu.

Przydzielenie w trakcie pisania umożliwia niewiarygodne zachowanie spójności metadanych po awarii zasilania lub nieoczekiwanym odinstalowaniem. Wynika to z faktu, że system ReFS nadal może odwoływać się do poprzedniej, spójnej kopii metadanych.

Informacje

Omówienie funkcji odporności na system plików (ReFS)

Potrzebna dalsza pomoc?

Rozwijaj swoje umiejętności
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów firmy Microsoft

Czy te informacje były pomocne?

Dziękujemy za opinię!

Dziękujemy za opinię! Wygląda na to, że połączenie Cię z jednym z naszych agentów pomocy technicznej pakietu Office może być pomocne.

×