¿Alguien ha hecho alguna prueba de rendimiento / evaluación comparativa en sistemas de archivos de bucle invertido de Linux? ¿Cuál ha sido tu experiencia hasta ahora? ¿Hay alguna degradación grave en el rendimiento? ¿Qué tal la robustez?
http://freshmeat.net/articles/virtual-filesystem-building-a-linux-filesystem-from-an-ordinary-file
filesystems
psaccounts
fuente
fuente
Respuestas:
He hecho un poco de evaluación comparativa con operaciones de escritura en un dispositivo de bucle invertido. Aquí está la conclusión:
Resultados de referencia
Primero, ejecuté un punto de referencia en un dispositivo loopback en tmpfs de 8GB, y un dispositivo loopback dentro de ese dispositivo loopback ( con sincronización después de cada operación de escritura ):
ext4 en tmpfs:
ext4 en extf en tmpfs:
Claramente, hay alguna diferencia en el rendimiento cuando se utilizan dispositivos de bucle invertido con sincronización en escritura.
Luego repetí la misma prueba en mi HDD.
ext4 (HDD, 1000 MB, 3 veces):
ext4 en ext4 (HDD, 945MB):
El mismo punto de referencia en HDD, ahora sin sincronización después de cada escritura (
time (dd if=/dev/zero bs=1M count=1000 of=file; sync)
, medida como<size>
/<time in seconds>
).ext4 (HDD, 1000 MB):
ext4 en ext4 (HDD, 945MB):
(Sorprendentemente, el punto de referencia de bucle invertido se ve mejor que el punto de referencia de disco sin procesar, presumiblemente debido al tamaño más pequeño del dispositivo de bucle invertido, por lo tanto, se dedica menos tiempo a la sincronización real al disco)
Configuración de referencia
Primero, creé un sistema de archivos loopback de 8G en mi / tmp (tmpfs):
Luego establecí una línea de base al llenar el archivo loopback montado con datos:
Después de hacer eso, creé otro dispositivo loopback en el dispositivo loopback anterior:
Y ejecutó el punto de referencia nuevamente, diez veces:
y luego desmonté el archivo de prueba y lo eliminé:
(de manera similar para la prueba en el HDD, excepto que también agregué
count=1000
para evitar que la prueba llene todo mi disco)(y para la prueba de no escritura en sincronización, ejecuté el tiempo
dd
y lasync
operación)fuente
No he tenido problemas Todo ha sido sólido como una roca. La memoria caché del sistema de archivos y el planificador de E / S en Linux son lo suficientemente sensibles como para no hacer una diferencia notable entre pedir un disco directamente y pedir una sección de un archivo en un disco.
fuente