If-Koubou

Dlaczego dyski Solid State Drive zwalniają, gdy je napełniasz

Dlaczego dyski Solid State Drive zwalniają, gdy je napełniasz (Jak)

Testy porównawcze są jasne: dyski półprzewodnikowe zwalniają w miarę ich zapełniania. Napełnij dysk półprzewodnikowy do poziomu bliskiego, a jego wydajność zapisu dramatycznie się zmniejszy. Powód, dla którego leży sposób, w jaki działają dyski SSD i pamięć flash NAND.

Napełnienie napędu do pojemności jest jedną z rzeczy, których nie powinieneś nigdy robić z dyskiem półprzewodnikowym. Prawie pełny dysk SSD będzie miał znacznie wolniejsze operacje zapisu, spowalniając twój komputer.

Puste bloki i częściowo wypełnione bloki

Podczas zapisywania pliku na dysku SSD szuka pustych bloków i wypełnia je. Zapisywanie do pustego bloku jest najszybszą możliwą operacją zapisu. Właśnie dlatego nowe systemy operacyjne (Windows 7 i nowsze) obsługują funkcję TRIM, która automatycznie usuwa dane pliku z dysku SSD natychmiast po usunięciu pliku w systemie operacyjnym. Działa to inaczej niż magnetyczne dyski twarde, gdzie fragmenty usuniętych plików znajdują się na dysku twardym.

Nie mieszczą się na dysku SSD - TRIM zapewnia, że ​​blok zostanie opróżniony, więc dysk SSD może szybko zapisać nowe dane do pustego bloku w przyszłości. Napisanie już napisanego sektora jest równie szybkie, jak pisanie do pustego sektora na technicznym dysku twardym, ale dysk SSD musi usunąć blok przed zapisaniem do niego.

Pamięć NAND Flash zapisuje dane na stronach o wielkości 4 KB w blokach o wielkości 256 KB. Aby dodać dodatkowe strony do częściowo wypełnionego bloku, dysk półprzewodnikowy musi usunąć cały blok przed zapisaniem do niego danych.

W miarę zapełniania dysku SSD dostępnych jest mniej pustych bloków. Na ich miejscu są częściowo wypełnione bloki. Dysk półprzewodnikowy nie może po prostu zapisać nowych danych do tych częściowo wypełnionych bloków - to usunie istniejące dane. Zamiast prostej operacji zapisu, dysk półprzewodnikowy musi odczytać wartość bloku do pamięci podręcznej, zmodyfikować wartość nowymi danymi, a następnie je zapisać. Pamiętaj, że pisanie pliku będzie prawdopodobnie wymagało napisania wielu bloków, więc może to spowodować znaczną dodatkową zwłokę.

TRIM nie konsoliduje częściowo wypełnionych bloków

Jeśli wypełnisz dysk pojemnością lub w pobliżu pojemności, najprawdopodobniej po usunięciu plików skończysz z częściowo wypełnionymi blokami. Polecenie TRIM po prostu kieruje dyskiem SSD, aby usunąć dane pliku, gdy plik zostanie usunięty. Nie zmusza napędu do wykonywania jakichkolwiek operacji czyszczenia.

Innymi słowy, zapełnij dysk SSD do pojemności przed usunięciem plików, a będziesz prawdopodobnie kończył z wieloma częściowo wypełnionymi blokami. Napęd nie zejdzie z drogi, aby skonsolidować te częściowo wypełnione bloki w pełne bloki, uwalniając puste bloki. Napęd będzie nadal wypełniony częściowo wypełnionymi blokami, a wydajność zapisu spadnie.

Nadmierne przydzielanie i usuwanie śmieci

Aby uniemożliwić konsumentom zapełnienie dysków SSD i pogorszenie wydajności, producenci dysków SSD robią wszystko, aby temu przeciwdziałać.

Dyski SSD klasy konsumenckiej często odkładają około 7% całkowitej pamięci flash i sprawiają, że jest ona niedostępna dla użytkownika. Jest to tak zwane "overprovisioning" - dodatkowy sprzęt pamięci masowej jest dodawany do napędu, ale nie jest widoczny dla komputera jako dostępny magazyn, z którego może korzystać. Strefa wolna gwarantuje, że napęd nigdy nie będzie całkowicie zapełniony - zawsze będzie trochę wolnej przestrzeni, aby utrzymać stabilność zapisu.

Każdy kontroler dysku SSD ma algorytm zbierania śmieci, który próbuje złagodzić ten problem. Kiedy dysk się zapełni, będzie szukał częściowo wypełnionych bloków i zacznie je konsolidować, uwalniając jak najwięcej pustych bloków. Różne dyski półprzewodnikowe wykonują te operacje w różnych czasach i progi - zależy to od kontrolera napędu.

Dowody porównawcze

Anandtech przeprowadził szereg testów porównawczych z różnymi napędami, aby określić relacje między wolnym obszarem dysku SSD a spójnością jego wydajności zapisu. Podczas zapełniania pustego dysku, stwierdzili wysoką wydajność zapisu na bardzo wczesnym etapie procesu i znaczny spadek w miarę, jak operacje zapisu kontynuowały zapełnianie dysku.

Odłożenie większej ilości wolnego miejsca na dyskach pomogło zachować spójność działania, ponieważ zapewniało, że napęd powinien mieć zawsze wystarczającą ilość pustych bloków.

Okazało się, że "minimalna wydajność znacznie się poprawiła po osiągnięciu 25% wolnej przestrzeni dla tych dysków [konsumentów]". Ostatecznym zaleceniem było, aby "planować użycie tylko około 75% pojemności [napędu], jeśli chcesz zachować równowagę pomiędzy spójnością wydajności a wydajnością. "

Jeśli masz dysk SSD, powinieneś unikać używania ponad 75% jego pojemności. Kup większy dysk z większą ilością pamięci niż potrzebujesz, a będziesz mieć pewność, że zawsze masz stałą wydajność zapisu. Na szczęście dyski SSD stopniowo stają się znacznie tańsze, więc nie jest to tak drogie jak kiedyś.

Image Credit: Music Sorter na Wikimedia Commons, Simon Wüllhorst na Flickr