Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
ncq_native_command_queuing [Le 20/06/2010, 00:45] congelli501ncq_native_command_queuing [Le 15/12/2011, 15:17] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 +{{tag>matériel}}
  
 +====== NCQ (Native Command Queuing) ======
 +NCQ, ou Native Command Queuing est un protocole SATA qui permet, en gros, d'envoyer plusieurs requêtes en même temps a votre disque dur, afin qu'il réponde à ces requêtes dans le meilleur ordre possible (le disque va lire les donnés en suivant le chemin le plus court possible).
 +
 +Cela permet un gain de performance. ([[http://techreport.com/articles.x/8624/3]])
 +
 +Si votre carte mère et votre disque dur permettent l'utilisation de NCQ (souvent désactivé par défaut), ce serait dommage de ne pas en profiter !
 +
 +===== Support =====
 +L'utilisation de NCQ passe par l'activation du mode SATA **AHCI** dans le bios.
 +Pour pouvoir utiliser ce mode, il faut que ces éléments soient compatibles :
 +  * Le système d'exploitation, c'est le cas pour Ubuntu et Windows (nativement pour Vista et +, requiert un driver pour Windows XP).
 +<note important>Attention, si un autre système d'exploitation est installé à côté d'Ubuntu et qu'il ne gère pas le mode AHCI, il ne pourra plus démarrer tant que vous n'aurez pas désactivé l'AHCI.</note>
 +  * La carte mère et le bios : certains bios ne permettent pas l'activation de l'AHCI
 +  * Le disque lui même
 +
 +===== Mise en place =====
 +Effectuer les étapes suivantes :
 +==== Est ce que mon disque dur supporte NCQ ? ====
 +Pour le savoir faites (en remplacent /dev/sda en fonction du disque à tester) :
 +<code>
 +sudo hdparm -I /dev/sda | grep NCQ
 +</code>
 +
 +Résultat positif :
 +<code>
 +    * Native Command Queueing (NCQ)
 +</code>
 +
 +... et négatif :
 +<code>
 +     Native Command Queueing (NCQ)
 +</code>
 +(ou rien)
 +
 +Si le résultat est négatif, vous ne pouvez rien faire à part changer de disque dur.
 +
 +==== Est ce que l'AHCI est activé ? ====
 +Le mieux est d'aller voir directement dans le bios.
 +
 +Vous pouvez aussi voir si Ubuntu considère que vos disques SATA comme des disques IDE :
 +<note important>je ne suis pas certain de l'efficacité de ce test avec toutes les cartes mères.</note>
 +<code>
 +$ lshw
 +
 +<...>
 +        *-ide:0
 +             description: IDE interface
 +             product: 82801JI (ICH10 Family) 4 port SATA IDE Controller #1
 +             vendor: Intel Corporation
 +<...>
 +</code>
 +... et avec l'AHCI activé :
 +<code>
 +$ lshw
 +
 +<...>
 +        *-storage
 +             description: SATA controller
 +             product: 82801JI (ICH10 Family) SATA AHCI Controller
 +             vendor: Intel Corporation
 +<...>
 +</code>
 +
 +Si l'AHCI est désactivé... activez le dans le bios de votre carte mère (généralement option "SATA Mode").
 +
 +==== Est ce que NCQ est en cours d'utilisation ? ====
 +Si les deux points précédents sont remplis, NCQ devrait normalement être en cours d'utilisation par Ubuntu.
 +Une petite vérification s'impose:
 +<code>
 +dmesg | grep NCQ
 +</code>
 +
 +Le résultat est positif si vous obtenez **(depth 31/32)**, par exemple :
 +<code>
 +[    1.851473] ata1.00: 976773168 sectors, multi 16: LBA48 NCQ (depth 31/32)
 +</code>
 +Dans ce cas, félicitation, vous avez activé le mode NCQ !
 +<note tip>Une fois le mode AHCI activé, vous pouvez aussi faire d'autres trucs cools comme le hot plug (branchement à chaud de disques durs SATA) !</note>
 +
 +Et le résultat est négatif si vous obtenez **(depth 0/32)**, par exemple :
 +<code>
 +[    1.851473] ata1.00: 976773168 sectors, multi 16: LBA48 NCQ (depth 0/32)
 +</code>
 +Si ça ne marche pas... Vérifiez que le mode AHCI de votre matériel est bien supporté par Linux: [[https://ata.wiki.kernel.org/index.php/Hardware,_driver_status]]
 +
 +===== Liens =====
 +[[https://ata.wiki.kernel.org/index.php/Hardware,_driver_status|Support de l'AHCI par Linux]]
 +
 +[[http://fr.wikipedia.org/wiki/Native_Command_Queuing|NCQ expliqué par Wikipédia]]
 +
 +[[http://techreport.com/articles.x/8624/3|Petit benchmark]]
 +
 +===== Contributeurs =====
 +--- //[[:utilisateurs:congelli501|congelli501]] Le 20/06/2010, 00:24//