5.4. Caractéristiques de performance des disques durs

Les caractéristiques de performance des disques durs ont déjà été abordées très brièvement dans la Section 4.2.4 ; la présente section examine elle le sujet de manière beaucoup plus approfondie. Il est important que les administrateurs système disposent de bonnes connaissances de base sur le fonctionnement des disques durs, afin d'éviter toute modification accidentelle de la configuration du système qui pourrait avoir un impact négatif sur la performance du système.

La durée nécessaire à un disque dur pour répondre à une requête d'E/S et la traiter dépend des deux éléments suivants :

Les sections suivantes examinent ces aspects de la performance du disque dur de manière plus détaillée.

5.4.1. Limitations mécaniques/électriques

Étant donné que les disques durs sont des périphériques électromécaniques, ils sont soumis à des limitations au niveau de leur vitesse et de leur performance. Chaque requête E/S a besoin que les différents composants du disque dur fonctionnent de concert afin de répondre à la requête. Puisque chacun de ces composants a des caractéristiques de performance différentes, la performance générale du disque dur est déterminée par la somme des performances des composants individuels.

Cependant, au niveau de la rapidité, les composants électroniques sont au moins d'un ordre de grandeur supérieur, par rapport aux composants mécaniques. Par conséquent, ce sont les composants mécaniques qui ont le plus grand impact sur la performance générale du disque dur.

TuyauAstuce
 

La meilleure manière d'améliorer la performance du disque dur consiste à réduire autant que possible, son activité mécanique.

Le temps d'accès moyen d'un disque dur typique est d'environ 8,5 millisecondes. Les sections suivantes subdivisent ce chiffre de manière plus détaillée, montrant ainsi la manière selon laquelle chaque composant impacte sur la performance générale du disque dur.

5.4.1.1. Durée de traitement des commandes

Tous les disques durs fabriqués de nos jours sont dotés de systèmes informatiques sophistiqués qui contrôlent leur fonctionnement. Ces systèmes informatiques effectuent les tâches suivantes :

  • Ils interagissent avec l'extérieur au moyen de l'interface du disque dur

  • Ils contrôlent le fonctionnement des autres composants du disque dur et effectuent la récupération nécessaire suite à toute situation d'erreur pouvant survenir

  • Ils traitent les données brutes lues et écrites sur le support de stockage même

Malgré la puissance des microprocesseurs utilisés dans les disques durs, les tâches qui leur sont assignées prennent du temps pour être effectuées. En moyenne, cette durée est de l'ordre de 0,003 millisecondes.

5.4.1.2. Lecture/écriture de données par les têtes

Les têtes de lecture/écriture du disque dur ne fonctionnent que lorsque les plateaux de disques qu'elles "survolent" sont en rotation. Étant donné que c'est le mouvement du support placé sous les têtes qui permet aux données d'être lues ou écrites, le temps qu'il faut au support contenant le secteur recherché pour passer entièrement sous la tête, constitue en fait le seul élément influençant l'impact de la tête sur la durée totale d'accès aux données. Cette opération est en moyenne de 0,0086 millisecondes pour un disque d'une vitesse de 10.000 RPM, contenant 700 secteurs par piste.

5.4.1.3. Latence rotationnelle

Étant donné que les plateaux d'un disque dur tournent en permanence, lorsque la requête d'E/S arrive, il est très peu probable que le plateau dans sa rotation se trouve exactement à l'endroit à partir duquel il est possible d'accéder au secteur souhaité. Par conséquent, même si le reste du disque dur est prêt à accéder à ce secteur, tous les différents composants doivent attendre que le plateau tourne suffisamment pour que le secteur recherché se trouve exactement sous la tête de lecture/écriture.

C'est précisément la raison pour laquelle les disques durs à performance élevée font tourner leur plateau à une vitesse supérieure. De nos jours, des vitesses de l'ordre de 15.000 RPM sont réservées aux disques durs les plus performants, alors qu'une vitesse de 5.400 RPM est seulement considérée comme acceptable pour des disques de base. La durée moyenne est de 3 millisecondes pour un disque d'une vitesse de 10.000 RPM.

5.4.1.4. Mouvement du bras d'accès

Au niveau des disques durs, le bras d'accès est considéré comme le talon d'Achile du matériel. En effet, ce bras d'accès doit se déplacer de manière très rapide et précise sur de longues distances. En outre, le mouvement du bras d'accès est continu — il doit accélérer rapidement en approchant le cylindre recherché et doit ensuite ralentir tout aussi rapidement afin d'éviter tout dépassement. Le bras d'accès doit donc être très solide (afin de faire face aux forces violentes engendrées par le besoin de mouvement rapide) tout en restant léger (afin de réduire la masse à accélérer/ralentir).

Il est très difficile d'atteindre ces buts opposés, comme le montre le temps relativement long qu'il faut au bras d'accès pour se déplacer, par rapport au temps nécessaire aux autres composants pour effectuer leur tâche. La rapidité de mouvement du bras d'accès représente par conséquent l'élément essentiel influençant la performance générale d'un disque dur ; cette dernière est en moyenne de 5,5 millisecondes.

5.4.2. Charges des E/S et performance

La charge des E/S à laquelle un disque dur est soumis représente un autre élément ayant une influence sur la performance des disques durs. Parmi les aspects spécifiques de la charge des E/S figurent :

Ces points sont traités de manière plus détaillée dans les sections suivantes.

5.4.2.1. Opérations de lecture contre opérations d'écriture

Pour un disque dur moyen utilisant des supports magnétiques pour le stockage de données, le nombre d'opérations d'E/S de lecture par rapport à celui des opérations d'E/S d'écriture n'est pas vraiment source d'inquiétude dans la mesure où les opérations de lecture et les opérations d'écriture prennent autant de temps pour être effectuées[1]. Ceci étant, le temps nécessaire au traitement des opérations de lecture et celui des opérationd'écriture est différent pour d'autres technologies de stockage de masse[2].

En conséquence, les périphériques prenant plus de temps pour traiter les opérations d'E/S d'écriture (par exemple) sont capables de traiter moins d'opérations d'E/S d'écriture que d'opérations d'E/S de lecture. Dans une optique différente, par rapport à une opération d'E/S de lecture, une opération d'E/S d'écriture utilise une plus grande partie de la capacité du périphérique à traiter des requêtes d'E/S.

5.4.2.2. Lecteurs/Scripteurs multiples

Un disque dur qui traite des requêtes d'E/S provenant de sources multiples doit faire face à une charge différente qu'un disque dur traitant des requêtes d'E/S provenant d'une seule source. Une telle situation s'explique essentiellement par le fait que de multiples demandeurs d'E/S ont le potentiel de faire peser une charge d'E/S plus élevée sur un disque dur, que ne peut le faire un seul demandeur d'E/S.

En effet, le demandeur d'E/S doit effectuer un certain degré de traitement avant qu'une E/S puisse être effectuée. Après tout, le demandeur doit établir la nature de la requête d'E/S avant qu'elle ne puisse être effectuée. Étant donné que le traitement nécessaire pour déterminer la nature de la requête prend un certain temps, il existe une limite supérieure à la charge d'E/S pouvant être engendrée par tout demandeur — seul un CPU plus rapide peut augmenter cette limite. Cette limitation est plus prononcée si, avant d'effectuer une opération d'E/S, le demandeur à besoin d'une intervention de la part de l'utilisateur.

Toutefois, lorsqu'il existe des demandeurs multiples, il est possible de maintenir des charges d'E/S supérieures. Dès lors que la puissance de CPU disponible est suffisante pour assurer le traitement nécessaire à la création de requêtes d'E/S, l'ajout de demandeurs d'E/S supplémentaires se traduit en une augmentation de la charge d'E/S.

À cet égard cependant, un autre aspect influence la charge d'E/S produite. Ce dernier sera abordé dans la section suivante.

5.4.2.3. Emplacement des opérations de lecture/écriture

Bien que cet aspect des performances du disque dur ne se limite pas seulement à un environnement ayant de multiples demandeurs, il a tendance à se manifester de manière plus prononcée dans un tel environnement. Le problème est de savoir si les demandes de données d'E/S venant d'un disque dur concernent des données physiquement proches des autres données qui sont également demandées.

La raison pour laquelle cet aspect est important devient plus clair lorsqu'on garde à l'esprit la nature électromécanique du disque dur. Le composant le plus lent de tout disque dur est le bras d'accès. Par conséquent, si les données auxquelles les requêtes d'E/S entrantes ont accès ne nécessitent aucun mouvement du bras d'accès, le disque dur est à même de répondre à un nombre bien plus élevé de requêtes de données d'E/S, que si les données auxquelles l'accès est nécessaire se trouvent éparpillées sur tout le disque et demandent donc au bras d'accès de bouger énormément.

Pour illustrer ce point, il suffit d'examiner les caractéristiques de performance des disques durs. Ces caractéristiques incluent souvent le temps d'accès au cylindre adjacent (lorsque le bras d'accès ne bouge qu'un tout petit peu — seulement jusqu'au cylindre placé juste à côté) et le temps d'accès pour une course complète (lorsque le bras d'accès se déplace du tout premier cylindre au tout dernier). Par exemple, ci-dessous figurent les temps d'accès d'un disque dur à haute performance :

Cylindre adjacentFull-Stroke
0,68,2

Tableau 5-4. Temps d'accès au cylindre adjacent et temps d'accès full-stroke (en millisecondes)

Notes

[1]

Strictement parlant, ce n'est pas vraiment le cas. Tous les disques durs disposent, sur la carte mère, d'une certaine quantité de mémoire cache qui est utilisée pour améliorer les performances en écriture. Cependant, toute requête d'E/S demandant la lecture de données doit à un moment ou à un autre, être satisfaite en lisant physiquement les données sur le support de stockage. Dans de telles conditions, même si le cache peut permettre de réduire les problèmes de performance liés à la lecture des E/S, il ne peut en aucun cas éliminer totalement le temps nécessaire à la lecture physique des données sur le support de stockage.

[2]

Certains disques durs optiques ont ce comportement en raison des limitations physiques dues aux technologies utilisées pour implémenter un stockage optique des données.