Hat jemand Leistungs- / Benchmarking-Tests auf Linux-Loopback-Dateisystemen durchgeführt? Welche Erfahrungen haben Sie bisher gemacht? Gibt es ernsthafte Leistungseinbußen? Wie wäre es mit Robustheit?
http://freshmeat.net/articles/virtual-filesystem-building-a-linux-filesystem-from-an-ordinary-file
filesystems
psaccounts
quelle
quelle
Antworten:
Ich habe ein bisschen Benchmarking mit Schreibvorgängen in einem Loopback-Gerät durchgeführt. Hier ist die Schlussfolgerung:
Benchmark-Ergebnisse
Zuerst habe ich einen Benchmark auf einem Loopback-Gerät in tmpfs von 8 GB und einem Loopback-Gerät in diesem Loopback-Gerät ( mit Synchronisierung nach jedem Schreibvorgang ) ausgeführt:
ext4 in tmpfs:
ext4 in extf in tmpfs:
Es ist klar, dass es einige Leistungsunterschiede gibt, wenn Loopback-Geräte mit Sync-on-Write verwendet werden.
Dann wiederholte ich den gleichen Test auf meiner Festplatte.
ext4 (Festplatte, 1000 MB, 3-mal):
ext4 in ext4 (Festplatte, 945 MB):
Gleicher Benchmark auf der Festplatte, jetzt ohne Synchronisierung nach jedem Schreibvorgang (
time (dd if=/dev/zero bs=1M count=1000 of=file; sync)
gemessen als<size>
/<time in seconds>
).ext4 (Festplatte, 1000 MB):
ext4 in ext4 (Festplatte, 945 MB):
(Überraschenderweise sieht der Loopback-Benchmark besser aus als der Raw-Disk-Benchmark, vermutlich aufgrund der geringeren Größe des Loopback-Geräts, sodass weniger Zeit für die eigentliche Synchronisierung mit der Festplatte aufgewendet wird.)
Benchmark-Setup
Zuerst habe ich in meinem / tmp (tmpfs) ein Loopback-Dateisystem von 8G erstellt:
Dann habe ich eine Basislinie erstellt, indem ich die gemountete Loopback-Datei mit Daten gefüllt habe:
Danach habe ich im vorherigen Loopback-Gerät ein weiteres Loopback-Gerät erstellt:
Und lief den Benchmark zehn Mal erneut:
und dann habe ich die Testdatei abgemeldet und entfernt:
(Ähnlich für den Test auf der Festplatte, außer dass ich auch hinzugefügt habe
count=1000
, um zu verhindern, dass der Test meine gesamte Festplatte füllt)(und für den Test, bei dem keine Synchronisierung durchgeführt wurde, habe ich den
dd
und densync
Vorgang zeitgesteuert ausgeführt ).quelle
Ich hatte keine Probleme. Es war alles absolut solide. Der Dateisystem-Cache und der E / A-Scheduler unter Linux sind so sinnvoll, dass es keinen merklichen Unterschied zwischen der direkten Anforderung einer Festplatte und der Anforderung eines Abschnitts einer Datei auf einer Festplatte machen sollte.
quelle