perf i/o dégueu sur nvme en prod quelle scheduler ?

gerard03 23/07/2024
RÉSOLU
gerard03
Auteur Actif
Avatar de gerard03
gerard03
Auteur Actif

Yo la gang ! on a des VMs avec des NVMe sur un kernel linux 5.x. On fait tourner une base de données avec beaucoup d'i/o aléatoires et la latence est horrible par moment. on est sur le scheduler mq-deadline par défaut. vous pensez que ça vaut le coup de switcher sur none ou kyber ? c'est de la prod donc pas envie de tout casser.


  cat /sys/block/nvme0n1/queue/scheduler

affiche: [mq-deadline] kyber bfq none

23/07/2024 à 04:34

7 commentaires

richard-vallet
Membre Actif
Avatar de richard-vallet
richard-vallet
Membre Actif

hello pour les NVMe c'est casi toujours none qui est le mieux. les NVMe sont tellement rapides qu'un scheduler logiciel ajoute juste du overhead. le hardware gère déjà super bien les files d'attente.

24/07/2024 à 03:50
gerard03
Auteur Actif
Avatar de gerard03
gerard03
Auteur Actif

ouais j'ai lu ça pas mal de fois. mais c'est bizarre que mq-deadline soit le défaut si c'est pas optimal. y a des cas où none c'est pas une bonne idée ?

25/07/2024 à 00:52
luce-bonnin
Membre Rédacteur
Avatar de luce-bonnin
luce-bonnin
Membre Rédacteur

mq-deadline est un bon compromis pour les disques rotatifs et même les SATA SSD plus anciens. mais pour les NVMe modernes oui none est souvent la meilleure option. le kernel s'attend à ce que le device gère sa propre queue d'i/o de manière intelligente. y a peu de chances de casser quoi que ce soit si tu passes à none pour du NVMe.

25/07/2024 à 20:56
richard-vallet
Membre Actif
Avatar de richard-vallet
richard-vallet
Membre Actif

non aucun risque. c'est le setup recommandé par pas mal de vendors et les docs kernel. tu peux le changer à chaud pour tester. si ça dégrade les perfs tu reviens à mq-deadline. pas besoin de reboot.


  echo none | sudo tee /sys/block/nvme0n1/queue/scheduler
26/07/2024 à 19:08
gerard03
Auteur Actif
Avatar de gerard03
gerard03
Auteur Actif

ok je vais tenter ça sur une VM de staging d'abord pour voir. si c'est concluant je le pousse en prod. thx pour le conseil. je vous tiens au jus.

27/07/2024 à 14:09
gerard03
Auteur Actif
Avatar de gerard03
gerard03
Auteur Actif

bon j'ai testé et c'est le jour et la nuit ! la latence médiane a été divisée par 3. incroyable l'impact d'un simple scheduler. merci beaucoup !

28/07/2024 à 13:38
richard-vallet
Membre Actif
Avatar de richard-vallet
richard-vallet
Membre Actif

cool à savoir ! content que ça ait résolu ton souci

29/07/2024 à 10:59

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire