Hallo Experten!
Nachdem USB-Sticks immer billiger und größer werden,
sowie ein RAID-0 Striping den Datendurchsatz erhöht,
stellt sich die Frage, ob man so kostengünstig einen
PC entscheidend flotter machen kann.
Ein paar Linux-Freaks dürften das schon probiert haben,
aber Leistungswerte waren nicht aufzufinden. Auch ist
die Frage, ob ein Software-RAID da was bringen kann.
Gibt es schon eine Hardwarelösung für sowas?
Wer weiß da genaueres?
Vielen Dank im voraus!
Didi
Hi Didi
Nachdem USB-Sticks immer billiger und größer werden,
sowie ein RAID-0 Striping den Datendurchsatz erhöht,
stellt sich die Frage, ob man so kostengünstig einen
PC entscheidend flotter machen kann.
Ein paar Linux-Freaks dürften das schon probiert haben,
aber Leistungswerte waren nicht aufzufinden. Auch ist
die Frage, ob ein Software-RAID da was bringen kann.
Gibt es schon eine Hardwarelösung für sowas?
kaum.
Erstens ist der Speicher von von USB-Sticks relativ lahm.
Der 2. Haken an der Idee ist, dass Speicher von USB-Sticks nur für ein paar Tausend Lese-und Schreibzyklen ausgelegt ist.
Mit einem aktiven Betriebssystem wäre das in ein paar Wochen erreicht.
Interessanter sind da die neuen Flash-Festplatten, (Sandisk hat welche im Programm) oder die kombinierten Flash- mit Magnetplatten. Noch sind die allerdings sehr teuer, aber das wird sich wohl mit der Zeit ändern
Gruss
ExNicki
Moien
Nachdem USB-Sticks immer billiger und größer werden,
sowie ein RAID-0 Striping den Datendurchsatz erhöht,
stellt sich die Frage, ob man so kostengünstig einen
PC entscheidend flotter machen kann.
Vista versucht genau das out-of-the-box mit Readyboost. Pack 3-6 Readyboost Sticks rein und Vista baut ein peseudo-JBOD draus.
Ein paar Linux-Freaks dürften das schon probiert haben
Ja, haben wir. Es gibt mehrere Haken:
-
Die Latenzzeit wird bei RAID-0 grösser, nicht kleiner. Für gutes arbeiten ist aber die Latenz entscheidend. Die meisten User regen sich über Ruckler beim bearbeiten von vielen kleinen Dateien auf. Bei grossen Dateien verstecken die Programme den Zugriffmeist besser.
-
Der Datendurchsatz von einem guten Stick reicht für schnelles arbeiten aus. Bei schlechten Sticks sind meistens Latenz und Durchsatz schlecht, da lohnt es sich gar nicht.
-
Die CPU-Last durch das USB-Protocol wird irgendwann zu Problem. Wesentlich besser laufen DMA-fähige CF-Adapter oder FW. (Die CPU-Last durch RAID-0 und RAID-1 ist sehr nahe 0).
-
Billige Speicher sind bei so einem Betrieb tatsächlich nach 6-18 Monaten tot.
Ich hab derzeit nur einen mittelguten Stick als Beschleunigung drin. Da ich mir klar ist wie es um die Qualität steht ist das Teil readyonly. Drauf sind komprimierte Binaries. Das entpacken geht schneller als der zusätzliche Transfer von nicht komprimiertem (allerdings nur wenn man komprimierte Dateisysteme wie squashfs benutzt. Bei einzelenen Dateien würde sich das ganze gar nicht lohnen).
cu
Hallo Pumpkin!
Vielen Dank für deine Antwort.
- Die Latenzzeit wird bei RAID-0 grösser, nicht kleiner. Für
gutes arbeiten ist aber die Latenz entscheidend. Die meisten
User regen sich über Ruckler beim bearbeiten von vielen
kleinen Dateien auf. Bei grossen Dateien verstecken die
Programme den Zugriffmeist besser.
Hm. Also mir ist nicht klar, warum sich die Latenzzeit bei
einem RAID-0 System verschlechtern soll. Ich mache doch
gerade deshalb das RAID-Striping, damit ich parallel
lesen/schreiben kann, wobei die Speicherzugriffzeit pro
Laufwerk gleich bleibt.
Das mit den kleinen Dateien leuchtet ein. Da kann dann
ein Laufwerk nur mit seiner Geschwindikeit die Wuzi-Daten
liefern. Fraglich, ob man in der Praxis überwiegend mit
vielen, dermaßen kleinen (
Hallo exnicki!
Interessanter sind da die neuen Flash-Festplatten, (Sandisk
hat welche im Programm)
Jo, mehrere Hersteller haben da was.
Und wie erreichen die wohl diese Werte (reine Flash-Drives):
Datendurchsatz: ca. 100 MB/s Lesen, 80 MB/s Schreiben?
Würde ein einzelner Flash-RAM schon so schnell sein,
dann gäbe es auch schon USB-Sticks am Limit bei 60MB/s.
Aber vielleicht habe ich das nur noch nicht mitbekommen?
wird sich wohl mit der Zeit ändern
Das würde ich auch vermuten.
Schöne Grüße,
Didi
Hallo Didi,
Und wie erreichen die wohl diese Werte (reine Flash-Drives):
Datendurchsatz: ca. 100 MB/s Lesen, 80 MB/s Schreiben?
Fragt sich als Erstes, welche Angaben das sind, sieht sehr nach Burstrates aus. Also die Datenrate für einen einzigen Sektor.
Würde ein einzelner Flash-RAM schon so schnell sein,
dann gäbe es auch schon USB-Sticks am Limit bei 60MB/s.
Aber vielleicht habe ich das nur noch nicht mitbekommen?
Die verwenden wohl auf keinen Fall USB 
Und wie kommst du auf 60Mbyte/s ??
Dies ist bei USB ein theoretischer Wert, welcher nur für 1/1’000 Sekunden erreicht werden kann.
MfG Peter(TOO)
Hallo Didi,
- Die Latenzzeit wird bei RAID-0 grösser, nicht kleiner. Für
gutes arbeiten ist aber die Latenz entscheidend. Die meisten
User regen sich über Ruckler beim bearbeiten von vielen
kleinen Dateien auf. Bei grossen Dateien verstecken die
Programme den Zugriffmeist besser.
Hm. Also mir ist nicht klar, warum sich die Latenzzeit bei
einem RAID-0 System verschlechtern soll. Ich mache doch
gerade deshalb das RAID-Striping, damit ich parallel
lesen/schreiben kann, wobei die Speicherzugriffzeit pro
Laufwerk gleich bleibt.
Die Sticks haben aber eine USB-Schnittstelle !!
Und da liegt eben deine Denkfehler, bei USB haut das mit dem parallelen Zugriff nicht so hin.
Die USB-Geräte müssen sich die Bandbreite teilen…
Die Überlegung war: ich nehme 4 billige USB-Sticks mit ca.
15MB/s lesen/schreiben, einen kleinen 4´er USB-Hub zum
Anstoppeln, in der Hoffnung 60MB/s lesen/schreiben im
RAID-0 Verbund zu erreichen.
Wie ich in meiner anderen Antwort geschrieben habe, sind diese 60MByte/s nur Burstwerte bei USB.
- Die CPU-Last durch das USB-Protocol wird irgendwann zu
Problem. Wesentlich besser laufen DMA-fähige CF-Adapter oder
FW. (Die CPU-Last durch RAID-0 und RAID-1 ist sehr nahe 0).
Gibt´s da auch Meßwerte, wieviel % CPU Load nun insgesamt
USB&RAID erzeugt? Wäre ein wichtiger Wert.
Teilweise hängt das von der Intelligenz des Controllers ab, müsste also für jeden einzeln bestimmt werden.
Ein weiterer Punkt sind dann die Treiber für die einzelnen Geräte, da kann man auch sehr ineffizient programmieren.
USB benutzt ein Master/Slave Konzept, die Geräte müssen also dauernd vom Host abgefragt werden. Eine schlechte Implementierung in Gerät und Treiber fragt dann natürlich auch im Leerlauf immer einen grossen Statusblock möglichst oft ab, was den Durchsatz des ganzen USB bremsen kann, bzw. die CPU-Auslastung erhöht.
MfG Peter(TOO)