Am Dienstag, 2. Januar 2007 20:42 schrieb Klaus Klein: > Chris Ruehl wrote: > > Nur Swap um Gottes willen nicht auf ein LVM packen das wäre fatal , denn > > ein LVM verteilt die Daten > > auf den Medien und das ist bei zusammen hängendem Speicher schlecht und > > reduziert nochmal > > die Leistung. > > Phui, da hab ich ja gerade nochmal Glück gehabt das ich das gelesen habe.
Ich würde es nicht so pauschalisieren ;-) Das Thema ist recht kompliziert und wer sich an eine endgültige Beurteilung eines solchen Szenarios wagen möchte, sollte sich zumindest wirklich gut mit der zugrundeliegenden Thematik auskennen. > Ich dachte nämlich immer das Stripping (das über mehrere Platten > verteilte schreiben/lesen von Dateien [aka Raid0]) einen > Geschwindigkeitsvorteil (bessere Leistung) bringt. So einfach ist es eben nicht unbedingt. Striping bedeutet, dass aufeinanderfolgende Blöcke (auf den Arbeitsspeicher übertragen sind das dann wohl am ehesten Pages) auf unterschiedlichen physikalischen Medien befinden. Der entscheidende Vorteil dieser Technik kommt zum Tragen, wenn eine Datei sequentiell in den Arbeitsspeicher gelesen wird. Bei diesem Vorgang wird jeder einzelne Block gelesen und an eine bestimmte Stelle in den Arbeitsspeicher geschrieben. Da aber die meisten Komponenten eines Computers Daten viel schneller übertragen können, als selbst die schnellsten Festplatten, warten logischerweise während der Übertragung alle diese Komponenten auf die Daten von der Festplatte. Legt man jetzt aber die einzelnen Blöcke auf unterschiedliche Medien und ist die Read-Ahead-Funktionalität richtig konfiguriert, kann man eben mehrere Blöcke gleichzeitig laden. Selbst mit vielen Festplatten erreicht man so kaum die Geschwindigkeit des Arbeitsspeichers, kann jedoch bei einer genügenden Anzahl von Festplatten die Durchsatzrate erheblich steigern. Diese Steigerung liegt im Regelfall bei nahezu 100%, was das Striping gerade für große Dateien recht interessant macht. Ein Problem ist aber auch hier der Overhead. Der fällt im Vergleich zur Performancesteigerung zwar recht gering aus, aber es gibt eben auch Fälle, in denen es nicht möglich ist, mehrere Blöcke parallel zu lesen. Eben dieser Fall ist bei Swap gegeben: Arbeitsspeicher wird in der Regel nicht in zusammenhängenden Clustern benötigt, sondern meistens nur einzelne Pages. Und das entspricht dem Laden eines einzelnen Blocks von der Festplatte. Da dieser Vorgang nicht parallelisierbar ist, gibt es natürlich auch keine Performance-Steigerung. Einen ähnlichen Fall gibt es bei sehr kleinen Dateien. Natürlich könnte man nun die Blockgröße des Dateisystems auf einen kleineren Wert konfigurieren. Das bringt allerdings wegen der Seektime der Festplatte nicht besonders viel. Die Abwägung zwischen Striping oder nicht ist also wirklich nicht ganz trivial und definitiv nicht allgemein entscheidbar ;-) So ich hoffe, dass ich in meinem kleinen Aufsatz nicht so viele Fehler habe und das ich nicht allzuviele Leute gelangweilt habe ;-> > Wo ist da eigentlich der Unterschied zwischen zusammenhängendem Speicher > und Dateien? Hauptsächlich in der Blockgröße und der Zugriffsmethode. Max -- Max Trense -- [EMAIL PROTECTED] -- www.trense.info -- ---------------------------------------------------------------------------- PUG - Penguin User Group Wiesbaden - http://www.pug.org

