TRIM-Befehl, Datenverlust, Samsung, Crucial, Linux

@highks
Wenn ich es richtig verstanden habe, dann sollte normales TRIM nur ausgeführt werden, wenn die I/O Warteschlange zum betreffenden Laufwerk geleert ist. Im Zweifelsfall heißt das aber auch, dass während des Trim dieses Laufwerk nicht nutzbar ist, oder nur sehr langsam. Queued Trim ordnet Trimbefehle in die I/O Warteschlange neben sonstigen Operationen ein und erlaubt so Trim durchzuführen, während das Laufwerk für I/O Anfragen weiterhin recht gut nutzbar bleibt.
Insofern vermeidet queued Trim typische Systemhänger beim Trimvorgang.

Das das Problem mit Linux auftritt liegt ansonsten schlicht daran, außer Linux nutzt kein Betriebssystem derzeit queued Trim, daher kann es mit anderen Betriebssystemen nicht auffallen, dass die Controller bzw. deren Firmware Mist bauen. Wobei Linux solche Features meist recht schnell bekommt und einsetzt, weil es auf vielen Servern läuft und da braucht es solche Features dann auch :)


*Behauptung
 
Dann scheint ja aber queued TRIM eher unnötig zu sein für den normalen Desktop-PC, weil dort doch genug Idle-Zeit vorhanden sein dürfte, um TRIM unbemerkt auszuführen.
Mir wäre jedenfalls noch nie ein Hänger meiner SSDs unter Windows oder OSX aufgefallen, und auf denen ist TRIM bisher immer aktiv gewesen (wenn auch unter OSX nur "illegal", weil Apple die Ausführung standardmäßig ja auch nur für zertifizierte SSDs zulässt...ein umstrittenes Thema, das hiermit ebenfalls neuen Gesprächsstoff bekommen hat)
 
highks schrieb:
Dann scheint ja aber queued TRIM eher unnötig zu sein für den normalen Desktop-PC, weil dort doch genug Idle-Zeit vorhanden sein dürfte, um TRIM unbemerkt auszuführen.
Ja im Serverumfeld werden SSD auf die intensiver I/O ausgeführt wird, auch normalerweise überhaupt nicht getrimmt. Einmal weil bei viele Serveranwendungen sowieso kaum Dateien gelöscht sondern nur immer überschrieben werden. Datenbanken löschen oder verkleinern gewöhnlich ihre Datafiles nicht und auch VMs arbeiten meist mit festen Daten für das Image der virteullen Laufwerke und wenn die dynamisch sind, so wachsen sie nur. TRIM kommt aber nur beim Löschen von Dateien zum Zuge und dann bringt es auch nur etwas, wenn die getrimmten LBAs nicht sofort wieder überschrieben werden, denn dann kann man sich das Trimmen ja auch sparen, beim Überschreiben eines LBA erfährt der Controller der SSD ja sowieso, dass die alten Daten die vorher dem LBA zugeordnet werden, nun ungültig sind.

Von daher ist es bei der Anwendung wo so ein Bug ständig auftritt wohl sowieso sehr fraglich ob das Trimmen hier überhaupt sinnvoll ist. Zumal es nur der Verbesserung der Schreibrate dient und die wird bei Enteprise SSDs die dann im Steady State betrieben werden, sowieso nur durch mehr OP aufrecht gehalten.

highks schrieb:
Mir wäre jedenfalls noch nie ein Hänger meiner SSDs unter Windows oder OSX aufgefallen, und auf denen ist TRIM bisher immer aktiv gewesen
Das habe ich auch nie, aber Hänger können viele Ursachen haben, die konkrete Ursache zu finden ist nicht einfach. Bei Win 8.1 kommt z.B. auch Opal in Frage.
highks schrieb:
ein umstrittenes Thema, das hiermit ebenfalls neuen Gesprächsstoff bekommen hat
Wie man an der Blacklist sieht, gab es schon mit der Intel 510 Probleme mit TRIM und Apple wird ja unter anderen von den Kunden wegen der Problemlosigkeit geschätzt, die kann man nur halbwegs sicherstellen, wenn man die Flexibilität bei den Konfigurationen minimiert.
 
@Holt

Im Serverumfeld mit intensiver I/O kommt es stark auf den Anwendungsfall an, ob Trim zum Einsatz kommt. Ganz Grundlos gibt es queued Trim ja nicht, das wurde ja eben in die Spec integriert, um bei hoher I/O Last Trim verwenden zu können. Es gibt eben genügend Anwendungen, wo immer mal wieder größere Bereiche frei werden, die sich wunderbar ausnullen lassen, bevor die nächsten Daten wieder fix weggeschrieben werden müssen. Beim typischen Umsortieren von Hot zu Cold Storage und umkehrt, Datawarehousing etc.
In solchen Fällen vermeidet man das unqueued Trim, eben weil es übel auf den I/O Durchsatz geht und die ganze Kiste für Sekunden (oder bei großen SSD Minuten!) böse hängt, queued kommt aber wenn möglich (und sinnvoll) zum Einsatz.
 
Zurück
Oben