Re: Performance RAID instable
Le 27/09/2017 à 13:00, Seb a écrit :
Pour finir, je sais obtenir un retour a des performances normales en
vidant le cache :
sync ; echo 2 > /proc/sys/vm/drop_caches
(...)
J'ai utilisé "/proc/sys/vm/drop_caches" comme mot-clef dans Google. La
ligne de commande que tu indiques demande au noyau de libérer la RAM
qu'il avait allouée pour mettre en cache les fichiers et répertoires
qu'il a lus.
Plus exactement, la valeur 2 ne vide que les caches de "dentries"
(directory entries) et d'inodes, c'est-à-dire les méta-données associées
aux répertoires et fichiers, mais pas le cache du contenu des fichiers.
La valeur affichée dans la colonne "cache" par la commande free ne prend
en compte que le cache du contenu des fichiers, le "pagecache" et pas
les caches de dentries et d'inodes. Le pagecache est vidé par la valeur
1. La valeur 3 vide les deux.
C'est très bizarre que ceci influence la vitesse de nos
tableaux RAID car cette portion de RAM est supposée être réutilisable
dès qu'un besoin réel se présente.
Et surtout, ces structures de données sont liées aux systèmes de
fichiers montés et non aux périphériques bloc tels que les disques ou
ensembles RAID.
En outre, sur une machine qui est
actuellement coincée à des débits de 1 Mo/s, j'ai:
~>free -m
total used free shared buff/cache
available
Mem: 7980 773 6125 172 1080 6278
Swap: 3813 0 3813
Sur 8 Go de RAM, plus de 6 Go sont disponibles. On ne peut pas qu'il y
ait un manque.
Pour information, la mémoire occupée par les caches de dentries et
d'inodes est comptée dans la colonne "used". Elle fait partie du "slab",
dont on peut voir la taille dans /proc/meminfo et le détail dans
/proc/slabinfo (chercher les colonnes contenant "inode" et "dentry").
L'information m'a peut-être échappée, mais je n'ai pas vu dans les
messages si des tests de débit comparatifs pour déterminer l'étendue
précise du problème avaient été faits :
- en lecture dans le système de fichiers
- en écriture dans le système de fichiers
- en lecture brute dans le périphérique bloc
- en écriture brute dans le périphérique bloc (attention : détruit le
système de fichiers)
- même chose dans une partition classique non RAID
- même chose avec d'autres types de systèmes de fichiers
Reply to: