Czy powinienem defragmentować dysk SSD?

121

Właśnie dowiedziałem się, że należy „Nigdy nie defragmentować dysku SSD”. Ale nie mam pojęcia, czy to prawda.

Uważam, że system Windows 10 został automatycznie zaplanowany do zakończenia defragmentacji na moim dysku SSD, ale go anulowałem. Czy spowodowałoby to jakiekolwiek problemy z wcześniejszą defragmentacją?

Dysk SSD nadal nie jest podzielony na partycje, ponieważ nie widzę dysku SSD w folderze Mój komputer, tylko w systemowym menedżerze sprzętu. Jakie kroki należy podjąć, aby zainstalować system Windows na dysku SSD (to mój pierwszy dysk SSD)?

nocnik
źródło
12
Rada „nigdy nie defragmentuj dysku SSD” jest przestarzała i pochodzi z czasów, gdy dyski SSD były wolniejsze i miały znacznie bardziej ograniczoną wytrzymałość na zapis niż współczesne dyski SSD. Nowoczesne dyski SSD mają tendencję do ograniczania IOPS, a defragmentowane systemy plików wymagają mniejszej liczby operacji we / wy.
David Schwartz
5
Do punktu @DavidSchwartz liczba zapisów / operacji usuwania potrzebnych do spontanicznego zabicia nowoczesnego dysku SSD jest absurdalnie wysoka. O ile nie przetwarzasz nadzwyczajnej ilości informacji, Twój dysk SSD najprawdopodobniej będzie trwał dłużej niż wiele innych komponentów, nawet jeśli wykonujesz konwencjonalne defragmentacje.
DanK
29
Dlaczego chcesz defragmentować dysk SSD? Celem defragmentacji jest spowodowanie, aby pliki były ciągłe na dysku, aby głowice czytające nie musiały szukać całego miejsca (co wymaga czasu, ponieważ wymaga fizycznego ruchu), aby odczytać plik. Nie jestem ekspertem, ale dyski SSD AFAIK są półprzewodnikowe i mają dostęp losowy. Wszystkie dostępy trwają w tym samym czasie, więc nie powinno mieć znaczenia, w jaki sposób bloki plików są dystrybuowane.
jamesqf
6
Jak zauważa Ajedi32, zalecenia dotyczące dwóch pytań są całkowicie przeciwne. To powinno wpłynąć na kierunek duplikatu. Jeśli zalecenia dotyczące drugiego pytania są teraz uważane za błędne, jedynym sposobem, w jaki czytelnicy, którzy tam wylądują, znajdą odpowiedzi na to pytanie, jest to, że zrobiono z niego duplikat tego pytania.
fixer1234,

Odpowiedzi:

135

Pozwól systemowi Windows wykonać swoją pracę. Raz w miesiącu wykonuje pełną defragmentację , również na dysku SSD, w celu optymalizacji wewnętrznych metadanych.

Krótka odpowiedź brzmi: tak, Windows czasami defragmentuje dyski SSD, tak, ważne jest, aby inteligentnie i odpowiednio defragmentować dyski SSD, i tak, Windows jest inteligentny w kwestii tego, jak traktuje dysk SSD.

Oto odpowiedź od Microsoft:

Storage Optimizer będzie defragmentował dysk SSD raz w miesiącu, jeśli włączone są migawki woluminów. Jest to zgodne z projektem i konieczne ze względu na powolne kopiowanie volsnap przy wydajności zapisu na pofragmentowanych woluminach SSD . Jest to również trochę nieporozumienie, że fragmentacja nie stanowi problemu na dyskach SSD. Jeśli dysk SSD zostanie zbyt rozdrobniony, możesz osiągnąć maksymalną fragmentację pliku (gdy metadane nie mogą reprezentować więcej fragmentów pliku), co spowoduje błędy podczas próby zapisu / rozszerzenia pliku. Co więcej, więcej fragmentów plików oznacza więcej metadanych do przetworzenia podczas odczytu / zapisu pliku, co może prowadzić do obniżenia wydajności.

Jeśli chodzi o Retrim, to polecenie powinno działać zgodnie z harmonogramem określonym w interfejsie użytkownika dfrgui. Retrim jest konieczny ze względu na sposób przetwarzania TRIM w systemach plików. Ze względu na różną wydajność sprzętu reagującego na TRIM TRIM jest przetwarzany asynchronicznie przez system plików. Gdy plik zostanie usunięty lub miejsce zostanie zwolnione w inny sposób, system plików ustawia w kolejce żądanie przycięcia do przetworzenia. Aby ograniczyć wykorzystanie zasobów podglądu, kolejka może wzrosnąć tylko do maksymalnej liczby żądań przycinania. Jeśli kolejka ma maksymalny rozmiar, przychodzące żądania TRIM mogą zostać odrzucone. Jest to w porządku, ponieważ od czasu do czasu będziemy przechodzić i wykonywać Retrim z Storage Optimizer. Retrim jest wykonywany z dokładnością, która nie powinna przekraczać maksymalnego rozmiaru kolejki żądań TRIM, w którym TRIM są upuszczane.

Zainstaluj system Windows na dysku SSD i zapomnij o tym. Windows zrobi wszystko sam.

magicandre1981
źródło
17
Czasami narzekamy na to, że Microsoft jest taki głupi. Ale czasami jestem po prostu zaskoczony, jak dobrze przemyślane są niektóre elementy systemu Windows.
BlueWizard,
1
AFAIK Linux / EXT wcale nie musi tego robić.
spraff
6
Fragmentacja jest ograniczona do minimum w EXT, ale może nadal występować w szczególnych przypadkach użycia, przynajmniej w Ext3: en.wikipedia.org/wiki/Ext3#Dis minusy
Bret
6
Warianty EXT fragmentują i tracą wydajność. Każdy, kto mówi inaczej, przewodzi kłamstwom nad Linuksem. Źródło: Zaimplementowałem dla niego sterownik i tak się dzieje.
imallett,
1
@spraff to dlatego, że EXT pozostawia spacje między blokami, a plik nie musi być częściowo zapisywany w innym miejscu, gdy rośnie. Kiedy rośnie. Zasadniczo, gdy masz plik wideo (który nigdy nie rośnie), nadal zajmuje więcej miejsca niż jest to potrzebne, a zatem marnuje miejsce. Żaden system nie jest idealny
BlueWizard
50

Właśnie dowiedziałem się, że należy „Nigdy nie defragmentować dysku SSD”. Ale nie mam pojęcia, czy to prawda.

Trochę wiedzy jest niebezpieczne. Nigdy nie defragmentuj dysku SSD to prawdopodobnie dobry pomysł, jeśli Twój system jest całkowicie nieświadomy tego, czym jest dysk SSD - powiedzmy Windows XP. A jeśli dyski SSD były delikatnymi płatkami śniegu, które mogą się zużyć i stopić w ostrym upale normalnego użytkowania - mam szczegółową odpowiedź na pytanie, dlaczego tak nie jest . Jest to dość trudne do „zużywają się” dysku w trakcie normalnego użytkowania. Warto się tego oduczyć.

Weźmy pod uwagę, że jeśli twoja aplikacja zabijała dyski SSD lub nawet robiła ciężkie zapisy, jak to robił Spotify , ludzie by się przerzucali. I dość często ludzie piszący systemy operacyjne są sprytni.

Do pozostałej części odpowiedzi odnoszę się do tego postu na blogu od Scotta Hanselmana. Odpowiedź Magicandre również dotyczy tego, ale w pewnym sensie wyciągnąłem z tego różne lekcje. Warto przeczytać szczegóły. Korzystam z kilku swobód związanych z tym, jak reprezentuję informacje. Zacznę od tego

Myślę, że głównym nieporozumieniem jest to, że większość ludzi ma bardzo przestarzały model układu dysku \ pliku i tego, jak działają dyski SSD.

Dyski SSD rozpadają się i fragmenty te należy śledzić . Na podstawowym poziomie defragmentacja dysków SSD pomaga systemowi plików działać wydajnie, nawet jeśli różni się od tego, jak wyglądałby napęd z wirującą rdzą. Wspomniany post wskazuje, że migawki woluminów byłyby wolne bez defragmentacji.

Dyski SSD mają również koncepcję TRIM. Chociaż TRIM (retrim) jest koncepcją odrębną od fragmentacji, nadal jest obsługiwany przez podsystem Windows Storage Optimizer, a harmonogramem zarządza ten sam interfejs użytkownika z perspektywy użytkownika.

TRIM jest dobry. Przycinanie oszczędza zapisy, ponieważ jest to mechanizm oznaczania bloków jako przeczytane bez ich usuwania i kasowania w razie potrzeby.

Ktokolwiek powiedział ci, aby nigdy nie defragmentować dysku, nie ma pojęcia, że ​​nowoczesne systemy operacyjne są przeznaczone dla dysków SSD i że wdrożono niezbędne procesy porządkowe.

Kuszące jest założenie, że wiesz lepiej, ale w tym przypadku ludzie, którzy napisali system operacyjny, zoptymalizowali dla Ciebie. Zachowaj spokój i pozwól systemowi Windows defragmentować dysk.

Journeyman Geek
źródło
8
Myślę, że ta odpowiedź zostałaby znacznie poprawiona poprzez podanie adresów bloków logicznych zamiast adresów bloków fizycznych. Nie można defragmentować dysku SSD, ponieważ procedura na poziomie systemu plików, która skutkuje sekwencyjnymi adresami logicznymi, nadal spowoduje rozproszenie danych po całym dysku fizycznym z powodu mapowania flash, i to jest OK, ponieważ dyski SSD mają dostęp losowy.
Ben Voigt
Szczerze mówiąc, jest to koncepcja, której wciąż nie obejmowałem głową. Wierzę, że pełne ich rozpatrzenie dałoby niesamowitą odpowiedź na jedno z moich pytań i mam na swoim koncie testowym kilku przedstawicieli, którzy z przyjemnością nagrodzę za to.
Journeyman Geek
22

Dla kompletności:

Fragmentacja zależy od systemu plików (FS) , a nie od dysku lub systemu operacyjnego.

Oznacza to, że odpowiedź na twoje pytanie tak naprawdę nie wymaga pytania o Windows *; SSD to szczególny przypadek - działa inaczej niż zwykły dysk.

FS to sposób organizowania plików na dysku. Najpopularniejsze formaty Windows to NTFSi FAT32. Najpowszechniej stosowane są FSS na Linux ext3/ ext4, ale istnieje wiele innych ( zfs, xfs, jfs, ReiserFS, btrfs, i więcej).

Dysk jest podzielony na bloki . Możesz to sobie wyobrazić jako długą taśmę, na której możesz zapisać niektóre dane. Kiedy zapisujesz coś na dysku, używasz tych bloków. Oczywiście chcesz, aby powiązane pliki były zapisywane obok siebie, a jeden plik zapisywany w jednym bloku, więc nie musisz przeskakiwać taśmy. Kiedy wszystko jest rozproszone, nazywamy to fragmentacją . Defragmentacja je organizuje.

Oczywiście sposób organizacji rzeczy (FS) określa, jak dobrze są one zorganizowane (czy występuje fragmentacja). Jeśli od samego początku organizujesz swoje pliki, nie będziesz mieć fragmentacji. Tak dzieje się w niektórych systemach plików (np. W extrodzinie). Te systemy plików organizują pliki w locie (przed zapisaniem), abyś nie musiał ich defragmentować, chyba że w szczególnych okolicznościach, kiedy nie było innego wyjścia, jak tylko wprowadzić trochę nieporządku.

Aby uzyskać więcej informacji na temat ext4tego, jak zapobiega fragmentacji, możesz odnieść się do tej strony

Teraz dysk SSD działa inaczej; to nie taśma. Możesz uzyskać natychmiastowy dostęp wszędzie. Cały defragmentacja polega na tym, że porządnie porządkujesz swoje pliki, abyś nie musiał skakać. Nie ma sposobu na przeskakiwanie na dysku SSD. Nie obchodzi cię, czy musisz dostać się na drugi koniec taśmy tam iz powrotem; nie ma taśmy.

Istnieją jednak inne sposoby optymalizacji dysku SSD. Zobacz ten temat do wyjaśnienia.

*Prawie; wybór systemu plików jest skorelowany z systemem operacyjnym. Większość użytkowników Linuksa korzysta z FS innego niż Windows lub OS X.

MatthewRock
źródło
3
Dokładnie to. Fragmentacja zachodzi na poziomie FS, niezależnie od nośnika pamięci. Niektóre media są bardziej dotknięte przez to niż inne, ale zawsze ma pewien wpływ i nie zniknie tylko dlatego, że masz dysk SSD.
Dmitrij Grigoriew
1
Główną różnicą jest tak naprawdę Ext3 i FAT w porównaniu z Ext4 i NTFS; ale nawet wtedy aplikacje, system operacyjny, a nawet sprzęt mają swój wkład , często znacznie. System Windows organizuje pliki używane podczas uruchamiania w takiej kolejności, w jakiej są używane, na przykład - pozwalając, aby większość startupów używała odczytów blokowych zamiast przeszukiwania. Można to nazwać defragmentacją - po prostu poza defragmentacją na poziomie FS (zmniejszenie fragmentacji plików), „defragmentuje” grupy plików w celu zoptymalizowania dostępu w sposób, w jaki FS nie może naprawdę pomóc. Można sobie wyobrazić wiele podobnych optymalizacji, np. Przenoszenie bibliotek DLL w pobliżu plików EXE.
Luaan
Istnieje wiele różnych warstw, które wszystkie mają znaczenie na swój sposób. Na przykład paski są sposobem celowej fragmentacji, która może poprawić wydajność. Fizyczna organizacja dysku twardego może również z niego korzystać, jeśli dysk twardy ma wiele głowic, które mogą odczytywać jednocześnie z wielu talerzy. Dyski SSD nie muszą obracać talerza i poruszać głowami w poszukiwaniu, ale nadal mają limit IOPS - a przy dzisiejszej prędkości dysków SSD jest to często ważniejsze niż przepustowość. Poszukiwania SSD nie są już wystarczająco szybkie, aby nasycić przepustowość. Fragmentacja jest niewielką częścią podstawowego problemu - buforowania.
Luaan
@Luaan: Nie ma czegoś takiego jak „SSD seek”. Myślę, że tak naprawdę mówisz o narzutach związanych z przetwarzaniem poszczególnych poleceń.
Ben Voigt
1
@BenVoigt Myślę, że Luaan oznacza, że ​​nieskonsolidowane pliki nadal czytają nawet na dyskach SSD. Nie ma opóźnienia wyszukiwania, ale istnieje znacząca różnica między odczytami sekwencyjnymi i losowymi na dyskach SSD.
user1306322
7

Istniejące odpowiedzi są świetne, ale mam kilka rzeczy do ich uzupełnienia ...
I defragmentacji mój SSD i wyłączyć automatyczne TRIM , ale na zupełnie innych powodów niż wymienione:

  1. Chcę móc odzyskać pliki lub partycje, jeśli i kiedy coś przypadkowo usunę.
    Nie, to nie zdarza się często, ale kilka razy się zdarzyło, frustracja była niemożnością odzyskania rzeczy, które byłbym w stanie odzyskać na dysku twardym, nawet gdy próbowałem je odzyskać natychmiast po usunięciu .

  2. I rozwijać, kurczyć, a nawet przenieść partycje około co kilka miesięcy, a defragmentacji i konsolidacji plików czyni tę operację znacznie szybciej i mniej ryzykowne. Można by pomyśleć, że można dziś zaufać menedżerom partycji, ale jeszcze w grudniu 2015 r. Wystąpiły błędy (korupcja) podczas zwykłych operacji przenoszenia / zmiany rozmiaru. A mądrzejsi menedżerowie partycji starają się unikać uruchamiania na woluminach, które są mocno pofragmentowane przed wyrządzeniem jakichkolwiek szkód (i zwykle, choć nie zawsze, udaje się).

  3. Czasami używam Linuksa i zostałem spalony przez jego uszkodzenie woluminów NTFS jeszcze jakiś rok temu. Nie wynika to konkretnie z fragmentacji, ale widząc, że nie może nawet poprawnie obsługiwać niefragmentowanych plików, jestem w defensywie i staram się przedstawić jak czysty wolumin, jak to możliwe (i nawet wtedy unikam pisania większości czasu).

Smutną częścią # 2 i # 3 jest to, że ludzie, którzy nie widzieli tych problemów na własne oczy, zawsze myślą, że oszalałem i zmyślam to wszystko, lub że mój system musi jakoś zostać uszkodzony. Ale powieliłem je kilka razy na wielu systemach i jako ktoś, kto napisał własne czytniki NTFS, wiem coś o systemach plików i programowaniu jądra ... z NTFS w centrum uwagi. Więc znam błędy, kiedy je widzę. Nikt mi nie wierzy, ale i tak ostrzegam ludzi, biorąc pod uwagę, że widziałem, jak to się dzieje na własne oczy - więc jeśli masz problemy z partycjami lub korzystasz z Linuksa, zalecam defragmentację dysków. YMMV.

Aha, i nie zapomnij uruchamiać TRIM ręcznie co jakiś czas, gdy nie musisz niczego odzyskiwać. Chociaż, jeśli mam być szczery, nie widzę z tego żadnych korzyści ...

Mehrdad
źródło
1
Doskonale, jest to dobra procedura do defragmentacji (a nawet „zerowania”) dysków flash z tych samych powodów, szczególnie w przypadku fotografii. Przylegające pliki można łatwiej odzyskać, nawet częściowo. Odsuń czas, skorzystasz również z pobierania wstępnego (czytaj dalej), jeśli system operacyjny jest wystarczająco sprytny. Dyski SSD są zwykle wolniejsze niż pamięć (choć nie zawsze jest to prawda).
mckenzm,
Czy twoja rada dotycząca Linuksa nie jest tak naprawdę „jeśli używasz Linuksa i montujesz system plików NTFS do odczytu / zapisu”, a nie „jeśli w ogóle używasz Linuksa”? Używanie Linuksa z ext4 lub XFS na SSD jest całkowicie bezpieczne. (I FAT, jeśli o to chodzi, żebyś mógł utworzyć partycję FAT do wymiany danych, jeśli zajdzie taka potrzeba).
mattdm
@mattdm: Tak, tak myślę. (Dziwne, myślałem, że już na to odpowiedziałem ...)
Mehrdad
0

Możesz defragmentować swoje ssd. Powinieneś? Z pewnością niezbyt często, ale jest kilka przypadków, w których rzadko może być korzystne.

a) Masz Samsung Evo 840 dotknięty powolnym odczytem błędu starych plików. Defragmentacja skutecznie je przepisuje i nie będą już starymi plikami.

b) Podczas gdy wpływ fragmentacji na dyski SSD jest wyjątkowo niewielki, kontroler nadal musi ponownie składać pliki, które są rozproszone na wiele układów flash. Wpływ tego na wydajność jest bardzo niewielki, ale ponownie defragmentacja powinna zreorganizować pliki i ułatwić kontrolerowi ich ponowny montaż.

c) Jeśli masz coś zbliżonego do nowoczesnego ssd, od czasu do czasu defragmentacja nie wpłynie na jego czas życia, aby mieć znaczenie. W 2018 roku serwis techniczny przeprowadził test wytrzymałości ssd, a Samsung evo 840 500GB, który wykorzystuje 2d tlc (który ma bardzo złą wytrzymałość), zawiódł przy około 600 TB zapisów. Wszystko lepsze jest prawdopodobnie przy użyciu 3d tlc (zwanego przez niektóre firmy vnand), który ma znacznie większą wytrzymałość. Większe modele mają również więcej komórek do zapisu, co dodatkowo zwiększa wytrzymałość. A jeśli masz dużą profesjonalną wytrzymałość dysku, to zupełnie nie problem (w teście, o którym wspominałem wcześniej, Samsung pro 512 GB trwał przez 9 PB zapisów ... większe / nowsze modele powinny trwać jeszcze dłużej). Liczby te są praktycznie niemożliwe, chyba że próbujesz celowo. Pisze używane do zabijania (i tak tanie,

orange_juice6000
źródło
-3

Defragmentacja dysku SSD sprzyja wczesnemu uszkodzeniu bloków pamięci o najniższym adresowaniu.

Zobacz: http://techreport.com/review/27909/the-ssd-endurance-experiment-theyre-all-dead

„Nawet gdy algorytmy wyrównywania zużycia rozkładają równomiernie zapisy w pamięci flash, wszystkie komórki w końcu ulegną awarii lub staną się niezdatne do pracy. Gdy to nastąpi, zostaną wycofane i zastąpione pamięcią flash przydzieloną z nadmiarowego obszaru SSD. Ten zapasowy NAND zapewnia, że na dostępną dla użytkownika pojemność dysku nie ma wpływu wojna na zniszczenie niszcząca jego komórki ”.

„Straty ostatecznie przekroczą zdolność dysku do kompensacji, pozostawiając pytania bez odpowiedzi. Ile potrzeba zapisów? Co stanie się z twoimi danymi na końcu? Czy dyski SSD tracą jakąkolwiek wydajność lub niezawodność, gdy zapisy się gromadzą?”

jwzumwalt
źródło
5
Jest to skrajny przypadek, w którym dysk ma dużą ilość danych zapisanych i nadpisanych. Co to ma wspólnego ze zwykłym, rutynowym defragmentowaniem?
Journeyman Geek
Nie, to nie jest ekstremalny przypadek ... To test, który pokazuje wrodzoną lub ostateczną słabość produktu. Testy mają na celu pokazanie limitów.
jwzumwalt
-6

Każda komórka na dysku SSD zwalnia za każdym razem, gdy jest przepisywana. Dysk ukrywa się, śledząc, do których komórek zostały zapisane, i najpierw pisząc do mało używanych komórek. Defragmentacja oznacza masowe przepisywanie wielu komórek i dlatego zużyje dysk SSD. Dyski HD korzystają z defragmentacji, ponieważ poprawia się wydajność, ponieważ nie trzeba często przesuwać ramienia serwomechanizmu, ale dyski SSD nie są tak spowalniane przez losowe umieszczanie danych.

Christopher Hostage
źródło
10
Nie głosowałem negatywnie, ale chciałbym zobaczyć źródła tego.
brichins
3
Mylisz wzmocnienie zapisu z wyrównaniem zużycia . Dyski SSD muszą zostać skasowane, zanim będą mogły pisać, ale usuwają większe bloki, niż potrafią pisać. Oznacza to, że pojedynczy zapis może wykonać wiele zapisów w celu przetasowania danych i zwolnienia bloku do usunięcia. W miarę wzrostu liczby zapisów proces ten staje się bardziej skomplikowany. To jest wzmocnienie zapisu. Istnieją różne sposoby radzenia sobie z tym, takie jak TRIM i nadmierne przydzielanie zasobów. Wyrównanie zużycia rozdziela komórki, do których piszesz, aby nie zawiodły całkowicie.
Schwern