SysBench mettant en évidence des performances d'écriture de disque abyssale sur la boîte blanche vs server Tier1

Ont testé le système de boîte blanche avec la carte mère SuperMicro X8DTL avec divers disques durs SATA tels que Seagate Constellation ES 7 200 tr / min et Western Digital VelociRaptor 10 000 tr / min.

Ont testé Fedora 15, Fedora 16, Ubuntu 11, exécutant SysBench avec la command trouvée ici MySQL High Performance blog

Les résultats d'écriture de disque sont abyssaux – des résultats typiques tels que:

Operations performed: 0 Read, 3635 Write, 3635 Other = 7270 Total Read 0b Written 14.199Mb Total transferred 14.199Mb (145.39Kb/sec) 36.35 Requests/sec executed 

D'autre part, un server tier1 avec exactement le même CPU et 7 200 tr / min disques durs SATA exécutant Fedora 15 produit ces résultats de test:

 Operations performed: 0 Read, 151453 Write, 151453 Other = 302906 Total Read 0b Written 591.61Mb Total transferred 591.61Mb (5.9159Mb/sec) 1514.48 Requests/sec executed 

Je ne peux pas comprendre comment il peut y avoir une telle différence et que le système SuperMicro produit des performances d'écriture de disque aussi affreuses.

J'ai testé diverses choses, y compris tweaks à fstab, la planification, la désactivation de veille de disque et en utilisant sar, iostat, vmstat et ainsi de suite pour searchr des problèmes potentiels. Mais %idle , %iowait et ainsi de suite ne montre rien d'inhabituel. Aussi vm.zone_reclaim_mode comme indiqué ici Mauvaise performance du disque bien que le réglage par défaut sur Fedora soit déjà 0.

J'ai essayé différents parameters du BIOS pour le disque dur, y compris IDE et AHCI. On s'attendrait à ce que AHCI soit le meilleur, mais écrire la différence de performance entre les options IDE et AHCI est négligeable.

Quelqu'un a des idées?

Tout d'abord, pour effectuer des tests généraux d'IO, je recommand d'utiliser iozone: http://www.iozone.org/

Pour répondre correctement à cette question, nous avons besoin de plus d'informations sur les sous-systèmes d'E / S de chaque server.

Cependant, en général, si vous searchz de bonnes performances d'E / S, vous avez besoin d'une carte RAID matérielle dédiée avec cache embedded et d'une batterie pour sauvegarder ce cache. Cela permet à la carte RAID d'effectuer une caching en écriture différée, ce qui peut améliorer considérablement les performances des inputs-sorties. La carte RAID peut également offrir un meilleur débit en général par rapport aux controllers embarqués.

Et enfin, un paramètre AHCI dans le BIOS contrôlerait un controller SATA embarqué. Onboard signifie qu'il est sur la carte mère et n'est pas une carte RAID matérielle autonome de class server. Si IO n'est pas une priorité pour la charge de travail, un server (whitebox ou autre) peut ne pas avoir de carte RAID séparée et peut en effet utiliser le controller embedded.

Vous voulez assurément que ce paramètre du BIOS soit réglé sur AHCI, car tout autre paramètre ne fournira pas un access rapide et direct à Linux aux lecteurs. Si ce paramètre ne fait aucune différence, il est possible qu'aucun disque ne soit connecté au controller embedded ou qu'une autre configuration erronée entraîne le redémarrage de Linux ou du BIOS en mode de compatibilité IDE. Vous pouvez vérifier les messages d'amorçage du kernel pour voir quels lecteurs le kernel voit et quelle interface le kernel utilise pour accéder à ces lecteurs.