Update 25.11.2012
Siehe unten!
Update 02.12.2012
Mit Videos!

Als Ende Oktober diesen Jahres Phil Schiller von Apple die neuen Macs vorstellte, ließ er auch ein paar wenige Worte im üblichen Awesom-Wirrwarr über “Fusion Drive” fallen. Dabei handelt es sich um eine Kombination von SSD und HD, um die Vor- und Nachteile beider Techniken effizient auszunutzen: Geschwindigkeit aber wenig Speicher bei der SSD, viel Speicher aber langsamer bei der üblichen HD.

“Was ist das?”

Zum damaligen Zeitpunkt war noch nicht viel bekannt; einmal abgesehen davon, dass es in üblicher Apple-Magie ohne Zutun des Benutzers von alleine funktionieren sollte. So gibt es beispielsweise Intels Smart Response Technology, und viele vermuteten, dass es sich bei Fusion Drive nur um einen Marketingnamen dieser Technik handeln könnte. Dabei ist SRT allerdings nur ein Caching-Technik (ursprünglich hieß die Technik auch ganz banal Intel SSD Caching), wo Zugriffe auf die HD durch die SSD abgefangen werden. Das bedeutet zum einen, dass die SSD obsolet sein kann (auf der HD ist quasi alles gespeichert) und zum anderen, dass der zur Verfügung stehende Platz der Größe der HD entspricht. Fällt dann natürlich die HD aus, dann hilft einem die SSD wahrscheinlich auch nicht mehr weiter.

Reports, Reviews, Tests

Mittlerweile hat sich verdichtet hat arstechnica in üblicher Qualität einige Reviews zur Technik herausgebracht; außerdem haben diverse Nutzer angefangen, die Technik auszuprobieren. So ist nun klar, dass es sich keineswegs um ein Caching handelt, sondern tatsächlich um eine echte Fusion beider Datenträger SSD und HD. Der zur Verfügung stehende Platz entspricht daher der Summe beider Datenträger. Natürlich ist damit auch klar, dass ein Auswahl der SSD oder der HD zu einem kompletten Ausfall führt. Außerdem fand man sehr schnell heraus, dass die Technik überhaupt nicht auf die neueren Macs beschränkt ist. Nun ja, zumindest die Macs, die mit zwei internen Datenträger verkauft werden (iMac und Mac Mini, das MB(P) nur im Selbstbau).

Technik

Auf dem ersten Blick ähnelt Fusion Drive (eigentlich CoreStorage) in diesem Fall dem RAID Level 0 (bzw. besser: SPAN) oder auch der logische Datenträgerverbund unter Windows. So kann zwar das grafische Disk Utility (zu deutsch: Festplattendienstprogramm) Fusion Drive Laufwerke und Partionen nur anzeigen (jedoch nicht verwalten), aber das CLI-Pendant hingegen schon. Angesiedelt unter dem schon etwas älteren CoreStorage (beispiel für FileVault) sind die Befehle mit diskutil cs <Command> verfügbar. Ähnlich wie bei Windows legt man eine große logische Partition an, die tatsächlich auf mehreren physischen Datenträgern abgelegt ist.

Im Gegensatz zu einem reinen RAID0/SPAN verfügt OS X CoreStorage jedoch über das Wissen der Existenz der SSD um Daten sinnvoll abzulegen. Bislang weiß man:

  • Neue Daten landen zunächst immer auf der SSD (primärer Ablageort).
  • Das System sorgt dafür, dass immer mindestens 4 GB auf der SSD für neue Daten frei sind (Landing Zone).
  • Daten werden nicht auf Ebene der Dateien oder Verzeichnisse verschoben, sondern immer nur blockweise.
  • Eventuell notwendige Dateiverschiebungen geschehen vollständig transparent (de facto lässt sich bisher nur über IO eine Aktivität “beweisen”).
  • Daten (Blöcke), die mehrmals von der HD abgefragt wurden, werden promoted und irgendwann auf die SSD verschoben. Die File-Cache-Zugriffe zählen nicht (de facto also mehr Zugriffe notwendig bis eine Promotion kommt).

Nicht selber ausprobiert und nur gelesen: Windows Bootcamp Partitionen müssen parallel auf der HD angelegt werden (SSD ist ausgeschlossen), d.h. man muss auch nicht komplette Datenträger nutzen. Es reichen auch Partitionen.

Selbstversuch: Situation

Seit dem Einbau des Macbook SSD/HDD Adapter Kit hatte ich mit der bisher einzig möglichen Lösung gefahren:

  • Zunächst System auf die SSD installiert.
  • Anschließend diverse Verzeichnisse wie Documents (alles, bis hin zu VMs), Music (iTunes), Pictures (iPhoto) per Symlink auf die HD gemapped.

Im Laufe der Zeit gab es dann ein paar Sonderregeln: Der Steam-Order in der Library musste aufgrund der immense Größe ebenfalls verschoben werden und eine oft verwendete VM wurde in ein anderes Verzeichnis auf die SSD gepackt (ein Symlink zurück auf die SSD ist keine gute Idee). Außerdem hat leider der Finder die Angewohnheit, symbolische Links zu erkennen und folgen zu können (Klasse!), aber dies leider nicht implizit an Ort und Stelle. Doppelklick und folgen geht, aber kein Aufklappen im Baum.

Noch nennenswert, weil interessant: Ein Time Machine Backup funktioniert auch mit zwei eingebauten Festplatten, die werden tatsächlich separat beide mit gesichert.

Selbstversuch: Durchführung

Ausgehend von den Reviews und Artikeln war klar, dass mein Macbook Pro Early 2011 definitiv keine Probleme machen würde. Die Tatsache, dass ich auch die 128er eine Samsung eingebaut hatte verstärkte den Eindruck nur noch umso mehr.

Als Vorbereitung ließ ich zunächst nochmals ein aktuelles Time Machine Backup durchführen. Da aber der Netzwerkzugriff chronisch langsam ist, entschied ich mich für eine zweite traditionelle Sicherung: ausgewählte Verzeichnisse (wie Documents, Music, Pictures, Library.. ähm, das hatten wir ja schon) wurden auf eine externe Platte geworfen.

Wichtig: Ein bootbares Device mit dem Installationsmedium 10.8.2! Das klingt banal, man muss sich nur vor Augen halten, dass man a) kein DVD-Laufwerk hat (okay, das externe vom Adapter Kit), dass man aber b) überhaupt keine OS X Installation auf DVD hat und c) mit Sicherheit nicht die neuste. Also, einmal Herunterladen und auf den USB-Stick “brennen”. Vom App Store über die InstallESD.dmg bis hin zum USB-Stick gibt es schöne Anleitungen im Netz. Versucht man ohne externes Bootmedium die Festplatten aufzulösen, so wird dies mit einem Fehler quittiert. Ja, habe ich ausprobiert.

Die eigentlichen Schritte sind schnell gemacht:

  1. Ins Bootmedium booten.
  2. Terminal öffnen.
  3. diskutil list starten, um zu Überprüfen, dass welche Devices man auswählen muss (meistens disk0 SSD und disk1 HD)
  4. diskutil cs create FusionDrive disk0 disk1 starten, um einen neuen Verbund bestehend aus disk0 und disk1 anzulegen. Alles was auf den beiden Devices liegt, wird vergessen.
  5. diskutil cs list starten, um den neu erstellten Verbund anzuzeigen (hier die UUID der Logical Volume Group nehmen)
  6. diskutil coreStorage createVolume <UUID> jhfs+ FusionDrive 500g starten, wobei die UUID gesetzt werden muss sowie ein sinnvoller (maxima möglicher?) Wert für 500g (500 GB) gesetzt werden muss.
  7. Installation fortsetzen.

Danach sieht und hört man von FusionDrive nie mehr etwas. Naja, außer das es hoffentlich schneller wird.

Wenn das Wörtchen wenn nicht wär…

Soweit die Theorie, in der Praxis erfolgte die Einrichtung nicht ganz so glatt. Die neuste Version von OS X (10.8.2) auf dem USB-Stick war bootbar und ließ zunächst auch die Änderungen über das Terminal zu. Allerdings das Macbook danach nicht mehr zum Starten zu überreden, die IO nahm sich Timeouts von über mehreren Stunden: Entweder das Setup wurde gar nicht gestartet (grauer Bildschirm mit Apfel) oder es wurde nur ins Setup mit der grafischen Oberfläche und Beachball durchgestartet. Teilweise ging das auch noch gut, aber spätestens der Zugriff auf das grafische Disk Utility (oder das eigentliche Setup) erbrachte wieder alles zum Erliegen.

Mit Hilfe des Mac Starthilfekabels – Target Disk Mode mit Firewire – konnte ich den Plattenverbund von einem anderen Mac aus ansehen und wieder zurücksetzen. Nachdem mehrere Iterationen die Sachlage nicht änderten (Festplatte war nicht mehr ansprechbar), kam ich plötzlich auf die abstruse Idee, den Verbund nicht im Setup, sondern vom zweiten Mac aus aus einzurichten. Dies ist überhaupt nicht schwer oder umständlich und macht nichts kaputt – insofern man sich bei den Device-Nummern nicht vertippt. Und tatsächlich konnte mit dieser Konfiguration das Setup sauber durchstarten und nach einer halben Stunde waren die meisten Programme schon wieder eingerichtet.

Update (25.11.2012): Auf dem Boden der Tatsachen

Mittlerweile erreichte mich eine Mail eines Lesers, der Problem mit der Einrichtung hatte. Das Einrichten klappte nicht bzw. der Mac hing sich beim Booten auf. Interessanterweise funktionierte aber das Booten via Target Disk Mode eines Fusion Drives. Das ist echt strange.

Außerdem hat Masch in den Kommentaren ebenfalls Problemen zu vermelden.

Und ich jetzt auch: Am Freitag hatte Amazon ja im Rahmen der diesjährigen Cyber-Monday-Deal-Tage u.a. auch die Samsung 830 mit 256 GB im Angebot. Da ich die alte SSD unter Freunden noch los werde, war dies auch für mich ein guter Deal. Der Austausch klappte gut, aber danach ging nichts mehr. Das Fusion Drive lokal auf dem MBP einrichten ging auch nicht (“Auf das Volumen kann nicht gewartet werden.”). Die Variante über das “Starthilfekabel” funktioniert zwar, aber das MBP selber erkennt dann auch nicht mehr das Fusion Drive an (ich sehe beim Booten plötzlich 2 Laufwerke). Mal hängt er beim Booten, mal beim Setup, mal schon irgendwo zwischendurch. Einmal konnte ich sogar den kompletten Time Machine Restore-Vorgang ausführen (hat 3 Stunden gebraucht) – mit dem Ergebnis, dass er nicht mehr booten wollte.

Kurzum: Ich denke, dass das Feature wohl nicht ohne Grund nicht prominent im Disk-Utility beworben/verfügbar gemacht wird. Ob dies jetzt an der SSD-Modellen oder -Größe liegt, weiß ich jedoch auch nicht. Man sollte sich, falls man sich auf eine Setup-Odyssee einlassen will, auf jeden Fall einen guten Backup-Plan verlassen können. Dies kann ein vollständiges (Firewire)-TimeMachine-Backup sein. Ein zweiter Mac scheint derzeit wohl auch nicht schlecht zu sein, um die Festplatten ggf. zu “resetten”.

So, also zu den Specs: Ich habe das originale Hardwrk-Kit für SATA in einem Macbook Pro Early 2011 eingebaut; das ganze bisher mit einer Samsung 830 128 GB (neuerdings die 256GB Variante). Aktuelle EFI.

Update (02.12.2012)

Mittlerweile hat auch jemand bei apfeltalk.de exakt das gleiche Experiment gewagt – und ist mit den genau gleichen Problemen gescheitert. Aber immerhin, das ganze Experiment ist garniert in Bild und Ton.