Der grosse RAID-Test

In PC-Stuff

Warum?

Ich hatte ich mir vor vielen Monaten ja einen neuen PC zugelegt, der auch mit einem SATA-RAID-Controller GDT8546RZ der Firma ICP Vortex ausgestattet ist. Allerdings hatte ich in den folgenden Monaten doch ein paar kleinere Probleme, die sich hauptsächlich darin äußerten, das bei gemischten Schreib-/Lesezugriffen die Performance erheblich einbrach und teilweise der Rechner über lange Zeit (bis zu einer Minute) nicht mehr reagierte, während die Platten kräftig am Lärmen waren. Auch die verschiedenen Firmware-Updates zu dem Controller brachten keinerlei Besserung.
Daher habe ich zu einer extremen Lösung gegriffen und das System auf eine 250 GB Platte umkopiert, um mit dem Controller und den daran angeschlossenen Platten einige Tests fahren zu können. Diese werde ich auf dieser Seite präsentieren.

Testsetup

Die Testmaschine ist weiterhin unverändert:

Getestet wurden folgende Setups:

  • RAID 0 (Striping) mit 3 Platten, Stripe-Size 64k, pro Platte 20 GB im Stripe-Set (= 60GB)
  • RAID 0 (Striping) mit 3 Platten, Stripe-Size 128k, pro Platte 20 GB im Stripe-Set (= 60GB)
  • RAID 5 mit 3 Platten, Stripe-Size 128k, pro Platte 30 GB im RAID (= 60GB)
  • RAID 0 mit 2 Platten, Stripe-Size 128k, am Onboard-RAID-Controller der ICH5R Southbridge vom i875P Chipsatz. Bei diesem können nur die gesamten Platten zu einem RAID 0 zusammengefasst werden, daher werden dort die gesamten 240 GB getestet.

Ich habe extra Tests mit RAID 0 durchgeführt, da dort eigentlich hohe Datenraten zu erwarten sein sollten, und weil ich durch den Onboard-Controller im Chipsatz so einen Vergleich dazu durchführen konnte. Einsetzen will ich ein RAID 0 nicht, da mir meine Daten dafür zu wertvoll sind.
Die Grafiken sind nicht ganz repräsentativ zum Vergleich, da das Vergleichsraid am Onboard-Controller nur über die gesamte Plattengröße erstellt werden konnte. Da ich diesen Test als letzten durchgeführt habe, hatte ich dann auch keine Lust mehr, alle anderen vorherigen Tests nochmal mit jeweils 240 GB durchzuführen. Dies ist aber eher eine Benachteiligung für die Onboard-Lösung, da die Festplatten in den Außenbereichen, in denen bei den anderen Tests das RAID lag (bzw. liegen sollte), ja schneller sind.
Leider hatte ich keine vierte Platte, um auch noch Tests mit einem RAID 10 durchführen zu können.

Als Betriebssystem wurde Microsoft Windows XP Professional, Servicepack 1, eingesetzt. Es wurden jeweils die aktuellsten Treiber für die Controller verwendet.
Als Software zum Testen wurde H2Benchw von der c’t verwendet. Die Daten habe ich dann in Grafiken aufbereitet.
Im RAID-Controller waren alle Caches angeschaltet, sowohl die der einzelnen Platten als auch der des Controlers. Ebenso war Delayed Write aktiviert.

Ergebnisse Lesen

In der folgenden Grafik sind die Ergebnisse des lesenden Zugriffs zu sehen.

Zonenmessung lesen

Die dunkelgrüne Datenreihe (RAID5 240GB) ist von der alten Messung, die nur lesend durchgeführt wurde, als auch das System darauf lag. Daher ist diese nicht unbedingt repräsentativ.
Die Performance beim Lesen von RAID 5 ist ganz ordentlich, wenn man sie mit den entsprechenden Werten vom RAID 0 am gleichen Controller vergleicht. Weiterhin sind die Ergebnisse am ICP RAID Controller bis auf ein paar kleinere Spiker sehr schön linear durchgängig. Was allerdings auffällt, ist der massive Einbruch im RAID 5 ganz zu Beginn. Dieser wird dadurch verursacht, das h2benchw am Anfang einige MB schreibt, und wohl nicht lange genug wartet, das diese dann durch das delayed write vom ICP Controller weggeschrieben werden. Im RAID 5 Betrieb werden dann zu Beginn der Lesemessung noch einige Sektoren weggeschrieben, und das führt zur deutlichen Verminderung der Leserate.
Enttäuschend werden diese Ergebnisse aber dann, wenn man die RAID 0 Ergebnisse mit denen des Onboard-RAIDs der ICH5 Southbridge vergleicht. Gerade zu Beginn des Mediums, wo die RAIDs am ICP Vortex ja lagen, sollte ein RAID 0 mit Striping über 3 Platten doch mindestens die Performance eines RAID 0 mit 2 Platten erreichen. Es ist ja schön, das die Ergebnisse mit dem ICP so linear sind und es keine Einbrüche gibt, aber linear auf niedrigem Niveau ist für ein Produkt dieser Preisklasse (ca. 500 €) eigentlich nicht angemessen. Eine Leserate von deutlich mehr als 100 MB/sec sollte mit einem RAID 0 über 3 Platten schon erreicht werden können, wenn jede einzelne dieser Platten alleine schon > 50MB/sec schafft.
Ich habe auch einen kurzen Test gemacht, bei dem ich die Platten am ICP in einer JBOD-Konfiguration betrieben habe, so daß diese einzeln ansprechbar waren. In dieser Konfiguration waren ca. 40MB/sec Leserate pro Platte möglich, was schon unter dem liegt, was die Festplatten eigentlich können. Es scheint, das der S-ATA Controller nicht so richtig ausgereift ist, der von ICP verwendet wird.

Ergebnisse Schreiben

In der folgenden Grafik sind die Ergebnisse des schreibenden Zugriffs zu sehen.

Zonenmessung Schreiben

Da mit dem alten RAID keine Schreibzugriffe getestet wurden, fehlt diese Datenreihe in dieser Grafik.
Hier fällt als erstes direkt die extrem schlechte Schreibrate im RAID5 Betrieb auf. Ich weiß ja nicht, was da los ist, aber diese Performance ist nun wirklich unangemessen. Im Schnitt wurde mit ca. 6,4 MB/sec geschrieben, um das zu erreichen, brauch ich nun wirklich kein RAID 5.
Die RAID 0 Performance entspricht im großen und ganzen den Verhältnissen des Lesezugriffs, wobei allerdings die größeren 128k Stripes eine etwas bessere Performance bieten, während es beim Lesen noch umgekehrt ist.
Wieder fällt auf, das die Lösung mit dem ICH5 RAID eine deutlich bessere Performance liefert. Inbesondere zu Beginn ist dieses fast doppelt so schnell wie der ICP Controller.

Fazit

Nach Betrachtung der Ergebnisse bleibt mir im Moment nur eines: Noch ein paar weitere Tests durchführen, um herauszufinden, woher diese wirklich schlechte Schreibperformance im RAID-Zugriff kommt. In jedem Fall entspricht dieses Ergebnis nicht dem, was ich mit dem grossen RAID als Performance hatte, als ich noch damit gearbeitet habe. Allerdings war dies auch noch mit einer älteren Version der Firmware, so dass es möglich ist, das sich durch die neue Firmware die Ergebnisse verschlechtert haben.
Ich werde jetzt erstmal wieder das grosse RAID 5 mit allen drei Platten und voller Kapazität einrichten, und dann anschließend damit noch ein paar Tests durchführen, eventuell auch mit unterschiedlichen Firmware-Versionen, sofern ich diese noch habe oder besorgen kann.
Weiterhin werde ich mit diesen Informationen erneut den ICP-Support kontaktieren und mal sehen, was die dazu sagen. Ich hoffe mal, die haben eine gute Erklärung dafür, denn auch wenn der Controller nur in einem 32 Bit Slot läuft, sollte die Performance nicht so schlecht sein.

Ergebnisse H2Benchw

Hier sind noch die vollständigen Ergebnisse zum Download.

ICP RAID 0 64k Stripe Textdatei Postscript-Datei
ICP RAID 0 128k Stripe Textdatei Postscript-Datei
ICP RAID 5 Textdatei Postscript-Datei
ICH5 RAID 0 128k Stripe Textdatei Postscript-Datei

Meinungen

Bei Raid 5 unbedingt “Write back caching” aktivieren, sonst erhält man so magere Schreibraten wie bei dir.

Mr. X
#1 Mr. X 30.03.2009 12:53

Delayed Write oder “Write back caching” war definitiv an, im Zweiten Teil des Tests habe ich das auch erwähnt.

Dirk
#2 Dirk 30.03.2009 18:13

Hallo,

Es soll angeblich erheblichen Performance-Verlust geben, wenn man in einem RAID 0 eine Ungerade Anzahl von Platten verwendet … Außerdem könnte ich mir vorstellen, dass die Begrenzung auf 20GB ein Problem darstellt. Ich würde den Test nochmal wiederholen aber unter “gleichen” Voraussetzungen für alle Controller (und da gibt der ICH5R auf Grund seiner Beschränkung den Ton an) – also alle mit 2 Platten á 120 GB.

TheRAPH
#3 TheRAPH 17.11.2009 00:45