Die Benchmarks sind klar: Solid State Drives verlangsamen Sie, während Sie sie füllen. Füllen Sie Ihr Solid-State-Laufwerk bis fast zur vollen Kapazität, und die Schreibleistung nimmt dramatisch ab. Der Grund dafür liegt in der Funktionsweise von SSDs und NAND-Flash-Speichern.
Das Ausfüllen des Laufwerks ist eine der folgenden Möglichkeiten Dinge, die Sie niemals mit einem Solid-State-Laufwerk tun sollten . Ein fast volles Solid-State-Laufwerk hat viel langsamere Schreibvorgänge und verlangsamt Ihren Computer.
Leere und teilweise gefüllte Blöcke
Wenn Sie eine Datei auf Ihr Solid-State-Laufwerk schreiben, sucht sie nach leeren Blöcken und füllt diese. Das Schreiben in einen leeren Block ist die schnellstmögliche Schreiboperation. Aus diesem Grund unterstützen neue Betriebssysteme (Windows 7 und höher) die TRIM-Funktion, mit der die Daten einer Datei automatisch vom Solid-State-Laufwerk gelöscht werden, sobald Sie die Datei in Ihrem Betriebssystem löschen. Dies funktioniert anders als bei magnetischen Festplatten Teile gelöschter Dateien befinden sich auf der Festplatte .
Sie sitzen nicht auf einem Solid-State-Laufwerk herum - TRIM stellt sicher, dass der Block geleert wird, damit die SSD in Zukunft schnell neue Daten in den leeren Block schreiben kann. Das Schreiben über einen bereits geschriebenen Sektor ist genauso schnell wie das Schreiben in einen leeren Sektor auf einer technischen Festplatte, aber eine Solid-State-Festplatte muss einen Block löschen, bevor sie darauf schreibt.
Der NAND-Flash-Speicher schreibt Daten auf 4-KB-Seiten in 256-KB-Blöcken. Um einem teilweise gefüllten Block zusätzliche Seiten hinzuzufügen, muss das Solid-State-Laufwerk den gesamten Block löschen, bevor Daten darauf zurückgeschrieben werden.
Wenn Ihr Solid-State-Laufwerk voll ist, stehen immer weniger leere Blöcke zur Verfügung. An ihrer Stelle stehen teilweise gefüllte Blöcke. Das Solid-State-Laufwerk kann die neuen Daten nicht einfach in diese teilweise gefüllten Blöcke schreiben - dies würde die vorhandenen Daten löschen. Anstelle einer einfachen Schreiboperation muss das Solid-State-Laufwerk den Wert des Blocks in seinen Cache lesen, den Wert mit den neuen Daten ändern und ihn dann zurückschreiben. Bedenken Sie, dass das Schreiben einer Datei wahrscheinlich das Schreiben in viele Blöcke umfasst, sodass dies zu einer erheblichen zusätzlichen Verzögerung führen kann.
TRIM konsolidiert teilweise gefüllte Blöcke nicht
Wenn Sie ein Laufwerk voll oder fast voll füllen, werden nach dem Löschen von Dateien wahrscheinlich viele teilweise gefüllte Blöcke angezeigt. Der Befehl TRIM weist nur ein Solid-State-Laufwerk an, Dateidaten zu entfernen, wenn die Datei gelöscht wird. Das Laufwerk wird nicht zu Bereinigungsvorgängen gezwungen.
Mit anderen Worten, füllen Sie ein Solid-State-Laufwerk mit voller Kapazität, bevor Sie Dateien löschen, und Sie werden wahrscheinlich viele teilweise gefüllte Blöcke erhalten. Das Laufwerk wird sich nicht die Mühe machen, diese teilweise gefüllten Blöcke zu vollen Blöcken zusammenzufassen und leere Blöcke freizugeben. Das Laufwerk ist weiterhin voll mit teilweise gefüllten Blöcken, und die Schreibleistung wird beeinträchtigt.
Überprovisionierung und Speicherbereinigung
Um zu verhindern, dass Verbraucher ihre Solid-State-Laufwerke füllen und die Leistung stark beeinträchtigt, bemühen sich die SSD-Hersteller, dem entgegenzuwirken.
Solid-State-Laufwerke für Endverbraucher legen häufig etwa 7% ihres gesamten Flash-Speichers beiseite und machen sie für den Benutzer nicht verfügbar. Dies wird als "Überprovisionierung" bezeichnet. Dem Laufwerk wird zusätzliche Speicherhardware hinzugefügt, die für den Computer jedoch nicht als verfügbarer Speicher sichtbar ist. Der freie Bereich stellt sicher, dass das Laufwerk niemals vollständig voll werden kann - es wird immer eine freie Kapazität vorhanden sein, um die Schreibleistung stabil zu halten.
Der Controller jedes Solid-State-Laufwerks verfügt über einen Garbage-Collection-Algorithmus, um dieses Problem zu beheben. Wenn das Laufwerk voll ist, sucht es nach teilweise gefüllten Blöcken und beginnt, diese zu konsolidieren, wodurch so viele leere Blöcke wie möglich frei werden. Verschiedene Solid-State-Laufwerke führen diese Vorgänge zu unterschiedlichen Zeiten und Schwellenwerten aus - dies hängt von der Steuerung des Laufwerks ab.
Benchmark-Evidenz
Anandtech führte verschiedene Benchmarks durch mit verschiedenen Laufwerken, um die Beziehung zwischen dem freien Bereich eines Solid-State-Laufwerks und der Konsistenz seiner Schreibvorgangsleistung herauszufiltern. Beim Auffüllen eines leeren Laufwerks stellten sie sehr früh im Prozess eine hohe Schreibleistung und einen deutlichen Rückgang fest, da die Schreibvorgänge das Laufwerk weiterhin füllten.
Durch die Bereitstellung von mehr freiem Speicherplatz auf den Laufwerken blieb die Leistung konstant, da sichergestellt war, dass auf dem Laufwerk immer genügend leere Blöcke bereitstehen sollten.
Sie stellten fest, dass sich die Mindestleistung erheblich verbessert, sobald Sie 25% freie Fläche für diese [consumer]-Laufwerke erreichen. Ihre letzte Empfehlung lautete, dass Sie "nur etwa 75% der [your drive’s]-Kapazität nutzen sollten, wenn Sie ein ausgewogenes Verhältnis zwischen Leistungskonsistenz und Kapazität wünschen".
Wenn Sie ein Solid-State-Laufwerk haben, sollten Sie versuchen, mehr als 75% seiner Kapazität nicht zu verwenden. Kaufen Sie ein größeres Laufwerk mit mehr Speicherplatz als Sie benötigen, und stellen Sie sicher, dass Sie immer eine konsistente Schreibleistung haben. Glücklicherweise werden SSDs nach und nach viel billiger, sodass dies nicht mehr so teuer ist wie früher.
Bildnachweis: Music Sorter at Wikimedia Commons , Simon Wüllhorst on Flickr