Soll ich ein SSD-Laufwerk defragmentieren? [Duplikat]

57

Kann ich Windows defragauf einem SSDLaufwerk ausführen ?

Nun, ich glaube, die kurze Antwort lautet: Ja , ich habe gehört, dass SSD-Laufwerke spezielle und spezifisch zugeschnittene Defragmentierungsprogramme erfordern .

Ist es wahr und wenn ja, wo kann ich es bekommen?

Royi Namir
quelle
6
In Wirklichkeit brauchen / wollen Sie kein SSD-Laufwerk defragmentieren ... dies würde Ihren Zugriff nicht beschleunigen usw.
woliveirajr
Ich denke, fast alle diese Antworten auf die Superuser-SSD-Fragmentierung sind falsch ... zumindest was fragmentierte Schreibvorgänge angeht. Ja, Wear Leveling fragmentiert Dateien absichtlich. Dies geschieht jedoch in Schritten der Größe des Löschblocks. Wenn der minimale Teil des Dateisystems kleiner als der Löschblock ist (fast immer und um einen großen Faktor), führt eine fragmentierte Datei beim Schreiben dazu, dass viel mehr Löschblöcke neu geschrieben werden. Tatsächlich kann es zu einer erheblichen Beeinträchtigung der Schreibleistung kommen, wenn die Blöcke / Cluster / Inodes / usw. in verschiedenen Löschblöcken stark fragmentiert sind.
Darron
Und mit "billigem" Flash-Speicher wie USB und SD wird es noch viel schlimmer: google.com/search?q=how%20to%20damage%20flash%20storage
MarcH

Antworten:

110

Da dies kontrovers zu sein scheint, hielt ich es für hilfreich, eine detaillierte Erklärung abzugeben:

Sie sollten niemals eine SSD defragmentieren. Denk nicht einmal darüber nach. Der Grund dafür ist, dass die Platzierung physischer Daten auf einer SSD ausschließlich von der Firmware der SSD verwaltet wird und Windows NICHT darüber informiert wird, wie die Daten tatsächlich auf der SSD gespeichert sind.

Dies bedeutet, dass die physische Datenposition, die ein Defragmentierer in seinem ausgefallenen Sektordiagramm anzeigt, nichts mit der Realität zu tun hat. Die Daten befinden sich NICHT dort, wo Windows sie vermutet, und Windows hat keine Kontrolle darüber, wo die Daten tatsächlich abgelegt werden.

Ausgleichen der Nutzung der internen Speicherchips Die SSD-Firmware teilt Daten absichtlich auf alle Speicherchips der SSD auf und verschiebt auch Daten auf diesen Chips, wenn sie nicht mit Lesen oder Schreiben beschäftigt sind (um die Nutzung der Chips auszugleichen) .)

Windows sieht nichts davon. Wenn Sie also eine Defragmentierung durchführen, verursacht Windows einfach eine ganze Reihe von unnötigen E / A-Vorgängen für die SSD, und dies verringert lediglich die Nutzungsdauer der SSD.

Kleiner Helfer
quelle
8
@ Royi Eigentlich tut das Lesen einer SSD nicht weh, das Schreiben auch.
Kleiner Helfer
54
Darüber hinaus haben SSDs keine Suchzeit, sodass das Anordnen Ihrer Dateien in aufeinanderfolgenden Blöcken keinen Leistungsvorteil bietet.
200_erfolg
5
@OlivierDulac: Obwohl Ihre Daten korrekt sind, sind die Schlussfolgerungen völlig falsch. Es sind 3K-Zyklen pro Zelle . SSDs verfügen über fortschrittliche Chips, die gewährleisten, dass die Schreibvorgänge gleichmäßig auf die Zellen verteilt werden und Hotspotting verhindert wird. Und mit TLC sind es sogar nur 1000 Zyklen pro Zelle. Dies bedeutet, dass 256 GB TLC-SSD mit 10 GB Schreibzugriff pro Tag und 3-facher Verstärkung eine Lebensdauer von 12 Jahren haben. 256 GB MLC-SSD unter denselben Bedingungen halten 70 Jahre . Und selbst das sind sehr konservative Schätzungen, im wirklichen Leben scheinen sich viel, viel länger dauern anandtech.com/show/6459/...
vartec
6
Neue Zuverlässigkeitsumfrage zeigt überraschende SSD- Fehlerrate (2012-09-12)
Gary S. Weaver
5
@ 200_success Tatsächlich haben SSDs Suchzeiten. Insbesondere können SSDs schneller lesen und schreiben, wenn Sie Daten nacheinander verwenden. Diese Person erklärt es viel besser als ich: dpreview.com/forums/post/40353067 Ich weiß nicht, ob diese Geschwindigkeitssteigerung auf eine Art "Cache-Fehler" zurückzuführen ist, da das Ändern der Adresse Zeit in Anspruch nimmt oder etwas, das ich kann. Ich kann es mir nicht vorstellen, aber SSDs haben eine Verzögerung für nicht-sequentielle Verwendungen. Und das bedeutet für mich, dass sie eine Suchzeit haben.
Patrick M
25

Jemand (200_success) hat einen Kommentar abgegeben, der für die Frage viel relevanter ist und eine genauere Beschreibung wert ist.

Zuallererst: HDD bedeutet Festplattenlaufwerk und es enthält wirklich eine Festplatte. Diese Platte besteht aus kleinen Teilen, Sektoren genannt, auf denen Informationen gespeichert sind. Schauen Sie sich dieses Bild an:

Disk-Image

Ein Sektor ist mit dem Buchstaben C gekennzeichnet.

Jetzt ist dieser Sektor sehr klein: im Allgemeinen nur 512 Bytes. Um eine gemeinsame Datei mit 10 KB zu speichern, müssen Sie viele Sektoren verwenden.

Stellen Sie sich vor, dass diese Sektoren wie die grüne Darstellung mit dem Buchstaben D im Bild aufeinander folgen. Wenn Sie die Datei lesen müssen, befindet sich der Festplattenkopf am Anfang des ersten Sektors und liest alle Daten, während sich die Festplatte dreht.

So sollte es funktionieren.

Jetzt könnte es passieren, dass die Datei über viele Sektoren verteilt ist, jeder auf einem Teil der Festplatte. Was bedeutet das? Wenn Sie Ihre Datei erneut lesen möchten, wird der Festplattenkopf am Anfang des ersten Sektors positioniert. Lesen Sie ihn. Dann muss er zum Anfang des zweiten Sektors (der sich an einer anderen Stelle auf der Festplatte befindet) verschoben werden. werde es lesen und so weiter ...

Dies wird lange dauern. Wir sprechen von einer körperlichen Bewegung des Kopfes. Je mehr sich der Kopf bewegt, desto länger dauert es.

Sie defragmentieren also die Festplatte: Das Programm versucht, alle Teile der Datei so zu verschieben, dass sie der Reihe nach ablaufen. Dies ist einfacher und schneller zu lesen, da der Kopf weniger physisch bewegt wird, um alles zu lesen.

Okay so weit? Also fangen wir an, über SSD zu sprechen: Es sind ein paar Speicherchips auf einer Platine. Wenn Sie etwas von ihnen speichern oder lesen, muss der Controller-Chip nur einige Bits aktivieren, und voilà , der richtige Chip wird aus dem Speicher gelesen. Dabei spielt es keine Rolle, wo es gespeichert ist, der Zugriff auf einen Speicherchip ist viel schneller als die physische Bewegung der Festplatte. Grob gesagt würden Sie diese Zeit in einer fragmentierten Datei auf einer SDD nicht bemerken.

Und da der Controller - Chip detaillierter und korrekter ist, wird er Ihre Datei auf viele Chips verteilen, um die Vorteile paralleler Lesevorgänge usw. zu nutzen. So weiß er, wie Ihre Dateien zu behandeln sind, damit sie immer optimal gespeichert werden (hinsichtlich Geschwindigkeit und Geschwindigkeit optimiert) Abnutzung dieser Speicherchips), als Windows wissen könnte.

woliveirajr
quelle
Die Fragmentierung ist nicht nur ein Problem der physischen Festplatte, sondern auch des Dateisystems, das Ihre Daten verwaltet. In stark fragmentierten Dateien sind viele Erweiterungen / Läufe in ihrem NTFS-Datensatz gespeichert, die verarbeitet werden müssen, wenn Sie die gesamte Datei von der Festplatte lesen. Bei einer SSD ist das nicht anders.
Gene
Die Defragmentierung zur Behebung einiger kleinerer Probleme in der NTFS-Organisation unterscheidet sich von der Defragmentierung, die die Leistungsprobleme durch rotierende Festplatten mit sich bewegenden Köpfen ausgleicht. Der einzige Grund, warum NTFS diese Ausmaße hat, ist das Drehen von Festplatten mit sich bewegenden Köpfen, oder?
Kaz
@Gene: Er hat nicht gesagt, dass er NTFS verwendet ... Ja, Defragmentierung hilft der Leistung, wenn Sie ein Top-Benutzer sind :-). Aber nicht das erstaunliche Ergebnis, das jemand hatte, als er eine Festplatte in der Win95-Ära defragmentierte. Und das häufige Defragmentieren, um diese 0,01 Mikrosekunden zu erzielen, ist den Verschleiß nicht wert. Wir machen uns Sorgen um die Defragmentierung in SSD und werden in einigen Tagen darüber diskutieren, ob es sich lohnen wird, das Interleave der Sektoren in SSD so zu ändern, wie es in diesen Disketten war . ;-)
woliveirajr
2
@woliveirajr - Ich erinnere mich, dass ich das Interleave auf meiner Festplatte Ende der 1980er Jahre geändert und die Geschwindigkeit meines PCs mehr als verdoppelt habe. Ich frage mich gelegentlich, ob Interleave auf den heutigen PCs einen Unterschied macht.
Paddy Landau
@PaddyLandau :) Soweit ich weiß, müssen alle Festplatten tatsächlich nicht verschachtelt werden (alle Sektoren werden hintereinander gelesen, es ist nicht erforderlich, eine Verschachtelung
festzulegen
13

Das in Windows 8 integrierte Defragmentierungstool defragmentiert Ihre SSD nicht, sondern sendet eine Reihe von Trimmbefehlen an das Gerät. Weitere Einzelheiten hierzu finden Sie in dieser Frage . Wie Roberts bereits betont hat, möchten Sie Ihre SSD überhaupt nicht defragmentieren.

Gen
quelle
2
Das ist cool, ich wusste nicht, dass Windows 8 SSDs optimieren kann. Für mein Intel-Laufwerk unter Windows 7 können Sie ein Programm namens SSD Toolbox von Intel verwenden, um die Leistung des Laufwerks zu optimieren. Ich habe nie bemerkt, dass es wirklich einen Unterschied macht.
Tim B