Intel plant ATA-Trim-Unterstützung im RAID-Treiber

Je nach Nutzungsweise kann die explizite Freigabe ungenutzer Sektoren die SSD-Performance beim Schreiben verbessern.

In Pocket speichern vorlesen Druckansicht 64 Kommentare lesen
Lesezeit: 3 Min.

Auch bei RAID-0-Verbünden aus Solid-State Disks (SSDs) will Intel künftig den ATA-Trim-Befehl unterstützen. Eine kommende Version 11.5 des Windows-Treibers für die Rapid Storage Technology (RST) soll Trim-Befehle des Betriebssystems an die Massenspeicher durchreichen. Das meldet die Webseite StorageReview.com unter Berufung auf die Release Notes einer Alpha-Version des RST 11.5 (iastor.sys).

Moderne Betriebssysteme tilgen gelöschte Dateien nicht explizit, sondern beseitigen nur die zugehörigen Verweise auf die zuvor belegten Sektoradressen aus den Verwaltungstabellen, etwa FAT oder MFT. Bei späteren Schreibzugriffen nutzt das Dateisystem dann diese freigegebenen Sektoren wieder und überschreibt alte Daten. Weil das eigentliche Speichermedium die Dateiverwaltungstabellen nicht auswerten kann, hat es keine Kenntnis darüber, ob beschriebene Sektoren gültige oder bereits "gelöschte" Daten enthalten. Bei Solid-State Disks kann eine niedrige Anzahl von freien und deshalb sofort beschreibbaren Sektoren je nach Nutzungsweise und Füllstand die Datentransferrate bei Schreibzugriffen mindern. Deshalb teilen moderne Betriebssysteme Serial-ATA-Datenträgern über das ATA-Trim-Kommando mit, welche Sektoren nicht mehr benötigt werden. Mit diesen Informationen kann der SSD-Controller freie Blöcke optimal nutzen.

Bei einem RAID greift das Betriebssystem allerdings nicht unmittelbar auf die beispielsweise per Serial ATA angeschlossenen Massenspeicher zu, sondern quasi auf ein virtuelles Laufwerk. Der RAID-Treiber oder ein RAID-Controller übersetzt dann die vom Betriebssystem verwendeten Sektoradressen in die zugehörigen SATA-Sektoradressen der am jeweiligen RAID-Verbund beteiligten Laufwerke. Der RAID-Treiber (oder -Controller) muss also auch die per ATA Trim freigegebenen Sektoradressen übersetzen.

Bisher sind uns keine RAID-Hostadapter oder Software-RAIDs bekannt, die ATA Trim "durchreichen". Die Firmen Adaptec und LSI unterstützen Trim mit ihren bisherigen Hostadaptern aber beispielsweise ausdrücklich nicht. Für Software-RAID-1 unter Linux (per mdadm) gibt es mit mdtrim immerhin schon eine experimentelle Lösung. Linux-Entwickler nennen die Freigabe nicht mehr benötigter Sektoren "discard". [Update:] Zudem gibt es für Linux das Script raid1ext4trim.sh. Richtet man unter Linux ein RAID mit dem Device Mapper (Targets: Stripe oder Mirror) und LVM ein, sollte discard funktionieren. [/Update]

Auch für SCSI- beziehungsweise Serial-Attached-SCSI-(SAS-)Systeme gibt es eine potenzielle Lösung, die das Kommando Unmap nutzen könnte.

Mit einer optimierten "Garbage Collection", die ungenutzte Flash-Blöcke zusammenführt, versuchen manche SSD-Controller eine fehlende Trim-Funktion zu kompensieren. SSD-Versionen mit angeblich spezieller Garbage Collection werden deshalb unter anderem für Windows XP oder eben RAID-Verbünde angeboten. Auch das sogenannte Over-Provisioning, also das Freihalten unpartitionierter Bereiche, verschafft dem SSD-Controller ein größeres Reservoir an sofort beschreibbaren Sektoren. Wie stark sich das auf die Datentransferrate beim Schreiben auswirkt, hängt aber sehr von der individuellen Nutzungsweise ab. Auf die üblicherweise wesentlich wichtigere Performance beim Lesen hat Trim keinen Einfluss.

Wann Intels RST-Treiber in Version 11.5 erscheinen wird, ist unbekannnt; denkbar wäre, dass er anlässlich der Vorstellung der Serie-7-Chipsätze (Panther Point) im ersten Halbjahr 2012 kommt. Zurzeit ist die RST-Version 10.8.0.1003 aktuell. Weshalb Intel Trim zunächst anscheinend nur für den Betriebsmodus RAID 0 implementieren will und nicht (auch) für den in Servern häufiger verwendeten Modus RAID 1, ist unklar. (ciw)