# Software RAID-5 optimieren

## ziererk

Hallo zusammen,

ich habe im Internet ein wenig gesucht, um vergleichbare RAID-5 Benchmarks zu finden, und habe einige gefunden, die haben meistens mehr als das doppelte meiner Leistung.

Ich habe 4 Western Digital 80GB IDE-Festplatten, jede an einem eigenen Channel, keine Slaves. 2 Platten sind am Board angeschlossen und 2 an einem Promise TX2000. Sie befinden sich im RAID-5-Verbund mit 64k Chunk-Size. Die Kiste ist ansonsten ein P4 1,6GHz mit 512MB Rambus-RAM (werde das demnächst durch 2GB DDR-RAM ersetzen).

```
fileserver ~ # nice -n -20 hdparm -t /dev/md1

/dev/md1:

 Timing buffered disk reads:  140 MB in  3.16 seconds =  44.28 MB/sec

fileserver ~ # nice -n -20 hdparm -t /dev/hda

/dev/hda:

 Timing buffered disk reads:  126 MB in  3.02 seconds =  41.78 MB/sec

fileserver ~ # nice -n -20 hdparm -t /dev/hdc

/dev/hdc:

 Timing buffered disk reads:  134 MB in  3.03 seconds =  44.26 MB/sec

fileserver ~ # nice -n -20 hdparm -t /dev/hde

/dev/hde:

 Timing buffered disk reads:  138 MB in  3.04 seconds =  45.34 MB/sec

fileserver ~ # nice -n -20 hdparm -t /dev/hdg

/dev/hdg:

 Timing buffered disk reads:  134 MB in  3.02 seconds =  44.37 MB/sec
```

Wie man sieht, hat das gesamte Raid etwa die gleiche Leistung wie die Festplatten einzeln. Die CPU-Leistung steigt auch nicht deutlich an, nur der I/O-Wait-Anteil. Der [md1_raid5]-Prozess kommt eigentlich nie über 10% CPU-Last drüber. Kann mir einer sagen, ob das schon den "normalen" Leistungen für das System entspricht, oder wo vermutlich der Flaschenhals sitzt? Sollte ich nicht wenigstens die doppelte Leseperformance einer Platte einzeln haben, einmal den vollen Durchsatz für den Onboard-Controller und einmal für den Promise-Controller?

Klaus

----------

## Klaus Meier

Keine Ahnung, was du dir da gebastelt hast. Aber ich glaube, es ist alle mögliche, nur kein Raid5. Dachte bislang immer, dazu müßten die Platten an einem Controller hängen, der Raid5 unterstützt. Häng doch mal alle Platten an einen Comtroller, zwei als Master, zwei als Slave.

----------

## ziererk

 *Klaus Meier wrote:*   

> Keine Ahnung, was du dir da gebastelt hast. Aber ich glaube, es ist alle mögliche, nur kein Raid5. Dachte bislang immer, dazu müßten die Platten an einem Controller hängen, der Raid5 unterstützt. Häng doch mal alle Platten an einen Comtroller, zwei als Master, zwei als Slave.

 

Du redest da von Hardware-RAID5. Ich habe hier ein Software RAID5. Wenn ich da 2 Platten als Master/Slave zusammenhänge, bremse ich die ja noch zusätzlich aus.

----------

## schmutzfinger

Ich würde mal tippen das der PCI-Bus das Problem ist. Deine beiden zusätzlichen Controller hängen doch an PCI? Imho kann PCI nur sowas um die 130MB/s. Und weil da neben en beiden Controllern noch andere sachen dranhängen kommst du nicht auf 130/2. Probier mal spasshalber nen raid0 über die onboard controller, geht vielleicht schneller.

----------

## ziererk

```
fileserver ide # lspci

00:00.0 Host bridge: Intel Corporation 82850 850 (Tehama) Chipset Host Bridge (MCH) (rev 02)

00:01.0 PCI bridge: Intel Corporation 82850 850 (Tehama) Chipset AGP Bridge (rev 02)

00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 04)

00:1f.0 ISA bridge: Intel Corporation 82801BA ISA Bridge (LPC) (rev 04)

00:1f.1 IDE interface: Intel Corporation 82801BA IDE U100 (rev 04)

00:1f.2 USB Controller: Intel Corporation 82801BA/BAM USB (Hub #1) (rev 04)

00:1f.3 SMBus: Intel Corporation 82801BA/BAM SMBus (rev 04)

00:1f.4 USB Controller: Intel Corporation 82801BA/BAM USB (Hub #2) (rev 04)

00:1f.5 Multimedia audio controller: Intel Corporation 82801BA/BAM AC'97 Audio (rev 04)

01:00.0 VGA compatible controller: nVidia Corporation NV5M64 [RIVA TNT2 Model 64/Model 64 Pro] (rev 15)

02:09.0 Ethernet controller: 3Com Corporation 3c905B 100BaseTX [Cyclone] (rev 24)

02:0a.0 RAID bus controller: Promise Technology, Inc. PDC20271 (FastTrak TX2000) (rev 02)

02:0b.0 Network controller: Cologne Chip Designs GmbH ISDN network controller [HFC-PCI] (rev 02)

02:0c.0 Network controller: AVM Audiovisuelles MKTG & Computer System GmbH A1 ISDN [Fritz] (rev 02)
```

Nun ja, nach meiner Interpretation dieser Daten hängt der eine (chipsatzintegrierte) IDE-Controller nicht am PCI-Bus, sondern nur der Promise. Dann müssten mir bei 133MB/s abzüglich overhead noch ca. 60MB/s fürs gesamte Raid 5 übrig bleiben. Im absoluten Optimalfall hab ich aber leider nur ca. 40, wenn ich vom Dateisystem raus was lese liege ich meistens noch unter 30MB/s.  :Sad: 

----------

## dakjo

 *Klaus Meier wrote:*   

> Keine Ahnung, was du dir da gebastelt hast. Aber ich glaube, es ist alle mögliche, nur kein Raid5. ...

 

Wenn mann keine Ahnung hat, besser einfach mal die klappe halten.

Also ich wuerde sagen, ein Softwareraid kann nur immer max. so schnell sein wie die langsamste seiner Komponenten. 

Ein Softwareraid hat keinen eigenen Cache ausser den Arbeitsspeicher dem es nicht vertrauen darf, also sofort lesen und sofort schreiben.

Und dafür das dein SWRaid ja wirklich fast die Geschwindigkeit der Platten hat würde ich sagen, ist da kein Flaschenhals mehr zu finden.

----------

## Reto Hasler

Soviel ich weiss ist bei einem Raid nur ein Geschwindigkeitsgewinn möglich, wenn ein Raid0 gemacht wird. Alle anderen Formen von Raid dienen dazu, die Betriebssichterheit im Falle eines Harddisc-Defektes zu gewährleisten. Ich glaube daher ist es nicht möglich, mehr als die Leistung die du schon hast, herauszuholen

Gruss Reto

----------

## dakjo

 *Reto Hasler wrote:*   

> Soviel ich weiss ist bei einem Raid nur ein Geschwindigkeitsgewinn möglich, wenn ein Raid0 gemacht wird. Alle anderen Formen von Raid dienen dazu, die Betriebssichterheit im Falle eines Harddisc-Defektes zu gewährleisten. Ich glaube daher ist es nicht möglich, mehr als die Leistung die du schon hast, herauszuholen... 

 

Mit einem Hardware-Raidcontroller könnte mann noch ein wenig gewinnen... ein wenig.

 *Quote:*   

> flip bastl # nice -n -20 hdparm -t /dev/sdc
> 
> /dev/sdc:
> 
>  Timing buffered disk reads:  867 MB in  3.01 seconds = 288.19 MB/sec
> ...

 

OK, das ist jetzt nen 3Ware mit SATA und 5 Platten  :Very Happy: 

----------

## ziererk

 *Quote:*   

>  *Quote:*   flip bastl # nice -n -20 hdparm -t /dev/sdc
> 
> /dev/sdc:
> 
>  Timing buffered disk reads:  867 MB in  3.01 seconds = 288.19 MB/sec
> ...

 

Naja, allein die Platten dürften in den 4 Jahren schon leicht die Geschwindigkeit verdreifacht haben, und wenn ich jetzt neue Platten kauf, und nen halbwegs brauchbaren Raid-Controller, aber eigentlich bräuchte ich in der Kiste noch dringender mehr RAM, dann brauche ich noch ein neues Board und 2GB RAM (weil Rambus-Speicher einfach nicht mehr bezahlbar ist) und die CPU ist eigentlich auch nicht mehr wirklich gut, macht zusammen... *Kassenklingel-Ton einspiel*...  :Wink: 

Naja, ich werd wohl doch noch versuchen, aus der alten Kiste mehr rauszuholen.

Interessant finde ich z.B. auch, dass, wenn ich nicht hdparm zum Benchmarken benutze, sondern irgend etwas anderes (z.B. dd), dann schaff ich auf der hda nur 22MB/s, hdc 26MB/s und hde und hdg beide 30MB/s, wenn ich je 10GB lesen lasse. Der hdparm-Benchmark ist wohl nicht viel wert. Das relativiert dann schon wieder etwas den schlechten Raid-Benchmark, allerdings würde ich mir immer noch ca. 70MB (lesend) erwarten, wenn ich die Werte von den 3 schlechtesten Platten addiere. Auf der Vierten ist ja anteilig nur die Paritätsinformation, die bringt mir ja nix beim lesen.

Und interessant ist auch, dass die hda-Festplatte eine andere logische Geometrie hat als die anderen, obwohl die Platten eigentlich fast gleich sind (alle 4 sind WD800BB, nur andere Chargen, bzw. eine ist glaub ich ca. 1 Jahr jünger).

```
fileserver ide # cat hd*/geometry

(hda)

physical     16383/16/63

logical      16383/255/63

(hdc)

physical     16383/16/63

logical      65535/16/63

(hde)

physical     16383/16/63

logical      65535/16/63

(hdg)

physical     16383/16/63

logical      65535/16/63
```

Lustigerweise ist die hda laut dd die lahmste von allen. Könnte das evtl. davon kommen? Kann ich die logische Adressierung einfach ändern und wie?

Klaus

----------

## schmutzfinger

Zum Thema hardware-Controller kaufen:

Ich nehme lieber Software-Raid. Wenn dir bei einem Hardware-Raid der Controller kaputtgeht dann bringt dir die ganze Redundanz garnix. Dann kannst du nur hoffen das du genau den selben, oder einen kompatiblen Controller beschaffen kannst. Und das ganz in 3 Jahren schon wirklich schwer sein. Bei teuren Controllern im Serverbereich hat man vielleicht kein Problem nach einigen Jahren Ersatz zu beschaffen. Bei dem "billigen" Onboard und PCI Kram würde ich mich darauf nicht verlassen wollen. Den Linux Kernel wirst du in ein paar Jahren auch noch bekommen oder du hast ein paar alte Knoppix CDs rumliegen.

Soweit ich weiß ist die Performance von Soft-Raid auch nicht wirklich wesentlich schlechter als die von Hardware-Raid. Die CPU hat mehr zu tun aber CPUs sind ja nicht wirklich teuer.

----------

## Klaus Meier

 *schmutzfinger wrote:*   

> Zum Thema hardware-Controller kaufen:
> 
> Ich nehme lieber Software-Raid. Wenn dir bei einem Hardware-Raid der Controller kaputtgeht dann bringt dir die ganze Redundanz garnix. Dann kannst du nur hoffen das du genau den selben, oder einen kompatiblen Controller beschaffen kannst. Und das ganz in 3 Jahren schon wirklich schwer sein. Bei teuren Controllern im Serverbereich hat man vielleicht kein Problem nach einigen Jahren Ersatz zu beschaffen. Bei dem "billigen" Onboard und PCI Kram würde ich mich darauf nicht verlassen wollen. Den Linux Kernel wirst du in ein paar Jahren auch noch bekommen oder du hast ein paar alte Knoppix CDs rumliegen.
> 
> Soweit ich weiß ist die Performance von Soft-Raid auch nicht wirklich wesentlich schlechter als die von Hardware-Raid. Die CPU hat mehr zu tun aber CPUs sind ja nicht wirklich teuer.

 Dazu kann man nur sagen, 2 Controller kaufen. Einen im Einsatz, einen zur Reserve. Und bei Festplatten würde ich mir auch eine auf Reserve hinlegen. Wer weiß, ob man da in zwei Jahren noch welche bekommt, die an Controller von heute passen.

----------

## dakjo

Es gibt eh nur zwei gute, echte HW-Controller. 3ware und ICP. Alles andere ist murks. Und die sind alle auf und abwärtskompatible.

Hab sogar mal nen sata-raid mit pata wandler an nem pata-3ware angeschlossen. Tut.

----------

## PrakashP

 *schmutzfinger wrote:*   

> Ich würde mal tippen das der PCI-Bus das Problem ist. Deine beiden zusätzlichen Controller hängen doch an PCI? Imho kann PCI nur sowas um die 130MB/s. Und weil da neben en beiden Controllern noch andere sachen dranhängen kommst du nicht auf 130/2. Probier mal spasshalber nen raid0 über die onboard controller, geht vielleicht schneller.

 

*Hust* 50% overhead? Es sind eher 10%. Ich kam mit einem RAID0 auf ~100MB/sec über PCI...

----------

## schmutzfinger

Naja es wäre eine Möglichkeit gewesen. Wenn da noch ne GB Netzwerkkarte dranhängt und die gerade läuft...

----------

## Marlo

 *ziererk wrote:*   

> ... und 2 an einem Promise TX2000. Sie befinden sich im RAID-5-Verbund... 

 

Hallo ziererk,

bist du sicher, dass das ein TX2000 ist? Wenn ja, wie kann man mit einem Promise TX2000, der ein Raid 0,1,0+1 Controller ist ein Raid 5 bauen?

Gib doch mal die Ausgabe von

```
cat /proc/mdstat
```

Grüße

Ma

----------

## schmutzfinger

Marlo nem Software Raid ist der Controller völlig egal. Kannst dir auch nen Raid über 2 DVD-Rams bauen, wenn du willst sogar über nfs oder samba.

----------

## Marlo

 *schmutzfinger wrote:*   

>  Kannst dir auch nen Raid über 2 DVD-Rams bauen, wenn du willst sogar über nfs oder samba.

 

Danke, ist mir bekannt.

 *schmutzfinger wrote:*   

> Marlo nem Software Raid ist der Controller völlig egal.

 

Variante 1:

Ziererk hat 4 Platten, 2 davon schließt er mit Promise zusammen. Also "sieht" er nur noch 3 Platten. Eine davon ist ein raid 0 oder raid 1. Wie willst du jetzt einem existierendes Raid 0 oder 1 ein Softwareraid 5 überstülpen?

Variante 2:

Ziereck schließt die Platten nicht mit dem Promise zusammen, "sieht" vier Platten und baut ein Softwareraid 5.  Wohlgemerkt, der Promise Controller wird nicht genutzt! Man könnte ihn auch ausbauen. Aber man hat den Flaschenhals des Controllers und wird ausgebremst, denn die im Controller enthaltene "Raidsoftware" wird ja nicht genutzt.

Deshalb nochmal, Ziereck poste doch mal die Ausgabe von:

```
cat /proc/mdstat
```

Ma

----------

## ziererk

 *Quote:*   

> Variante 1:
> 
> Ziererk hat 4 Platten, 2 davon schließt er mit Promise zusammen. Also "sieht" er nur noch 3 Platten. Eine davon ist ein raid 0 oder raid 1. Wie willst du jetzt einem existierendes Raid 0 oder 1 ein Softwareraid 5 überstülpen?
> 
> Variante 2:
> ...

 

Ja, es ist ein FastTrak TX2000 (lspci: "Promise Technology, Inc. PDC20271 (FastTrak TX2000)"), aber ich nutze kein RAID von dem. Der ist nur drin, weil ich früher die Platten jeweils als Master/Slave drin hatte, und das ein Versuch war, die Performance zu steigern, in dem ich jede Platte an einen einzelnen Channel hänge. Die Verbesserung, die ich mir davon eingebildet habe, dürfte wohl unter Meßtoleranz fallen.  :Sad: 

```
fileserver ~ # cat /proc/mdstat

Personalities : [raid0] [raid1] [raid5] [raid4]

md1 : active raid5 hdg3[2] hde3[3] hdc3[0] hda3[1]

      221648448 blocks level 5, 64k chunk, algorithm 0 [4/4] [UUUU]

md0 : active raid5 hdg2[2] hde2[3] hdc2[0] hda2[1]

      12024384 blocks level 5, 64k chunk, algorithm 0 [4/4] [UUUU]

unused devices: <none>
```

Kleiner Nachtrag dazu: Interessant ist, als ich den Promise-Controller in das RAID nachträglich eingefügt habe, ist die Performance ziemlich konstant geblieben.

Ich nutze zur Zeit übrigens Hardened Gentoo, aber auf der gleichen Kiste lief früher ein RedHat 9, da war das RAID ähnlich grottig lahm.

----------

## Marlo

 *ziererk wrote:*   

> 
> 
> Ja, es ist ein FastTrak TX2000 (lspci: "Promise Technology, Inc. PDC20271 (FastTrak TX2000)"), aber ich nutze kein RAID von dem. Der ist nur drin, weil ich früher die Platten jeweils als Master/Slave drin hatte, und das ein Versuch war, die Performance zu steigern, in dem ich jede Platte an einen einzelnen Channel hänge. Die Verbesserung, die ich mir davon eingebildet habe, dürfte wohl unter Meßtoleranz fallen. 
> 
> 

 

Es wurde schon zig mal im Forum gepostet. Aber dennoch nocheinmal: [quote]

Es gibt nur wenige "richtige" Hardware-Raidcontroller. Promisecontroller sind an sich nur Controller die ein Softraid aufbauen und somit nicht zu vergleichen sind mit den "richtigen". Hinzu kommt die Tatsache, dass Promise nicht ambitioniert auf Linuxtreiber achtet. Unter $win arbeiten die Dinger toll; echt gut. Aber eben nur in den Modi, die angegeben sind 0,1,0+1.  

```
fileserver ~ # cat /proc/mdstat

Personalities : [raid0] [raid1] [raid5] [raid4]

md1 : active raid5 hdg3[2] hde3[3] hdc3[0] hda3[1]

      221648448 blocks level 5, 64k chunk, algorithm 0 [4/4] [UUUU]

md0 : active raid5 hdg2[2] hde2[3] hdc2[0] hda2[1]

      12024384 blocks level 5, 64k chunk, algorithm 0 [4/4] [UUUU]

unused devices: <none>
```

Gut, Danke. Das zeigt die Nichtnutzung des Promise.

Vorausgesetzt, dass das MB 4 Anschlüsse für deine IDEs hat (?),  würde ich das Teil, wenn (!) du ein Raid 5 willst, nach einer Vergleichsrechnung, ausbauen und ein Softraid ohne Promise aufbauen.

Rein rechnerisch ergibt sich die Geschwindigkeit im Raid5, indem man die Anzahl der Platten minus 1 nimmt. Bei dir also 4-1=3x Geschwindigkeit der langsamsten! Platte. Der Verbund sollte also 3 x XXMB/s = XXX MB/s rechnerisch! bringen. Davon abzuziehen ist der Overhead, der für die Verwaltung des Raid benötigt wird. Weitere Restriktionen sind der Bus und der Zustand der Platten sowie die Lage des Raid auf der Platte; vorne <->hinten.

Ich habe ein Raid5 mit 4 Platten a 60MB/s = 180MB/s.

Tatsächlich erreicht wird:

```

hdparm -tT /dev/md6

/dev/md6:

 Timing cached reads:   3700 MB in  2.00 seconds = 1849.88 MB/sec

 Timing buffered disk reads:  492 MB in  3.00 seconds = 163.77 MB/sec

```

Also etwa 10% weniger als die theoretische Geschwindigkeit. Mit dem Softraid bin ich höchst zufrieden.

Auch die vielzitierte CPU-Auslastung halte ich für minimal. Top zeigt:

```
[/quote]

Cpu(s):  0.7% us

```

Wir können ja mal zusammen rechnen. Welche Platten hast du den genau und welcher Speed wird im Datenblatt angegeben?

Oder du postest jedes einzelne Ergebnis von:

```
hdparm -tT /dev/hdX 
```

 *Quote:*   

> 
> 
> Kleiner Nachtrag dazu: Interessant ist, als ich den Promise-Controller in das RAID nachträglich eingefügt habe, ist die Performance ziemlich konstant geblieben.
> 
> 

 

(?)Nachträglich(?) halte ich für ungewöhnlich. Will das auch nicht weiter ansprechen.

 *Quote:*   

> 
> 
> Ich nutze zur Zeit übrigens Hardened Gentoo, aber auf der gleichen Kiste lief früher ein RedHat 9, da war das RAID ähnlich grottig lahm.

 

Wenn ein grundsätzlicher Konfigurationsfehler vorhanden ist, ist das Grottige auf alle Distris übertragbar.

Als poste mal die Ergebnisse vom Datenblatt oder hdparm -tT /dev/hdX, um zu sehen, wie das raid rechnerisch arbeiten müsste.

Grüße

Ma

----------

## ziererk

 *Quote:*   

> Gut, Danke. Das zeigt die Nichtnutzung des Promise.
> 
> Vorausgesetzt, dass das MB 4 Anschlüsse für deine IDEs hat (?),  würde ich das Teil, wenn (!) du ein Raid 5 willst, nach einer Vergleichsrechnung, ausbauen und ein Softraid ohne Promise aufbauen.

 

Hat es leider nicht, deshalb auch der Promise. Und auch nur ein Promise (und einer, der selbst RAID-1 könnte), weil der halt grad in der Schublade lag.

 *Quote:*   

> Rein rechnerisch ergibt sich die Geschwindigkeit im Raid5, indem man die Anzahl der Platten minus 1 nimmt. Bei dir also 4-1=3x Geschwindigkeit der langsamsten! Platte. Der Verbund sollte also 3 x XXMB/s = XXX MB/s rechnerisch! bringen. Davon abzuziehen ist der Overhead, der für die Verwaltung des Raid benötigt wird. Weitere Restriktionen sind der Bus und der Zustand der Platten sowie die Lage des Raid auf der Platte; vorne <->hinten.

 

Soweit klar, auf der 4. Platte ist ja nur anteilig die Paritätsinfo.

 *Quote:*   

> Ich habe ein Raid5 mit 4 Platten a 60MB/s = 180MB/s.
> 
> Tatsächlich erreicht wird:
> 
> ```
> ...

 

Meine Platten haben ca. 35MB/s, d.h. ich würde mir auch ca. 90MB/s erwarten, was ich auch bei Leuten mit vergleichbaren Systemen (4x 80GB) bereits als Vergleichswert gelesen habe.

Hdparm kommt zwar auf 45MB/s, aber da vertraue ich lieber meinem DD-Benchmark, wo ich mehrere GB von den Platten gelesen habe, als hdparm, das nur ca. 150MB liest.

 *Quote:*   

> Wir können ja mal zusammen rechnen. Welche Platten hast du den genau und welcher Speed wird im Datenblatt angegeben?
> 
> Oder du postest jedes einzelne Ergebnis von:
> 
> ```
> ...

 

Habe ich am Threadanfang bereits gepostet. Meine Platten sind 4x WD800BB.

 *Quote:*   

>  *Quote:*   
> 
> Kleiner Nachtrag dazu: Interessant ist, als ich den Promise-Controller in das RAID nachträglich eingefügt habe, ist die Performance ziemlich konstant geblieben.
> 
>  
> ...

 

Früher waren je 2 Platten als Master/Slave an den beiden OnBoard-IDEs. Das wechseln auf den Promise habe ich deshalb gemacht, weil ich gehofft habe, dadurch spürbar mehr Geschwindigkeit rauszuholen. Linux sucht sich die Platten ja eh selbst wieder in der richtigen Reihenfolge zusammen.

Klaus

----------

## Marlo

 *ziererk wrote:*   

>  *Quote:*   Gut, Danke. Das zeigt die Nichtnutzung des Promise.
> 
> Vorausgesetzt, dass das MB 4 Anschlüsse für deine IDEs hat (?),  würde ich das Teil, wenn (!) du ein Raid 5 willst, nach einer Vergleichsrechnung, ausbauen und ein Softraid ohne Promise aufbauen. 
> 
> Hat es leider nicht, deshalb auch der Promise. Und auch nur ein Promise (und einer, der selbst RAID-1 könnte), weil der halt grad in der Schublade lag.
> ...

 

Ok, das ist ein KO-Kriterium für mich. Da kann ich nicht weiter aus eigenen Erfahrungen berichten.

 *Quote:*   

> 
> 
> Meine Platten haben ca. 35MB/s, d.h. ich würde mir auch ca. 90MB/s erwarten

 

Sehe ich auch so.

Ähem, was ist mit den Parametern von hdparm(?).

Grüße

Ma

----------

## ziererk

 *Quote:*   

> Ähem, was ist mit den Parametern von hdparm(?).

 

Habe nur mit -t gebenchmarkt, weil mich ja der echte Plattendurchsatz interessiert, nicht der RAM-Durchsatz.

----------

## firefly

Marlo: ähm er hat nirgends gesagt, das er ein hardware-raid benutzt.

 *ziererk wrote:*   

> Du redest da von Hardware-RAID5. Ich habe hier ein Software RAID5. Wenn ich da 2 Platten als Master/Slave zusammenhänge, bremse ich die ja noch zusätzlich aus.

 

----------

## Marlo

 *firefly wrote:*   

> Marlo: ähm er hat nirgends gesagt, das er ein hardware-raid benutzt.
> 
> 

 

Ja Danke firefly. Dieser Punkt ist auf allen Seiten klar.

Aber fällt dir vieleicht etwas ein um ziererk helfen zu können? Eine PCI Lösung? 

Grüße

Ma

----------

## schmutzfinger

Also ich würde es mal mit einem komplett anderen Kernel probieren. Möglichst radikal, also ein großer Versionssprung, vielleicht zurück auf 2.4.

Ich habe hier nen Rechner der mit nem aktuellen 2.6er auch relativ langsames raid macht, allerdings noch krasser. (~4MB/s weil kein dma)

Mit nem 2.4er geht das ganze flüssiger, habe die Zahlen nicht im Kopf aber ich glaube auch so 50-60MB/s.

Also am besten mal ne Knoppix-CD rein, 2.4er booten und hdparm auf die einzelnen Platten testen. Wenn das schneller geht würde ich das raid bauen (mdadm -A) und nochmal hdparm auf das raid loslassen. Damit wirst du dein Problem nicht lösen, aber du findest raus ob vielleicht der Kernel schuld ist. Sollte es der Kernel sein, kannst du ihn immernoch nen neuen bauen.

----------

## ziererk

 *schmutzfinger wrote:*   

> Also ich würde es mal mit einem komplett anderen Kernel probieren. Möglichst radikal, also ein großer Versionssprung, vielleicht zurück auf 2.4.
> 
> Ich habe hier nen Rechner der mit nem aktuellen 2.6er auch relativ langsames raid macht, allerdings noch krasser. (~4MB/s weil kein dma)
> 
> Mit nem 2.4er geht das ganze flüssiger, habe die Zahlen nicht im Kopf aber ich glaube auch so 50-60MB/s.

 

Das geht leider nicht, weil die Kiste im Produktivbetrieb ist und täglich laufen muss. Aber früher lief darauf noch ein 2.4er (zu RedHat 9-Zeiten), und da war die Sache nicht wirklich besser.

 *Quote:*   

> Also am besten mal ne Knoppix-CD rein, 2.4er booten und hdparm auf die einzelnen Platten testen. Wenn das schneller geht würde ich das raid bauen (mdadm -A) und nochmal hdparm auf das raid loslassen. Damit wirst du dein Problem nicht lösen, aber du findest raus ob vielleicht der Kernel schuld ist. Sollte es der Kernel sein, kannst du ihn immernoch nen neuen bauen.

 

Ich habe die Platten bereits einzeln (natürlich nur lesend) getestet. Die ca. 40MB/s Einzeldurchsatz, und das gesamte RAID-5 schafft etwa das gleiche. Fast wie wenn er die Daten nacheinander lesen würde, und nicht gleichzeitig. Ich habe garantiert auch schon mehr als 5 verschiedene Kernel auf der Kiste am laufen gehabt, also was grundlegendes glaub ich kann das nicht sein. Eher noch eine Kernelkonfigurationsgeschichte, weil die hab ich natürlich nicht jedesmal von Grund auf neu konfiguriert.

Die Hdparm-Parameter hab ich auch schon durchgetestet, hat aber nicht deutlich was rausgeholt. Früher hab ich nur "-d1" benutzt, seitdem ich "-d1 -u1 -c1 -X69" benutze, habe ich pro Platte ca. 5MB/s mehr im Durchschnitt (vor allem der -u hat beim Lesen großer Datenmengen die Geschwindigkeit stabilisiert, früher ist der von Zeit zu Zeit etwas eingeknickt).

Interessant ist, dass mit der 5MB/s-Steigerung pro Platte das RAID auch gleich um ca. 5MB/s schneller geworden ist. Es ist wie wenn er immer nur von einer Platte liest, anstatt von allen. Verrückt.

Klaus

----------

