Avec la commande ci-dessus, vous ne testez pas les performances d'écriture du disque. Vous testez un ensemble de facteurs, mais surtout la latence du contrôleur et du disque. Pour tester les performances de lecture du disque, vous devez faire des pieds et des mains pour exclure la mise en cache du disque de vos tests, ce qui n'est pas trivial avec ZFS car cela implique de désactiver le cache ARC. Il est beaucoup plus facile de tester les performances en écriture : écrivez des fichiers beaucoup plus volumineux, de préférence d'une taille supérieure à la mémoire vive intégrée de votre système.
J'ai exécuté cette commande sur mon serveur de fichiers ZFS domestique (Core i3-4130T avec WDC WD80 en miroir) :
# /usr/bin/time -h dd if=/dev/zero of=sometestfile bs=1024 count=10000000
10240000000 bytes transferred in 55 secs (186900359 bytes/sec)
Ce n'est pas excellent, mais c'est un bien meilleur test des performances d'écriture réelles. Un résultat intéressant est que j'ai atteint 187MB/s alors que la performance nominale de mes disques est de 178MB/s. C'est un peu étrange car les tests de référence habituels représentent une fraction élevée des performances nominales. Le dépassement peut s'expliquer par la compression du disque par ZFS.
Mes disques sont dans un miroir ZFS (la performance de lecture 2x est plus utile pour moi que l'efficacité du stockage), mais en supposant que vos disques sont également à 5400 RPM, vous devriez vous attendre à des performances d'écriture comparables.
Pour comprendre pourquoi, même un décompte beaucoup plus important à l'aide de dd
n'est pas un bon test, vérifiez ceci :
# /usr/bin/time -h dd if=/dev/zero of=sometestfile bs=1M count=1000000
1048576000000 bytes transferred in 223.56 secs (4690377542 bytes/sec)
En augmentant simplement la taille des blocs à 1M, les performances de mon disque sont maintenant incroyables. Jusqu'à ce que vous réalisiez que lire à partir de /dev/zero signifie que la source de données n'a pas d'entropie et est hautement compressible. dd n'est pas le meilleur outil pour tester les performances d'un disque.
Il existe d'autres outils dans le catalogue des logiciels portés de FreeBSD (j'ai utilisé bonnie et iozone dans le passé) qui peuvent vous donner plus d'informations sur les performances de vos disques. Si vous êtes vraiment curieux, regardez-les. Sinon, un test de performance BEAUCOUP plus efficace pour un serveur de fichiers domestique est de copier le contenu d'un DVD ou d'un blu-ray entre deux disques et de chronométrer cette copie.