Update: 28.05.11
SSD-Kaufberatung/-Informationsthread - Übersicht
1. Der Unterschied zwischen SLC und MLC / Lebensdauer einer SSD
2. Was ist TRIM, was ist GC (Garbage Collection), wo ist der Unterschied?
3. Was gibt es vor/nach der Installation des SSD/OS zu beachten? (Alignment etc.)
4. Kaufberatung
5. Eine große SSD oder zwei kleine im RAID0?
6. Welchen Einfluss auf die Leistung hat die Cachegröße?
7. Weitere Informationen und Reviews
SSD-Kaufberatung/-Informationsthread - Übersicht
1. Der Unterschied zwischen SLC und MLC / Lebensdauer einer SSD
2. Was ist TRIM, was ist GC (Garbage Collection), wo ist der Unterschied?
3. Was gibt es vor/nach der Installation des SSD/OS zu beachten? (Alignment etc.)
4. Kaufberatung
5. Eine große SSD oder zwei kleine im RAID0?
6. Welchen Einfluss auf die Leistung hat die Cachegröße?
7. Weitere Informationen und Reviews
- p1Der Unterschied zwischen SLC und MLC / Lebensdauer einer SSD
In SSDs werden zwei verschiedene Arten von NAND-Flash verwendet: Single Level Cell und Multi Level Cell. Technisch unterscheiden sich die beiden Arten darin, dass sie unterschiedlich viele Zustände und damit Daten speichern können. Während eine SL-Zelle nur die Zustände „programmiert“ (Binärer Wert: 0, bei MLC: 00) und „gelöscht“ (1, MLC: 11) kennt, gibt es bei ML-Zellen noch weitere Zustände: „teilweise programmiert“ (01) und „teilweise gelöscht“ (10).
Der Vorteil von MLC-Speicher lässt sich also schon ahnen: MLC-Chips haben eine wesentlich höhere Datendichte als SLC-Chips, es werden also weniger von benötigt um die gleiche Kapazität wie mit SLC-Chips zu erreichen. Dies wirkt sich sehr stark auf den Preis aus: Während MLC-SSDs bereits ab einem Preis von gut 2 € pro GB zu haben sind, muss man für SLC-SSDs mindestens das Doppelte(!) hinlegen.
Nun zu den Nachteilen: MLC benötigt aufwändigere Fehlerkorrekturmechanismen (das bedeutet nicht, dass MLC-Laufwerke unzuverlässig sind: Die Lesefehlerrate liegt wie bei Festplatten, je nach Modell, zwischen 10^-16 und 10^-14), ist langsamer als SLC-Speicher und hat eine kürzere Lebensdauer. Während eine SL-Zelle bis zu 100.000 Mal beschrieben werden kann, ist eine ML-Zelle schon nach 10.000 Schreibvorgängen defekt.
Defekt bedeutet bei einer Speicherzelle, dass sie nicht mehr beschrieben werden kann. Ihre letzte Programmierung behält sie jedoch bei, sodass die Daten immer noch gelesen werden können.
<i>Wie wirkt sich die kürzere Haltbarkeit von MLC-Speicher in der Praxis aus?</i>
Für Heimanwender gar nicht. In einem normalen Desktopsystem werden sehr wenig Daten geschrieben (sieht man von einmaligen Aktionen wie der Installation von Windows, Programmen, Spielen etc. ab). Des Weiteren sind ungefähr 80% der Zugriffe lesend. So kommt man selbst bei starker Nutzung eines Systems selten auf über 10 GB geschriebene Daten pro Tag.
Intel gibt für die X25-M (MLC) eine Lebensdauer von mindestens 5 Jahren bei einer Schreibrate von 20 GB pro Tag an:
Winslow told SST that Intel was able to achieve an MLC SSD device with high performance and long life. "We can provide at least a five-year useful life in a consumer notebook and that specification far exceeds the user model that we're benchmarking against," he said. "We've never seen a user write more than 20GB/day every day for five years. Our MLC SSD can allow a user to write 100GB/day every day for five years without wearing out the drive, so we've been able to establish that our SSDs -- whether SLC or MLC -- far exceed the reliability required by the usage models of the end applications." (Quelle)
Anders sieht die Sache natürlich z.B. in Servern aus, die konstant große Mengen an Daten auf das Laufwerk schreiben. Hier kann es durchaus passieren, dass ein MLC-Laufwerk schon nach 1-2 Jahren die maximale Anzahl an Schreibzyklen erreicht hat. Allerdings ist bei Serversystemen das Budget häufig auch wesentlich größer, sodass der deutliche Mehrpreis von SLC-Laufwerken kein Problem ist.
Zusammenfassend lässt sich also sagen: Für Heimanwender gibt es eigentlich keinen Grund, auf die wesentlich teureren SLC-SSDs zu setzen.
- p2Was ist TRIM, was ist GC (Garbage Collection), wo ist der Unterschied?
Moderne SSDs verlieren einen Teil ihrer Leistung, je voller sie sind. Dies liegt hauptsächlich am sog. Write Combining, welches für eine hohe Leistung bei kleinen Datenblöcken sorgt. Durch Write Combining kommt es zu einer Blockfragmentierung (auf keinen Fall verwechseln mit der „normalen“ Fragmentierung eines Dateisystems – Das sind zwei völlig verschiedene Dinge).
In einer SSD sind Zellen zu Seiten zusammengefasst, die wiederrum zu Blöcken kombiniert werden. Ist ein Block teilweise beschrieben, was durch Write Combining häufig vorkommt, muss der Controller, wenn neue Daten in diesen Block geschrieben werden sollen, erst die alten Daten in den Cache laden, mit den neuen Daten verbinden, den Block löschen und die Daten aus dem Cache wieder in den Block schreiben („read-modify-write“). Seiten können nämlich nicht einzeln beschrieben werden, es muss also immer ein kompletter Block beschrieben werden. Die maximale Geschwindigkeit erreichen SSDs also nur, wenn sie direkt in leere Blöcke schreiben können, da ein read-modify-write sehr Aufwändig ist.
Hier setzen nun zwei Methoden an, dieses Problem zu beseitigen:
- Garbage Collection
Garbage Collection (Deutsch: "Müllabfuhr", kurz: GC) ist ein Sammelbegriff für Methoden, die Hersteller benutzen, um die Blockfragmentierung zu beseitigen. Dies geschieht meistens, wenn sich das Laufwerk im Leerlauf befindet. Die genaue Funktionsweise der jeweiligen GC legt verständlicherweise kein Hersteller offen. Die GC kann leider nur eine beschränkte Funktionalität haben: Werden im bzw. vom Betriebssystem Daten gelöscht, bekommt die SSD davon nichts mit. Die verwaisten Daten sind weiterhin gespeichert und müssen vom Controller als Nutzdaten behandelt werden. Dies führt dazu, dass aus Sicht der SSD irgendwann fast alle Blöcke Nutzdaten enthalten. Die Wirkung der GC sinkt, die Leistung fällt.
- TRIM (aka Auto-TRIM, ATA-TRIM)
Der TRIM-Befehl (exakte Bezeichnung: ATA8 ACS2 Data Set Management Trim Attribute) sorgt nun dafür, dass Betriebssystem und SSD die gleichen Informationen bezüglich der Nutzdaten haben. So kann die SSD verwaiste Daten löschen und für mehr freie Blöcke sorgen, die Leistung bleibt zum größten Teil erhalten.
TRIM funktioniert nur unter ganz bestimmten Voraussetzungen: Betriebssystem, Storage-Treiber und Laufwerk müssen mitspielen. In der Windows-Welt ist nur Windows 7 TRIM-fähig. Welches Laufwerk TRIM unterstützt, ist weiter unten aufgeführt.
Kompatible Storage-Treiber sind bisher:- Die mitgelieferten von Microsoft (msahci, pciide)
- Der Intel RST Treiber (iastor) ab Version 9.6.0.1014 (Download)
- Der AMD AHCI Treiber ab Version 1.2.001.263 (Catalyst 10.12), nur in Verbindung mit einer 800/900er Southbridge
Achtung: Mit dem aktuellen RST Treiber funktioniert TRIM nun auch, wenn der Controller im RAID-Modus läuft, wobei die SSD aber nicht in einem RAID-Verbund arbeiten darf.
Beispiel:
Zwei Festplatten im RAID0, eine SSD als Einzellaufwerk -> TRIM funktioniert.
Zwei Festplatten im RAID0, Zwei SSDs im RAID0 -> TRIM funktioniert nicht.
Der Marvell-SATA-6 Gbit/s-Treiber unterstützt TRIM nicht (getestete Version: 1034).
Wie kann man überprüfen, ob TRIM funktioniert?
Ob der TRIM-Befehl tatsächlich beim Laufwerk ankommt und dort umgesetzt wird, kann man nicht direkt prüfen. Hier ist die einzige Möglichkeit, ab und zu einen Benchmark laufen zu lassen (z.b. AS SSD), um die Leistung zu überwachen. Bricht die Leistung gegenüber dem Neuzustand stark ein, kann das ein Hinweis darauf sein, dass TRIM nicht ordentlich arbeitet. Über geringe Schwankungen sollte man sich keine Sorgen machen, diese sind durch die Messunsicherheit bedingt.
Es geistert außerdem immer wieder der Tipp rum, die TRIM-Fähigkeit mit dem Befehl
fsutil behavior query DisableDeleteNotify (funktioniert nur unter Windows 7)
zu überprüfen.
Dieser Befehl zeigt nur an, ob der TRIM-Befehl vom Betriebssystem gesendet wird, nicht, ob er auch tatsächlich beim Laufwerk ankommt und dort korrekt verarbeitet wird!
Außerdem erhält man hier immer "0", also auch mit inkompatiblen Treibern oder auch wenn man garkeine SSD nutzt.
Die Aussagekraft dieses Befehls geht also gegen Null.
Auch gibt es einige Tools, die TRIM als aktiviert anzeigen, sobald dieser Befehl "0" zurückgibt. Der Treiber wird dabei nicht beachtet und so ist auch diese Aussage praktisch wertlos.
(Damit dieser Befehl etwas anderes als "0" zurückgibt müsste man DisableDeleteNotify manuell auf einen anderen Wert gesetzt haben.)
Nochmal zusammengefasst - Das sind die Grundvoraussetzungen, damit Auto-TRIM funktioniert:
- TRIM-fähiges Betriebssystem (bei Windows ab Windows 7)
- TRIM-fähige SSD Firmware (bei allen aktuellen Laufwerken der Fall)
- Kompatibler Storage-Treiber (siehe Auflistung oben)
- Manuelles TRIMen (aka Pseudo-TRIM)
Für nicht TRIM-Fähige Systeme (siehe vorheriger Punkt) gibt es je nach Hersteller ein Tool, um den TRIM-Befehl manuell zu senden. Dabei überprüft dieses Tool, welcher Speicherplatz nicht belegt ist und teilt dies der SSD über einen TRIM(-ähnlichen) Befehl mit. Für welche Laufwerke solch ein Tool existiert, steht in der Kaufberatung.
Wie kann man überprüfen, welcher Storage-Treiber gerade verwendet wird?
Im Gerätemanager:
- Garbage Collection
- p3Was gibt es vor/nach der Installation des SSD/OS zu beachten?
0. Physikalische Installation
Die SSD einfach wie eine normale Festplatte anschließen. Den Controller, an dem die SSD hängt, am besten in den AHCI-Modus schalten - SSDs sind auf die Verwendung im AHCI-Modus optimiert.
1. Korrektes Alignment
Überschneiden sich die (logischen) Blöcke des Dateisystems und die Seiten (Pages) der SSD (Illustration), kommt es zu unnötigen Schreib-/Löschzyklen. Das hat Auswirkungen auf die Lebensdauer der SSD (es werden mehr Zyklen verbraucht als notwendig) und kann Auswirkungen auf die Leistung haben. Bei aktuellen SSDs ist die Auswirkung auf die Leistung eher gering, trotzdem ist ein korrektes Alignment sinnvoll.
Werden Windows Vista/7 auf ein leeres Laufwerk installiert, wird das Alignment vom Setup automatisch richtig eingestellt. Hier gibt es keinen Handlungsbedarf mehr.
Das Setup von Windows XP hingegen wählt ein ungünstiges Alignment. Außerdem kann das Alignment zerstört werden, wenn man ein Image mit einem Backupprogramm zurückspielt. Auch aktuelle Software, wie True Image 2010, ignorieren das Alignment (meistens). Lediglich unter bestimmten Voraussetzungen wird das Alignment beibehalten, hier ist es auf jeden Fall empfehlenswert nach dem Einspielen des Images das Alignment zu kontrollieren.
Der AS SSD Benchmark in der aktuellen Version zeigt das Alignment einer Partition an. Grün bedeutet hier selbsterklärend: "Alles in Ordnung", ansonsten sollte man nachbesseren.
Der User Dampfkanes hat dazu ein schönes Tutorial erstellt, welches hier runtergeladen werden kann.
2. Defragmentierung
Die automatische Defragmentierung muss bei einer SSD unbedingt ausgeschaltet werden. SSDs werden durch Dateisystemfragmentierung im Gegensatz zu Festplatten nicht langsamer. Eine Defragmentierung verursacht allerdings eine enorme Schreiblast, was natürlich der Lebensdauer der SSD schadet.
Bei Windows XP und Vista muss die Defragmentierung manuell deaktiviert werden.
Windows 7 erkennt alle aktuellen SSDs automatisch und deaktiviert die Defragmentierung automatisch für alle Partitionen, die sich auf der SSD befinden.
Achtung: Die Defragmentierung wird nicht komplett deaktiviert (siehe folgenden Screenshot) - es könnten sich ja noch Festplatten im System befinden, für die die Defragmentierung noch laufen soll(te) - die Partitionen auf der SSD tauchen in der Planung für die Defragmentierung allerdings nicht auf und können so auch nicht versehentlich in die Planung mit aufgenommen werden. Das Analysieren und Defragmentieren sämtlicher Partitionen (auch der auf der SSD) funktioniert allerdings weiterhin über die beiden (im Screenshot verdeckten) Buttons im Hauptfenster. Windows gibt hier auch keine weitere Warnung aus, wenn man die Defragmentierung über das Hauptfenster manuell startet.
3. Weitere Optimierungen/Tweaks
Man findet noch haufenweise andere Hinweise, wie man sein Betriebssystem einstellen sollte, um die SSD zu schonen oder ihr mehr Leistung zu entlocken. Viele dieser Tipps sind allerdings mindestens nutzlos, häufig sogar kontraproduktiv.
Dazu zählt z.B. auch das Auslagern der Pagefile (Auslagerungsdatei) auf eine Festplatte. Microsoft selbst sagt:
In fact, given typical pagefile reference patterns and the favorable performance characteristics SSDs have on those patterns, there are few files better than the pagefile to place on an SSD.
Auch das Verbiegen des Temp-Ordners auf eine Festplatte erspart der SSD vielleicht ein paar Schreibzyklen - kann das System allerdings auch wieder deutlich verlangsamen.
Letztendlich hat man sich eine SSD ja gekauft, um sie zu benutzen und von ihrer Geschwindigkeit zu profitieren.
Alignment stimmt, ggf. Dateisystemdefragmentierung für die SSD deaktiviert? Fertig - SSD benutzen und Spaß haben
- p4Kaufberatung
Alle aktuellen SSDs, Benchmarks und Kaufempfehlungen findet ihr in unserem Highend-SSD-Roundup.
- p5Eine große SSD oder zwei kleine im RAID0?
Schon eine SSD bietet ausreichend Leistung, um den Flaschenhals „Datenträger“ zu beseitigen. In einem RAID-Verbund darf hier nicht mit weiteren großen Leistungssprüngen gerechnet werden.
Werden SSDs im RAID-Verbund betrieben, fällt außerdem die TRIM-Fähigkeit weg. Man wird hier also wieder mit einem (mehr oder weniger starken) Performance-Verlust mit steigender Nutzungsdauer rechnen müssen.
Auch sind SSDs nicht komplett vor Ausfällen geschützt. Das gleiche, was schon für Festplatten gilt, muss also auch hier beachtet werden: Die Ausfallwahrscheinlichkeit des RAID-Volumes verdoppelt sich im Gegensatz zu einem Einzellaufwerk.
Insgesamt ist also eher von einem RAID-Verbund abzuraten und man sollte lieber ein großes Laufwerk kaufen.
- p6Welchen Einfluss auf die Leistung hat die Cachegröße?
Kurz gesagt: Keinen.
Wieviel Cache ein Laufwerk hat, hängt nur vom Controller ab. Wieviel Cache ein Controller benötigt, hängt von seiner Arbeitsweise ab.
Der Intel Postville-Controller kommt mit 32 MB Cache, der Indilinx Barefoot mit 64 MB und Samsungs RBB mit 128 MB. Die Cachegröße ist also auf den Controller abgestimmt.
Es macht also keinen Sinn, das Laufwerk nach der Cachegröße auszusuchen. Stattdessen sollte man sich je nach persönlichem Geschmack für einen Controller entscheiden und dann ein Laufwerk mit diesem Controller kaufen.
- p7Weitere Informationen
Es gibt bereits eine Vielzahl von Sammelthreads, insbesondere zu den jeweiligen Controllern. Wenn ihr eine Frage zu einem bestimmten Laufwerk habt, schaut am besten erstmal in den dazugehören Sammelthread (ggf. Suchfunktion innerhalb des Threads benutzen).
Die Übersicht über alle Sammelthreads findet ihr unter folgendem Link:
[Übersicht] Bitte beachten: Gesplittete Threads, Sammelthreads, User-Reviews
Auf Hardwareluxx veröffentlichen wir im Bereich Storage außerdem regelmäßig Artikel über Solid State Drives.
Zuletzt bearbeitet: