Die SSD beim PC Videoschnitt
Super schnell und auch super schnell wieder langsam?
Die jüngste Version der “Festplatte“ ist die SSD, die Solid-State Disk, die sich durch sehr hohen Datentransferraten auszeichnet und mit der man insbesondere beim Laden von Anwendungen eine extreme Beschleunigung erlebt.
Jedoch ist Vorsicht geboten, denn dieses neue Speichermedium hat auch seine Tücken. In fabrikneuem Zustand funktioniert alles wunderbar, doch je länger und öfter man seine SSD nutzt, desto langsamer und unvorteilhafter
wird diese, bis sie nach relativ kurzer Zeit sogar schlechter zu gebrauchen ist, als eine herkömmliche magnetische Festplatte (HDD).
Unter den richtigen Voraussetzungen, wenn die restlichen Komponenten des Rechners
dies erlauben und die Software richtig konfiguriert ist, kann man dies zum Glück verhindern und somit lange Zeit den Rausch der Geschwindigkeit genießen.
Im Gegensatz zur VIDEOSTATION® ist dies aber noch längst nicht bei jeder anderen Workstation gegeben.
Das Problem
Um die niedrigen Zugriffszeiten zu erreichen bestehen SSDs aus Flash-Speicher, der, anders als bei der bisher üblichen Festplatte, blockweise organisiert ist. Ein Speicherblock, der in der Regel 128 bis 512 KiloByte groß
ist, wird hier immer als Ganzes geschrieben, unabhängig davon wie viel man verändert hat. Dazu kommt, dass nur leere Blöcke beschrieben werden können; Enthält ein Block bereits Informationen, muss dieser erst geleert
werden.
Wenn also bei einer noch neuen SSD sehr viele Blöcke leer sind ist das auch kein Problem und die SSD bringt sehr hohe Performance. Umso mehr Daten aber auf die SSD wandern, desto weniger Blöcke sind noch ganz
leer. Auch wenn die SSD z.B. halb voll ist, heißt das nicht, dass die Hälfte der Blöcke noch leer ist, wahrscheinlicher ist, dass alle Blöcke zur Hälfte gefüllt sind. Die Realität liegt irgendwo dazwischen.
Wenn nun der SSD-Controller einem Block etwas hinzufügen möchte der bereits Daten enthält, müssen diese zuerst aus dem Block ausgelesen und im Pufferspeicher der SSD geparkt werden, dann wird der Block gelöscht
und erst danach können die neuen Daten, zusammen mit den geparkten alten Informationen in den (nun) leeren Block geschrieben werden.
Lösungen
Um dieser Problematik beizukommen bedient man sich einer Kombination aus “Trim“ und “Native Command Queuing“ kurz “NCQ“. Es ist wichtig darauf zu achten, dass sowohl der Controller der SSD, als auch der On-Board SATA-Hostadapter im PC diese Features unterstützen, wie es bei der VIDEOSTATION® der Fall ist. Auch eine Besonderheit der VIDEOSTATION ® ist, dass RAID und Einzelplatten gleichzeitig betrieben werden können, ohne dabei diese Features zu verlieren. Einen nachgerüsteten SATA-Hostadapter sollte man hierbei dringend vermeiden, da es damit sehr häufig zu Geschwindigkeitseinbußen und Inkompatibilitäten kommt.
NCQ – Tetris für Speicherblöcke
NCQ ist ein Feature, welches ursprünglich für HDDs entwickelt wurde. Eine Festplatte führt normalerweise Schreibbefehle in der Reihenfolge aus, in der diese ankommen. Durch NCQ hat der Festplatten-Controller die Möglichkeit bis zu 32 Schreibbefehle zu sammeln (Puffern), nach Belieben umzusortieren und in der dann neuen Reihenfolge auszuführen. Bei SSDs wird dies genutzt um die zu schreibenden Daten so aufzuteilen, dass sie auf möglichst wenige Blöcke verteilt werden müssen, da es zeitlich keinen Unterschied macht wie viel man in einen Block schreibt, wohl aber in wie viele Blöcke man schreibt.
Trim – Bringt den Müll raus
Wenn Windows eine Datei löscht, macht es sich normalerweise nur eine Notiz “da wo die Datei lag, steht nichts (wichtiges) mehr“ und wenn der Speicherplatz das nächste Mal benutzt wird, schreibt die Festplatte einfach darüber.
Bei SSDs ist das aber nicht praktisch, da ja nur in leere Zellen direkt geschrieben werden kann. Ein “einfach darüber schreiben“ bedeutet hier ein erst auslesen, dann löschen, dann die neuen Daten mit dem Rest des alten
Mülls wieder hinein schreiben.
Ist Trim unterstützt und eingeschaltet, sagt Windows beim Löschen dem SSD-Controller Bescheid “diese Daten können weg“, was den Controller in die Lage versetzt, aufzuräumen und ggf. den Block schon mal zu leeren,
damit beim nächsten Schreibvorgang eben doch “einfach so“ geschrieben werden kann.
Alignment – Ein jedes Ding an seinem Ort, erspart Dir Zeit und manch bös Wort.
Wie schon erwähnt, ist der Speicher bei SSDs blockweise organisiert und es ist existentiell wichtig, so wenige Blöcke wie nur möglich zu schreiben. Darum ist mit besonderer Vorsicht beim erstellen von Partitionen auf SSDs
darauf zu achten, dass diese korrekt „aligned“ (also „ausgerichtet“) sind.
Das Dateisystem der Partitionen hat nämlich sogenannte „kleinste Zuordnungseinheiten“, ist also auf logischer Ebene quasi auch blockweise
organisiert. Die Gefahr besteht nun darin, dass die logischen Blöcke des Dateisystems sich mit den Speicherzellen auf physikalischer Ebene überlappen, also nicht korrekt ausgerichtet sind.
Man stelle sich nun
vor, das Dateisystem wäre so ausgerichtet, dass ein Block immer von der Mitte der einen Speicherzelle bis zur Mitte der nächsten Speicherzelle reicht. Werden nun Daten in diesen Block geschrieben, so muss die SSD zwei
Zellen beschreiben. Wenn im Vergleich dazu jeder Block vom Anfang einer Zelle bis zu deren Ende reicht, muss die SSD nur diese eine Zelle beschreiben.
SSDs ohne korrektes Alignment verfügen über nur 50% Schreibgeschwindigkeit
und halten auch nur halb so viele Schreibzyklen, wie SSDs bei denen dies beachtet wurde, wie es bei der VIDEOSTATION® der Fall ist.
Benchmark-Ergebnisse einer VIDEOSTATION®-SSD
ohne korrektes Alignment (links) und die Ergebnisse
der selbe SSD mit dem korrekten Alignment (rechts).