Tempomacher SSD

Eine Solid-State Disk als Ersatz oder Ergänzung zur Magnetplatte verschafft dem Rechner mächtig Rückenwind: Anwendungen und Betriebssystem laden blitzschnell. Das SSD-Doping hilft jedoch nur halbwegs modernen Rechnern auf die Sprünge – und erfordert etwas Geschick bei der Konfiguration.

In Pocket speichern vorlesen Druckansicht 26 Kommentare lesen
Lesezeit: 15 Min.
Von
  • Boi Feddern
Inhaltsverzeichnis

Solid-State Disks lassen den Traum vom im Nu einsatzbereiten Rechner wirklich werden: Dank ihrer extrem kurzen Zugriffszeiten verkürzen sich die Ladezeiten von Anwendungen und Betriebssystem erheblich. Windows 7 startet etwa von einer SSD je nach BIOS schon in weniger als 20 Sekunden. Auch alle weiteren Anwendungen sind quasi direkt nach dem Anklicken benutzbar. Obendrein arbeiten Solid-State Disks völlig geräuschlos und sind unempfindlich gegen Stöße, denn sie kommen ohne bewegliche Teile aus.

SSDs speichern Daten in Flash-Speicherchips. Dadurch entfallen die Verzögerungen, die bei herkömmlichen Festplatten auftreten: Letztere müssen zum Schreiben und Lesen von Daten erst mit ihren Schreib-/Leseköpfen die richtige Position auf der Magnetscheibe anfahren und dann auch noch warten, bis der richtige Sektor darunter vorbeirotiert. Diese Verzögerungen spürt man besonders bei Zugriffen auf kleine, verteilte Datenblöcke, wie sie beim Start von Anwendungen oder Betriebssystem vorkommen.

Während besonders schnelle Festplatten höchstens 400 Ein- und Ausgabeoperationen pro Sekunde (IOPS) bewältigen, versprechen die besten SSDs mit Serial-ATA-Schnittstelle dank leistungsstarker Controller knapp 100 000 IOPS – also mindestens das 250-fache. Noch schneller sind spezielle Server-SSDs mit PCI-Express-Schnittstelle, die mittlerweile sogar die Marke von 1,2 Millionen IOPS knacken (s. Artikel auf S. 142 in c't 22/2011). Auch beim sequenziellen Kopieren von Daten gehen SSDs äußerst flott zu Werke: Modelle mit SATA-6G-Schnittstelle (6 GBit/s) erreichen mittlerweile mehr als 500 Megabyte pro Sekunde und damit fast dreimal so hohe Transferraten wie herkömmliche Festplatten.

Dass sie trotz ihrer enormen Vorteile noch vergleichsweise selten zum Einsatz kommen, liegt vor allem am hohen Preis. Bei den aktuellen Spitzenmodellen mit SATA 6G kostet das Gigabyte noch knapp 1,80 Euro, bei den günstigsten Festplatten hingegen nur drei Cent. Nur bei älteren SSDs mit Serial-ATA-II-Schnittstelle (3 GBit/s) geben die Preise allmählich nach – schon bald könnten sie unter ein Euro pro Gigabyte sinken.

Doch den meisten Nutzern dürfte eine SSD noch zu teuer oder zu klein sein, um eine Festplatte vollständig zu ersetzen – außer im Notebook (siehe Artikel auf S. 148 in c't 22/2011). Günstige SSDs mit 80 bis 160 GByte sind aber ausreichend für Betriebssystem und Anwendungen. In Kombination mit einer sparsamen Festplatte für alle weiteren Nutzdaten ergibt sich ein schlagkräftiges Duo [1].

Bevor man nun in den Laden stürmt und mehrere hundert Euro ausgibt, sollte man jedoch gründlich nachdenken: Längst nicht jeder alte Rechner lässt sich per SSD fitspritzen. Auch ältere Betriebssysteme wie XP sind auf den Umgang mit den schnellen Massenspeichern nicht vorbereitet. Und selbst an modernen PCs verlangen SSDs Aufmerksamkeit – das ergibt sich aus der Art und Weise wie sie intern Daten speichern.

SSDs speichern Daten in NAND-Flash-Chips mit Single-Level-Cell-(SLC-) oder Multi-Level-Cell-(MLC-)Technik. SLC-SSDs lassen sich besonders schnell beschreiben, sind allerdings extrem teuer in der Fertigung. In SSDs mit brauchbarer Kapazität jenseits von 64 GByte kommen heute deshalb nur noch die günstigeren Multi-Level-Cell-Chips zum Einsatz. Sie fassen nicht nur ein, sondern mindestens zwei Bit pro Zelle und erlauben damit bei gleichen Siliziumkosten höhere Speicherdichten als SLC-Flash. Die Nachteile von MLC-Chips sind wiederum das langsamere Schreibtempo und die geringere Haltbarkeit. Während SLC-Speicherzellen bis zu 100 000 Schreibzyklen vertragen, sind es bei aktuellen MLC-Chips nur 5000.

Um diese Nachteile zu kompensieren, arbeiten die Controller moderner MLC-SSDs mit speziellen Algorithmen. Dazu gehört beispielsweise das sogenannte Wear Leveling, mit dessen Hilfe die Controller die Schreibzugriffe möglichst gleichmäßig über alle zur Verfügung stehenden Speicher- und Reserveblöcke verteilen, sodass jede Zelle möglichst selten an die Reihe kommt. Deshalb liegt die Zahl der Schreibzyklen, welche die gesamte SSD verträgt, auch sehr viel höher als die der einzelnen Zellen. Die begrenzte Lebensdauer von Flash-Chips sollte man nicht überbewerten: Bei typischer SSD-Nutzung im PC oder Notebook werden sehr viel mehr Daten gelesen als geschrieben. Ursächlich für Datenverlust oder Ausfälle von SSD waren zuletzt vor allem Firmware-Probleme – mehr dazu ab S. 150 in c't 22/2011.

Um möglichst hohes Tempo beim Lesen und Schreiben zu erreichen, steuern die Controller-Chips von SSDs bis zu zehn Flash-Chips gleichzeitig an (Interleaving). Dadurch addieren sich die Transferraten der Einzelchips, sodass SSDs Transferraten von mehreren hundert Megabyte pro Sekunde erreichen können. Nicht selten beziehen sich die Geschwindigkeitsangaben in den Datenblättern aber nur auf die jeweiligen Spitzenmodelle einer Serie. Weil die Hersteller in kleineren Modellen aus Kostengründen in der Regel weniger Speicherchips – und nicht etwa die gleiche Anzahl Chips mit geringerer Speicherdichte – einsetzen, arbeiten kleinere SSDs oft langsamer. Das gilt besonders beim Schreiben.

Anders als Festplatten, die Daten direkt überschreiben können, müssen Flash-Speicher vor dem Beschreiben erst gelöscht werden. Ihre beste Leistung erzielt eine SSD im fabrikneuen Zustand. Dann stehen dem SSD-Controller noch sehr viele freie Blöcke zur Verfügung, in die er sofort hineinschreiben kann. Mit steigendem Füllstand wird dies jedoch immer unwahrscheinlicher. Dann kann es passieren, dass der Controller erst einen ganzen Block von 512 KByte lesen, anschließend um die neuen Daten ergänzen und alles zusammen wieder zurückschreiben muss – auch wenn nur wenige Byte innerhalb dieses Blockes zu ändern sind.

Diese sogenannten Read-Modify-Write-(RMW-)Zyklen bremsen nicht nur beim Schreiben, sondern strapazieren die SSD auch unnötig. Deshalb gilt es sie möglichst zu vermeiden – und dafür gibt es verschiedene Methoden: SSD-Controllern der Firmen Intel (Intel SSD 320), JMicron JMF616/618 (Kingston SSDNow V100), Marvell (Crucial/Micron m4 und Intel SSD 510), Phison (Verbatim) und Samsung steht beispielsweise ein bis zu 256 MByte großer DRAM-Puffer zur Seite. Dort nehmen sie die Daten zunächst entgegen, sortieren sie um und verteilen sie anschließend möglichst geschickt auf die einzelnen Datenblöcke. Unterstützung leistet dabei das aus der Festplattenwelt bekannte Native Command Queuing (NCQ).

Umziehen leicht gemacht: Viele Hersteller liefern ihre 2,5"-SSDs mit passendem Einbaurahmen für PCs. Der HyperX SSD von Kingston liegen auch passende Kabel, ein Klonprogramm und ein USB-2.0-Gehäuse bei. Damit lässt sich schon vor dem Einbau ein Image des Betriebssystems auf die SSD übertragen.

Ein DRAM-Puffer an Bord einer SSD steigert aber nicht nur den Stromverbrauch, sondern auch die Fertigungskosten. Controller der Firma Sandforce, aktuell der SF-1222 oder SF-2281 kommen ohne Pufferspeicher aus und verwenden stattdessen Datenkompression. Sandforce-SSDs arbeiten selbst bei kontinuierlichen Schreibzugriffen dadurch anhaltend schnell – allerdings nur, solange es tatsächlich auch etwas zu komprimieren gibt. Sobald man die SSDs mit komprimierten Daten füttert – etwa Filmen oder Musik – lahmen auch sie. Für die Praxis spielt das aber kaum eine Rolle.

In der Firmware jeden SSD-Controllers gibt es noch weitere Funktionen, welche die (Schreib-)Performance und Zuverlässigkeit von SSDs verbessern sollen. Eine davon ist die sogenannte Garbage Collection. In Zeiten ohne Zugriffe versucht der SSD-Controller beschriebene Flash-Blöcke zusammenzufassen, um möglichst viele freie Blöcke zu erzeugen.

Da SSDs permanent solche Optimierungen selbstständig im Hintergrund durchführen, ist eine herkömmliche Defragmentierung – sei es mit den Mitteln des Betriebssystems oder spezieller Programme – nicht notwendig. Im Gegenteil: Wenn sich die externen Defragmentierer mit der SSD-eigenen Garbage Collection in die Quere kommen, provoziert das unnötige Schreibzugriffe, was wiederum die Lebensdauer mindert. Da es außerdem keinerlei Geschwindigkeitsvorteile bringt, schaltet Windows 7 bei SSDs folgerichtig die Defragmentierungsautomatik selbstständig ab. Unter anderen Betriebssystemen muss man das manuell erledigen.

Einen weiteren wichtigen Beitrag zur Verbesserung der Schreibleistung und der Zuverlässigkeit von SSDs leisten moderne Betriebssysteme durch das sogenannte Trim-Kommando. Darüber teilen Windows 7, Vista, Linux und die neuesten Versionen von Mac OS X der SSD mit, welche Sektoren das Dateisystem nicht mehr braucht. Im günstigsten Fall beschleunigt Trim Schreibzugriffe, weil die SSD diese Blöcke dann ebenfalls als ungenutzt ansieht und bei der Garbage Collection nicht mit umkopiert.

Trim funktioniert bislang leider noch nicht, wenn mehrere SSDs zu einem RAID zusammengeschaltet sind und auch veraltete Betriebssysteme wie XP übertragen das Kommando nicht. Für letzteren Fall bieten manche Hersteller – etwa Intel (SSD Toolkit), OCZ oder Samsung (SSD Magician) spezielle Tools (siehe Link am Ende des Artikels), mit deren Hilfe sich SSDs – manchmal auch zeitgesteuert – trimmen lassen. Weil sich besonders das manuelle Trimmen in der Praxis als äußerst unpraktisch erweist, empfiehlt es sich in diesem Falle besonders, eine SSD nie ganz vollzuschreiben. Die Hersteller empfehlen 15 bis 20 Prozent Speicherplatz unpartitioniert zu lassen. Dann stehen stets viele freie Blöcke zur Verfügung, was Schreibzugriffe beschleunigen kann.

Das beim Einsatz von SSDs unter Windows XP vieldiskutierte Misalignment-Problem spielt unter Windows 7 und bei aktuellem Linux keine Rolle, weil die Setups dieser Betriebssysteme Partitionen bei Sektoradressen beginnen lassen, die durch acht teilbar sind, etwa bei Sektor 2048.

Bereits ab Werk nutzen SSDs einen Teil des eingebauten Flash-Speichers als Reserve. Aus dieser Spare Area versorgt sich der Controller mit frischen, leeren Blöcken unter anderem für Wear Leveling. Wie groß das „Overprovisioning“ ist, unterscheidet sich von SSD zu SSD und hängt letztlich vom Controller und der Firmware ab. Bei SSDs mit DRAM-Puffer von Marvell & Co. beträgt die Größe der Spare Area ungefähr sieben bis acht Prozent. Sandforce-SSDs genehmigen sich dagegen zwischen 13 und 28 Prozent des eingebauten Speichers für eigene Zwecke.

Man muss bei SSDs daher immer zwischen Brutto- und Nettokapazität unterscheiden. Hinzu kommt, dass zwei verschiedene Auffassungen von Gigabytes kursieren: Festplatten- und SSD-Hersteller verstehen unter einem Gigabyte 109 Byte. Windows dagegen rechnet mit „binären“ Gigabytes à 230 Byte, die eigentlich korrekt GiB heißen. Der Unterschied beträgt über 7 Prozent: 1 GiB = 1,074 GB. So hat dann beispielsweise eine SSD mit „128 GByte“ (welche auch immer) Flash-Speicher eine (beworbene) Nutzkapazität von 120 GByte (dezimale), die von Windows als 112 GByte (binäre) angezeigt wird. Und manchmal ist die Herstellerangabe schlicht falsch (siehe auch den folgenden Artikel).

Massenspeicher mit extrem kurzen Zugriffszeiten und hohen Datentransferraten beschleunigt vor allem besonders schnelle Computer, weil die SSD den Flaschenhals Festplatte weitet. Doch die beste SSD nutzt nichts, wenn der Bremsklotz anderswo liegt – etwa beim Prozessor. Als Daumenregel kann man sagen, dass erst bei flotten Doppelkernern ein deutlicher SSD-Effekt zu spüren ist. Die hohen IOPS-Werte bedeuten ja anders ausgedrückt, dass die SSD vor allem dann glänzt, wenn viele konkurrierende Zugriffe abzuarbeiten sind, also etwa Anforderungen von mehreren parallel laufenden Programmen. Bei Single-Cores kann man sich deshalb die SSD ebenso sparen wie bei Atom-Netbooks – selbst beim schnellsten Dual-Core-Atom D525 mit 1,8 GHz ist kaum etwas zu merken. Wie auch: Das arme Prozessörchen steht schon in Kooperation mit einer flotten Notebookfestplatte häufig unter Volllast und hat gar keine Rechenleistung übrig, um noch mehr Daten zu verarbeiten.

Beim SSD-Einsatz kommt es außerdem auf eine möglichst flotte Anbindung der Massenspeicher an. Bietet das Mainboard nur veraltete IDE-Anschlüsse erster Generation, denken Sie gar nicht erst über den Kauf einer SSD nach. Viele der im Handel erhältlichen IDE-SSDs wurden beispielsweise für andere Anwendungszwecke konzipiert – etwa für den Einsatz in Industrie-PCs oder Point-of-Sale(POS)-Terminals –, wo vor allem Robustheit und geräuschloser Betrieb eine Rolle spielen, aber nicht das Tempo. Wegen der veralteten Controller-Chips, die in solchen SSDs stecken, sind die Zugriffszeiten – insbesondere beim Schreiben – nicht selten sogar höher als bei herkömmlichen Magnetplatten. Dadurch kann sich die Arbeitsgeschwindigkeit des Rechners sogar verringern. Es gibt immerhin auch wenige IDE-SSDs, die zumindest beim Lesen 5000 IOPS schaffen sollen, allerdings limitiert die IDE-Schnittstelle die Transferraten auf maximal 133 MByte/s.

Auch die naheliegende Idee, eine flotte SATA-SSD mit einem IDE-SATA-Adapter an den IDE-Kanal eines Uralt-Chipsatzes anzuflanschen, verspricht nur in wenigen Sonderfällen befriedigende Resultate. In unseren Tests haben sich IDE-SATA-Adapter nämlich als vergleichsweise zickige Bauteile entpuppt, die recht häufig Probleme verursachen. Insgesamt gesehen ist also der Anschluss von Flash-Speicher via IDE eher als Bastlerprojekt einzustufen, welches man übrigens auch mit einer CF-Karte und einem CF-IDE-Adapter angehen kann.

An SATA-1.0-Schnittstellen lassen sich zwar auch noch SATA-II- oder SATA-6G-SSDs andocken. Doch dann verschenkt man einen Großteil des Leistungspotenzials aktueller SSDs. Zudem stecken in Systemen mit SATA-1.0-Schnittstellen häufig veraltete Prozessoren, sodass dort durch den Einsatz einer SSD ohnehin kein Geschwindigkeitsvorteil zu erwarten ist.

Moderne Mainboards bieten SATA-Anschlüsse en masse. Eine SSD sollte unbedingt an einem SATA-II- oder SATA-6G-Port des Chipsatzes hängen, denn zusätzliche (Onboard-)Hostadapter sind nicht immer optimal angebunden.

Stattdessen sollte der schnelle Massenspeicher unbedingt an einem SATA-II- oder SATA-6G-Port des Chipsatzes hängen und nicht etwa an einem zusätzlichen (Onboard-)Hostadapter, der möglicherweise nicht optimal angebunden ist oder dessen Firmware die Boot-Dauer verlängert. Einen Bock schießt man sich etwa auch dann, wenn man auf einem Mainboard mit SATA-II-tauglichem Chipsatz extra einen SATA-6G-Adapter einsteckt, um eine SATA-6G-SSD „besser“ anzubinden: Hier sind keine merklichen Vorteile zu erwarten. Ein veralteter PCI-Steckplatz liefert ohnehin nicht mehr als etwa 100 MByte/s, selbst PCI Express x1 der ersten Generation reicht mit 250 MByte/s nicht ganz für SATA II. Ein SATA-6G-Chip kann also erst via PCIe 2.0 x1 oder auf einer PCIe-x4-Karte seine volle Datentransferrate bringen. Doch einerseits besitzen Boards mit PCIe-2.0-x1-Steckplätzen meistens schon einen SATA-6G-tauglichen Chipsatz, andererseits sind subjektiv so gut wie keine Unterschiede zwischen der SATA-II- und SATA-6G-Anbindung schneller SSDs spürbar.

Eine Reihe von SSDs rennt indes noch ein bisschen schneller, wenn der SATA-Controller im AHCI- oder RAID-Betriebsmodus läuft, weil das Betriebssystem dann gleich einen ganzen Schwung an Zugriffsbefehlen in einem Rutsch senden kann. Per Native Command Queueing (NCQ) sortiert der SSD-Controller diese Anweisungen dann so um, dass er sie optimal abarbeiten kann. Im veralteten, IDE-kompatiblen SATA-Betriebsmodus funktioniert das nicht.

Im Mainboard-BIOS lässt sich der Betriebsmodus für den SATA-Controller konfigurieren. Damit eine SSD optimal arbeitet, sollte man hier „RAID“ oder „AHCI“ wählen.

Mit RAID-Betriebsmodus des SATA-Controllers ist nicht etwa die Einrichtung eines RAID-Verbundes gemeint. Bei einer einzelnen SSD führt diese Einstellung lediglich dazu, dass das Betriebssystem einen anderen Treiber zur Kommunikation mit dem SATA-Adapter nutzt. Bei Intel-Systemen mit dem Chipsatz Z68 (und bei den 2012 erwarteten H77, Q77 oder Z78) ist dies auch Voraussetzung, um SSD-Caching einschalten zu können – mehr dazu auf S. 142 in c't 22/2011. Sowohl im AHCI- als auch im RAID-Modus funktioniert übrigens bei modernen Systemen auch Hot-Plugging; im BIOS-Setup vieler aktueller Mainboards kann man dabei einstellen, welche Ports das Betriebssystem als interne oder externe eSATA-Buchsen erkennen soll. Nur an Letzteren erscheint dann bei angeschlossenen Platten das Auswurfsymbol im Tray-Bereich von Windows.

Den vollständigen Artikel finden Sie in c't 22/2011.

Mehr Infos

Doping für Computer

Artikel zum Thema "Doping für Computer" finden Sie in c't 22/2011

  • Tempomacher Solid-State Disk - 132
  • SSDs im Test - 136
  • Flash-Speicher in speziellen Bauformen - 142
  • Windows auf SSD umziehen - 144
  • SSD im Notebook nachrüsten - 148
  • Lebensdauer und Zuverlässigkeit - 150
  • SSDs unter Linux - 152

(boi)