Co to jest wykończenie SSD?

Co to jest wykończenie SSD?
SSD to zupełnie inne media pamięci w porównaniu z tymi, które istniały przed nim. Media magnetyczne, zwłaszcza wirujące dyski, wprowadziły wiele pojęć, takich jak rozmiar sektora, partycjonowanie, fragmentacja itp. Niektóre z tych pomysłów zostały naśladowane również w urządzeniach stałego oprogramowania stałego.

Z drugiej strony wprowadzono nowe koncepcje w celu zoptymalizowania wydajności, żywotności i niezawodności tych nowych urządzeń. Jedną z takich koncepcji jest operacja wykończenia.

Układ SSD

SSD są płonącznie szybkie i z każdym rokiem stają się szybsze i tańsze. Ich niezawodność również znacznie się poprawiła od samego początku. Jednak SSD nadal nie są tak niezawodne jak media magnetyczne, nie są też tak trwałe jak dysku twardym. W rzeczywistości leżące u podstaw mechanizmy odczytu są bardzo różne od tego, co widzi się wewnątrz HDD.

Aby zrozumieć problemy, na które cierpi SSD, i dlaczego potrzebujemy operacji wykończenia, aby przezwyciężyć te problemy, najpierw spójrzmy na strukturę SSD. Dane są przechowywane zwykle w grupach komórek 4KB, zwanych stronami. Strony są następnie pogrupowane w klastry 128 stron, zwane blokami, a każdy blok ma 512 kb, dla większości SSD.

Możesz odczytać dane ze strony zawierającej pewne informacje lub możesz zapisać dane na stronach, które są czyste (bez istniejących danych, tylko seria 1s). Nie można jednak zastąpić danych na stronie 4KB, na której już zostały napisane, bez zastąpienia wszystkich pozostałych 512 kb.

Jest to konsekwencja faktu, że napięcia wymagane do odwrócenia od 0 do 1 są często znacznie wyższe niż odwrotnie. Nadmiar napięcia może potencjalnie odwracać bity na sąsiednich komórkach i skorumpowane dane.

Operacja usuwania degradacja wydajności SSD

Kiedy mówi się, że dane są „Usunięty” Przez system operacyjny SSD oznacza jedynie wszystkie odpowiednie strony jako nieprawidłowe, zamiast usuwać dane. Jest to dość podobne do tego, co dzieje się również w dysku twardym, sektory są wyraźny jako wolne, a nie fizycznie się zerować. To sprawia, że ​​operacja usunięcia jest znacznie szybsza.

W przypadku HDDS działa to dobrze. Gdy należy napisać nowe dane, możesz zastąpić stare dane na temat uwolniony sektor bez żadnych problemów lub obaw o otaczające sektory. HDD mogą modyfikować dane w miejscu.

W przypadku SSD nie jest to takie proste. Powiedzmy, że modyfikujesz plik, co odpowiada zmianie pojedynczej strony 4KB. Kiedy próbujesz zmodyfikować stronę 4KB w SSD, cała zawartość jej bloku, całość jej 512 kB, musi odczytać w pamięci podręcznej (pamięć podręczna może być wbudowana w SSD lub może być główną pamięcią systemu) i Następnie blok musi zostać wymazany, a następnie możesz napisać nowe dane docelową stronę 4KB. Będziesz także musiał odpisać pozostałe niezmodyfikowane 508 kB danych, które skopiowałeś do pamięci podręcznej.

Wyniki te zwiększają zjawisko wzmocnienia zapisu, w którym każda operacja zapisu zostaje wzmocniona do operacji modyfikującej odczyt fragmentów danych, które są znacznie większe niż rzeczywiste dane, które należy wprowadzić.

Początkowo ta wzmocnienie nie pojawia się. Twój dysk SSD działa bardzo dobrze na początku. Ostatecznie, gdy bloki są wypełnione, nieuchronny punkt jest osiągnięty, w którym zaczyna się coraz więcej operacji zapisu, obejmujące drogie operacje-modyfikujące się do odczytu. Użytkownik zaczyna zauważać, że SSD nie działa tak dobrze, jak początkowo.

Kontrolery SSD starają się również upewnić, że dane są rozłożone na całym dysku. Aby wszystkie umierają na równe poziomy zużycia. Jest to ważne, ponieważ komórki pamięci flash szybko się zużywają, a zatem jeśli stale używamy tylko kilku pierwszych tysięcy bloków ignorujących resztę SSD, te kilka bloków wkrótce zostanie zużyte. Rozpowszechnianie danych na wielu matrycach poprawia również wydajność, ponieważ możesz odczytać lub zapisywać dane równolegle.

Jednak teraz zapisy są rozłożone, zwiększając szanse bloku posiadania strony. To dodatkowo przyspiesza proces degradacji.

Przytnij polecenie i uwalnianie bloków

Polecenie Trim minimalizuje degradację wydajności poprzez okresowe przycinanie nieprawidłowych stron. Na przykład system Windows 10 przycina dysk SSD raz w tygodniu. Wszystkie dane oznaczone jako usunięte przez system operacyjny, są faktycznie wyczyszczone z komórek pamięci przez kontroler SSD podczas pracy. Tak, nadal musi przejść przez operację odczytu-modyfikacji, ale zdarza się to tylko raz w tygodniu i może być zaplanowane w godzinach, w których system jest w większości idealny.

Następnym razem, gdy chcesz napisać na stronie, jest ona faktycznie pusta i gotowa do bezpośredniej operacji zapisu!

Rzeczywista częstotliwość polecenia TRIP zależy od rodzaju uruchomionego systemu. Bazy danych zwykle robią wiele iOS, a zatem wymagałyby częstszego przycinania. Jeśli jednak zrobisz to zbyt często, operacje bazy danych spowolnią się w okresie, w którym tryma. Zadaniem architekta systemowego jest znalezienie odpowiedniego harmonogramu i częstotliwości.

Ograniczenia

Polecenie TRIM jest bardzo przydatne w opóźnianiu degradacji wydajności urządzenia. Pomaga utrzymać przeciętny Wydajność urządzenia. Ale to tylko średnio.

Załóżmy, że jeśli pracujesz z dokumentem tekstowym i ciągle piszesz do pliku, edytując rzeczy i oszczędzasz, aby nie stracić żadnych postępów. Strony przechowujące dane dokumentu nadal będą musiały przejść przez rozdzierający cykl odczytu-modyfikujący zapis. Nawet jeśli działał jako usługa, wpływ wydajności będzie nadal widoczny, ponieważ jest wbudowany w samą mechanikę operacji SSD.

Również zbyt często uruchamianie wykończenia SSD może zmniejszyć długowieczność pamięci. Ponieważ całe to usunięcie i cykl zapisu zużyją komórki, renderując dane przechowywane w nich tylko do odczytu.

Wniosek

Pomimo wszystkich niedociągnięć SSD nadal zawiera ogromne korzyści wydajności w porównaniu z tradycyjnym dyskem twardym. W miarę wzrostu udziału w rynku tych magicznych urządzeń, dalsze badania i inżynierskie zostaną skierowane na poprawę technologii podstawowej.

Dostawcy systemów operacyjnych, producenci układów SSD i osoby, które piszą całą złożoną logikę oprogramowania układowego, łączą się, aby dać nam to niesamowite urządzenie. Trim jest tylko jedną z wielu warstw złożoności, która tam jest zapakowana.

Bibliografia

  1. Anandtech i ich cudowne badania i przegląd dysków SSD.
  2. Artykuł w Wikipedii na temat wzmocnienia pisania
  3. Napisz o Arstechni o SSDS i ich wewnętrznych działaniach