Go to Top

Kingston Technology Gastartikel: Auswirkungen von Garbage Collection und TRIM auf die SSD-Leistung

Alle Flash-basierten Speichergeräte, einschließlich SSDs, sind ziemlich einzigartig in der Art und Weise, wie sie mit zuvor gelöschten Daten umgehen. Wenn eine Datei unter Windows oder einem anderen Betriebssystem gelöscht wird, ist die Datei noch auf dem Speichergerät vorhanden, sei es auf einer Festplatte oder auf einer SSD. Für den Zweck dieses Artikels nennen wir Daten, die vom Betriebssystem gelöscht wurden, sich aber noch auf dem Speichergerät befinden, „Garbage Data“. Bei einer Dateilöschung geht das Betriebssystem davon aus, dass die Adresse, an der sich die Datei befand, nun leer ist und bei Bedarf erneut überschrieben werden kann. Wenn das Betriebssystem einen Befehl zum Schreiben von Daten an einen Speicherort ausgibt, an dem sich zuvor Daten befunden haben, überschreibt die Festplatte die Speicherdaten ohne jegliche Probleme. Bei allen NAND Flash-basierten Speichern (USB-Flash-Laufwerke, SD-Karten, SSDs usw.) ist dies nicht möglich.  Die SSD muss vor dem Schreiben den Inhalt der Speicherzelle löschen. Dieser Vorgang des Recyclings zuvor gelöschter Daten wird als Garbage Collection bezeichnet. Der Prozess der Garbage Collection – zu Deutsch der Speicherbereinigung und -strategien wird in der Firmware des SSD-Controllers programmiert und unterscheidet sich zwischen den Laufwerkherstellern.

Laufwerke, die einen effizienten Speicherbereinigungs- (garbage collection) -prozess verwenden, zeigen eine hervorragende Leistung, und zwar auch Monate später, während Laufwerke, die dies nicht tun, im Laufe der Zeit immer langsamer werden. Die Verlangsamung kommt daher, dass der Controller auf der SSD sich mit dem Recycling allen denjenigen Blöcken herumschlagen muss, die mit Mülldaten gefüllt sind.

Als Microsoft Windows® 7 herausbrachte, wurde dieses als erstes “SSD–fähiges Betriebssystem bezeichnet. Wenn eine im System installiertes SSD erkannt wird, deaktiviert das OS einige Funktionen zur Verbesserung der Festplattenleistung, die von der SSD nicht benötigt wird. Es ermöglicht auch eine SSD-spezifische Optimierung, die als TRIM-Befehl bezeichnet wird. Einfach ausgedrückt, ermöglicht der TRIM-Befehl dem Betriebssystem und der SSD, gemeinsam miteinander zu kommunizieren, wo sich die „Mülldaten“ befinden und diese zum Löschen zu markieren.

Wenn TRIM im Betriebssystem aktiviert ist, teilt das Betriebssystem beim Löschen einer Datei jetzt mit, dass die Adresse, an der sich die Datei befand, gesäubert werden kann, wenn das Laufwerk einen geeigneten Zeitpunkt dafür findet. Um diese Funktion zu aktivieren, muss die SSD den TRIM-Befehl unterstützen. Beachten Sie, dass alle Kingston-SSDs den TRIM-Befehl unterstützen.  Der TRIM-Befehl ist eine effektive Funktion, die SSDs über einen längeren Zeitraum hinweg konsistent hält, jedoch Einschränkungen aufweist. Sie ist darauf angewiesen, dass Sie über die SATA-Schnittstelle mit dem Laufwerk kommunizieren können. Wenn SSDs in einem RAID-Array konfiguriert sind, an einen HBA-Controller angeschlossen sind oder sich in einer NAS / SAN-Konfiguration außerhalb des Host-PCs befinden, erreicht der TRIM-Befehl die SSDs nicht.

Aktuelle Daten unserer Unternehmenskunden zeigen, dass Windows XP nach wie vor das dominierende Betriebssystem ist, das in ihren Umgebungen verwendet wird. Vor diesem Hintergrund haben wir uns vorgenommen, die Wirksamkeit der Garbage Collection-Funktion im Vergleich zu TRIM zu testen und deren Auswirkungen auf die SSD-Leistung festzustellen.

Um dieses Szenario zu testen, haben wir ein Dienstprogramm geschrieben, das die SSD vollständig mit Daten auffüllt, das Laufwerk löscht und dann wieder auffüllt. Dabei wird die Delta-Zeit zwischen der ersten und der zweiten Füllung gemessen. Durch das vollständige Auffüllen des Laufwerks, das Löschen aller Elemente und das sofortige Auffüllen des Laufwerks zwingen wir den Controller auf der SSD, das gesamte Laufwerk „müllsammeln“ und gleichzeitig neue Daten in das Laufwerk schreiben.

Wir haben die SSD als Laufwerk D: konfiguriert, das an einen SATA 2-Port in einem Windows7-System angeschlossen ist und diesen „fill – delete – fill“ -Test mit aktiviertem und dann ausgeschaltetem TRIM-Befehl ausgeführt, um alle nicht-TRIM-Betriebssysteme wie z XP, Vista, Mac OS X zu simulieren. Außerdem haben wir einen weiteren Test mit SSDs durchgeführt, die so konfiguriert sind, dass der Befehl TRIM die Laufwerke (RAID, SAN) nicht erreichen kann. Schließlich führten wir die PCMark Storage-Benchmarks durch, um die Gesamtleistung des Laufwerks während dieses Tests zu testen. Bei allen Tests haben wir eine 5400RPM-Festplatte als Vergleichsreferenz zugefügt. Die Testergebnisse finden Sie unten.

Beachten Sie, dass die ersten Durchläufe auf jedem Laufwerk die schnellsten Füllzeiten hatten, da wir zuerst das Laufwerks sicher gelöscht hatten, um einen neue Out-of-Box-Leistung zu simulieren. Bei diesen Tests zeigten die Laufwerke KC100 und V + 100 gleichbleibende und konsistente Leistungsläufe 1–3 mit aktiviertem TRIM-Befehl und bei den Durchläufen R4-R6 mit deaktiviertem TRIM zeigen sie weiterhin die gleiche Leistung. SSD1, SSD2 und SSD3 bieten alle eine gleichbleibende Leistung, wenn TRIM aktiviert ist. Beachten Sie jedoch, dass zu Beginn von Durchlauf R4 die SSDs 1 und 2 längere Zeit benötigten, um unsere „Fill-Delete-Fill“ -Tests abzuschließen und SSD3 zeigt aus unbekannten Gründen eine sehr inkonsistente Leistung. Denken Sie daran, dass wir das TRIM am Ende von R3 ausgeschaltet haben. Dies bedeutet, dass die Laufwerke nicht mehr über den Befehl TRIM verfügen, um zu kennzeichnen, wo sich die Mülldaten befinden. Die „Garbage Collection-Implementierung“ der Laufwerke wird in den Durchläufen 4 bis 6 (R4-R6) streng getestet. Die Testläufe R4 – R6 stehen für die Laufwerksleistung in Nicht-TRIM-Betriebssystemen wie Windows XP, Vista und MAC OS X.

 

 

Die PCMark Storage Suite wurde sofort nach dem sicheren Löschen ausgeführt, um die bestmögliche Punktzahl zu erzielen. Nach dem 3. Durchlauf, wobei TRIM noch eingeschaltet war, und nach Durchlauf 6 mit deaktiviertem TRIM. Wie Sie in der Grafik sehen können, funktionieren beide Kingston-Laufwerke weiterhin mit oder ohne aktivierten TRIM-Befehl. Im Vergleich zum R1-Score ist ein leichter Rückgang der Gesamtbewertung zu verzeichnen. Dies war jedoch nach einem sicheren Löschen der Fall, als das Laufwerk vollständig leer war und somit keine Mülldaten vorhanden waren. SSD1, 2 und 3 zeigen alle einen signifikanten Abfall der Werte von R 3 auf R6. Ein Kommentar zu SSDs bezieht sich nicht auf die schnellere Performance, als sie neu waren, sondern wie sie sich nach konsequenter Nutzung verlangsamt. Dieser Test zeigt, dass der Controller zu einem gewissen Grad nach dem Schreiben aller NANDs in einer SSD gezwungen ist, diese Mülldaten quasi zu recyceln, um neue Schreibvorgänge auszuführen, die Laufwerke die das gut hinbekommen halten eine durchgängige Performance bei und die Laufwerke werden nicht langsamer. Zu beachten ist, dass alle diese Werte bei R6 mit TRIM OFF immer noch deutlich über einem typischen HDD-Wert von etwa 2600 in diesem Storage-Benchmark liegen.

Fazit

Alle NAND Flash-basierten Geräte müssen zuvor gelöschte Daten verarbeiten, indem sie den Inhalt einer Speicherzelle löschen, bevor sie neue Daten schreiben. Mit der Garbage Collection und dem TRIM-Befehl können so SSDs „Garbage Data“ wiederverwerten. Der TRIM-Befehl hat einige der oben genannten Einschränkungen, vor allem, dass er nicht mit SSDs in einem RAID-Array kommunizieren kann und seine Implementierung in älteren Betriebssystemen fehlt. Während eine SSD mit einem effektiven Garbage Collection-Prozess die Garbage-Daten wiederverwendet, ohne die Leistung in jeder Betriebsumgebung zu beeinträchtigen. Die Kingston KC100 und die V + 100 verwenden beide sehr effiziente Speicherbereinigungsstrategien, jedoch nicht alle SSDs. In unseren Tests sahen wir einige SSDs, die sich verlangsamten, als der TRIM-Befehl deaktiviert wurde. Bei einem Wechsel zur SSD-Technologie sollten IT-Spezialisten und Einkäufer berücksichtigen, in welchem Host-Betriebssystem und in welcher Konfiguration sich die Laufwerke befinden.

Beachten Sie, dass die in diesem Test verwendeten Kingston SSDs SSDnow KC100 sowie die SSDnow V + 100 ältere Produkte sind und nicht mehr zum Kauf angeboten werden!!! Die Ergebnisse dieses Tests von 2011 zeigen jedoch die allgemeinen Auswirkungen einer Speicherbereinigung und -anpassung auf die SSD-Performance sehr deutlich.

Bildnachweis: Kingston Technology Inc.