Nadmierne udostępnianie dysku SSD - czy nadal działa?

14

Wiele (ale nie całkiem nowych) źródeł sugeruje, że ~ 7% miejsca na dysku SSD powinno pozostać nieprzydzielone, aby zmniejszyć zużycie dysku. Czy nadal obowiązuje, czy sytuacja się zmieniła?

marmistrz
źródło
Ma to znaczenie ze względu na problem z włączeniem TRIM, jak powiedziałem. Podejrzewam, że SU dobrze pasuje do tego pytania, ale teraz wymaga edycji, aby wspomnieć o Linuksie!
sourcejedi
wolna przestrzeń pozwala na lepszą wydajność. Zużycie napędu jest zawyżone i być może teraz mit. Dyski SSD dobrej jakości mogą trwać ponad 10 lat, pisząc na nie 24 godziny na dobę. może to być dobry artykuł do przejrzenia: howtogeek.com/165472/... - pisanie do pustego bloku jest dość szybkie, ale pisanie do częściowo wypełnionego bloku wymaga odczytania częściowo wypełnionego bloku, modyfikacji jego wartości, a następnie zapisania plecy. Powtórz to wiele, wiele razy dla każdego pliku zapisywanego na dysku, ponieważ plik prawdopodobnie zajmie wiele bloków. ---
Niedz.

Odpowiedzi:

15

Windows zazwyczaj używa TRIM. Oznacza to, że dopóki masz X% wolnego miejsca w systemie plików, dysk będzie widział X% jako nieprzydzielone. [*] Nadmiarowe przydzielanie nie jest wymagane.

Wyjątek: historycznie dyski SSD z kontrolerami / oprogramowaniem układowym Sandforce nie przywróciły pełnej wydajności po TRIM :(.

Utrata wydajności na pełnym dysku może być znacząca, a nawet bardziej niż w przypadku niektórych innych dysków. Będzie to związane z wysokim wzmocnieniem zapisu, a zatem zwiększy zużycie. Źródło: recenzje Anandtech.

Jest to konieczne wtedy i tylko wtedy

  • nie masz pewności, że TRIM zostanie użyty. AFAIK nadal nie jest domyślnie włączony w systemie Linux, z powodu problemów z wydajnością kilku starych i źle zachowujących się dysków.
  • LUB martwisz się o wypełnienie dysku Sandforce (i że zawartość nie będzie podlegać kompresji przez inteligentny kontroler).

Włączenie TRIM w Linuksie nie jest zbyt trudne i raczej nie zauważysz żadnych problemów.

Na szczęście kilka najpopularniejszych marek tworzy własny kontroler. Kontrolery Sandforce nie są tak popularne, jak kiedyś. Problemy z Sandforce powodują, że jestem sceptycznie nastawiony do tego konkretnego „inteligentnego” sterownika, który był bardzo agresywny jak na swój czas. Przepraszamy Sandforce, ale nie mam odniesienia do konkretnych modeli kontrolerów, których dotyczy problem.


[*] Systemy plików lubią też mieć dużo wolnego miejsca, aby zmniejszyć fragmentację. TRIM jest świetny, ponieważ nie musisz dodawać dwóch marginesów bezpieczeństwa razem, to samo wolne miejsce pomaga obu :). Napęd może wykorzystać nieprzydzieloną przestrzeń, aby poprawić wydajność, a także uniknąć wysokiego zużycia, jak mówisz.

sourcejedi
źródło
Czy można wykryć kontroler Sandforce po zainstalowaniu dysku SSD?
marmistrz
Nie ma standardowego odczytu ani testu, o którym wiem. Musisz wiedzieć, co to jest dysk i spróbuj go wyszukać. O wszystkim, co widzę, to „numer modelu”, np. W dyskach GNOME, takich jak „M4-CT128M4SSD2”, który może być trudny do dopasowania. Jeszcze raz przepraszam. Wierzę, że Samsung używa własnych kontrolerów, a Crucial / Micron - Marvell. OCZ / Toshiba używały różnych kontrolerów, w tym Sandforce.
sourcejedi
Zakłada się, że faktycznie masz wolne miejsce w systemie plików, prawda? : D
endolith,
Określ konkretnie, na jaką część odpowiadasz, to było ponad rok temu. Myślę, że masz na myśli „[hipotetyczny] nie mam dyscypliny, potrzebuję, aby mój system odparł przeciwko ciągłym nadużyciom i nie mam oprogramowania, aby ustawić alarm wysokiego poziomu wody”. Co jest całkowicie uzasadnioną krytyką, aczkolwiek interesującą ze strony kogoś, kto w pierwszej kolejności rozważyłby nadmierne zaopatrzenie.
sourcejedi
7

Nowoczesne kontrolery SSD są na tyle inteligentne, że przeregulowanie zwykle nie jest konieczne w codziennym użytkowaniu. Nadal jednak zdarzają się sytuacje, przede wszystkim w środowiskach centrów danych, w których zaleca się stosowanie nadmiernej kontroli. Aby zrozumieć, dlaczego nadmierna kontrola może być przydatna, konieczne jest zrozumienie, w jaki sposób działają dyski SSD.

Dyski SSD muszą radzić sobie z ograniczeniami pamięci flash podczas zapisywania danych

Dyski SSD używają pamięci typu NAND flash memory . W przeciwieństwie do dysków twardych komórki NAND zawierające dane nie mogą być bezpośrednio zastępowane; dysk musi usunąć istniejące dane, zanim będzie mógł zapisać nowe dane. Ponadto, podczas gdy dyski SSD zapisują dane na stronach , które zwykle mają rozmiar od 4 KB do 16 KB, mogą usuwać dane tylko w dużych grupach stron zwanych blokami , zwykle od kilkuset KB do kilku MB w nowoczesnych dyskach SSD.

NAND ma również ograniczoną wytrzymałość na zapis . Aby uniknąć niepotrzebnego przepisywania danych w celu skasowania bloków i aby upewnić się, że żaden blok nie otrzyma nieproporcjonalnej liczby zapisów , napęd próbuje rozdzielić zapisy, szczególnie małe zapisy losowe, na różne bloki. Jeśli zapisy zastępują stare dane, oznacza to, że stare strony są nieprawidłowe. Gdy wszystkie strony w bloku zostaną oznaczone jako niepoprawne, dysk może je usunąć bez konieczności przepisywania prawidłowych danych.

Dyski SSD potrzebują wolnego miejsca do optymalnego działania, ale nie każde obciążenie sprzyja utrzymaniu wolnego miejsca

Jeśli na dysku pozostało niewiele wolnego miejsca lub nie ma go wcale, nie będzie w stanie rozłożyć zapisów. Zamiast tego dysk będzie musiał natychmiast usunąć bloki, ponieważ zapisy są wysyłane na dysk, przepisując wszelkie prawidłowe dane w tych blokach na inne bloki. Powoduje to, że do NAND zapisywanych jest więcej danych niż do napędu, zjawisko znane jako wzmocnienie zapisu . Wzmocnienie zapisu jest szczególnie wyraźne w przypadku losowych obciążeń intensywnie zapisujących, takich jak przetwarzanie transakcji online (OLTP) , i należy je ograniczyć do minimum, ponieważ powoduje to obniżenie wydajności i wytrzymałości.

Aby zmniejszyć wzmocnienie zapisu, większość nowoczesnych systemów obsługuje polecenie o nazwie TRIM , które informuje dysk, które bloki nie zawierają już prawidłowych danych, aby można je było usunąć. Jest to konieczne, ponieważ w innym przypadku dysk musiałby założyć, że dane logicznie usunięte przez system operacyjny są nadal ważne, co utrudnia zdolność dysku do utrzymania odpowiedniej wolnej przestrzeni.

Jednak TRIM czasami nie jest możliwe, na przykład gdy napęd znajduje się w zewnętrznej obudowie (większość obudów nie obsługuje TRIM) lub gdy napęd jest używany ze starszym systemem operacyjnym. Ponadto, przy bardzo intensywnych obciążeniach losowego zapisu, zapisy zostaną rozłożone na duże obszary bazowego NAND, co oznacza, że ​​może wystąpić wymuszone przepisywanie danych i towarzyszące wzmocnienie zapisu, nawet jeśli dysk nie jest prawie pełny.

Nowoczesne dyski SSD mają znacznie mniejsze wzmocnienie zapisu niż starsze dyski, ale niektóre obciążenia mogą nadal korzystać z nadmiarowości

Najwcześniejsze dyski SSD miały znacznie mniej dojrzałe oprogramowanie układowe, które często zapisywało dane znacznie częściej niż to konieczne. Wczesne kontrolery Indilinx i JMicron ( JMF602 był niesławny z powodu zacinania się i fatalnej wydajności losowego zapisu ) cierpiały z powodu bardzo dużego wzmocnienia zapisu przy intensywnych obciążeniach losowego zapisu, czasami przekraczającego 100x. (Wyobraź sobie, że zapisujesz ponad 100 MB danych do NAND, gdy próbujesz zapisać tylko 1 MB!). Nowsze kontrolery, z korzyścią dla większej mocy przetwarzania, ulepszonymi algorytmami zarządzania pamięcią flash i obsługą TRIM, znacznie lepiej radzą sobie z tymi sytuacjami, chociaż duże obciążenia losowego zapisu mogą nadal powodować zwiększenie zapisu ponad 10-krotnie w nowoczesnych dyskach SSD .

Overprovisioning zapewnia dyskowi większy obszar wolnego miejsca do obsługi przypadkowych zapisów i unikania wymuszonego przepisywania danych. Wszystkie dyski SSD mają nadwyżkę zabezpieczeń przynajmniej w minimalnym stopniu; niektóre wykorzystują tylko różnicę między GB a GiB, aby zapewnić około 7% wolnego miejsca na dysku do pracy, podczas gdy inne mają większą nadwyżkę, aby zoptymalizować wydajność dla potrzeb określonych aplikacji. Na przykład korporacyjny dysk SSD do obciążeń OLTP lub baz danych o dużym obciążeniu do zapisu może mieć 512 GiB fizycznego NAND, ale ma reklamowaną pojemność 400 GB, a nie 480 do 512 GB typową dla SSD konsumenckich z podobną ilością NAND.

Jeśli obciążenie jest szczególnie wymagające lub jeśli używasz dysku w środowisku, w którym TRIM nie jest obsługiwany, możesz ręcznie zastąpić przestrzeń, dzieląc dysk tak, aby część miejsca była nieużywana. Na przykład możesz podzielić dysk SSD 512 GB na 400 GB i pozostawić nieprzydzielone miejsce, a dysk wykorzysta nieprzydzielone miejsce jako wolne miejsce. Zauważ jednak, że to nieprzydzielone miejsce należy przyciąć, jeśli zostało wcześniej zapisane; w przeciwnym razie nie przyniesie to korzyści, ponieważ dysk uzna, że ​​miejsce jest zajęte. (Narzędzia do partycjonowania powinny być wystarczająco inteligentne, aby to zrobić, ale nie jestem w 100% pewien; zobacz „Czy system Windows przycina niepartycjonowane (niesformatowane) miejsce na dysku SSD?” )

Jeśli jesteś zwykłym konsumentem, przeregulowanie nie jest na ogół konieczne

W typowych środowiskach konsumenckich, w których obsługiwany jest TRIM, dysk SSD jest zapełniony w mniej niż 70–80% i nie jest ciągle blokowany losowymi zapisami, wzmocnienie zapisu zwykle nie stanowi problemu, a nadmiarowość zwykle nie jest konieczna.

Ostatecznie większość konsumentów nie zapisuje prawie wystarczającej ilości danych na dysk, aby zużyć NAND w zamierzonym okresie eksploatacji większości dysków SSD, nawet przy dużym wzmocnieniu zapisu, więc nie można stracić snu.

bwDraco
źródło
1

Wielkość dodatkowej przestrzeni różni się bardzo między modelami dysków SSD, ale ogólnie rzecz biorąc jest to nadal prawdą.

Tomasz Klim
źródło
Czy masz na to jakieś odniesienia?
Léo Lam
Czy masz na myśli odniesienie do konkretnego napędu? Wiele dysków (nie tylko SSD) ma publiczne referencje techniczne, ale przepraszam, nie mam czasu na wyszukiwanie. Jeśli jednak interesują Cię informacje ogólne, sprawdź to: samsung.com/global/business/semiconductor/minisite/SSD/…
Tomasz Klim
1
Tak, zastanawiałem się, czy nadal dotyczy to wszystkich dysków, czy tylko określonych modeli lub marek, ponieważ inna odpowiedź sugeruje, że nadmierne zaopatrzenie nie jest już konieczne na najnowszych dyskach.
Léo Lam
Druga odpowiedź nie jest do końca właściwa. Rzeczywiście dyski z kontrolerami Sandforce miały dużo dodatkowej przestrzeni. To całkowicie prawda. Ale także każdy inny kontroler SSD wykorzystuje dodatkowe miejsce, tylko tyle. Ponieważ to prawdopodobnie się nie zmieni.
Tomasz Klim
1
Z dokumentu dotyczącego Samsung SSD: „zawsze istnieje możliwość ręcznego zarezerwowania dodatkowej przestrzeni dla jeszcze większej poprawy wydajności (np. Przy wymagających obciążeniach)”, tzn. Sugerują, że nie musisz zaczynać rozważać tego, chyba że masz „ wymagające obciążenie ”.
sourcejedi