Qu'affectent les différentes valeurs de la fonction de gestion avancée de l'alimentation du disque dur (hdparm -B), à l'exception de la rotation vers le bas?

23

hdparmLe -Bparamètre de est documenté comme suit:

Obtenez / définissez la fonction Advanced Power Management, si le lecteur la prend en charge. Une valeur faible signifie une gestion agressive de la puissance et une valeur élevée signifie une meilleure performance. Les paramètres possibles vont des valeurs 1 à 127 (qui autorisent le ralentissement) et les valeurs 128 à 254 (qui ne permettent pas le ralentissement). Le niveau le plus élevé de gestion de l'alimentation est atteint avec un paramètre de 1 et les performances d'E / S les plus élevées avec un paramètre de 254. Une valeur de 255 indique à hdparm de désactiver complètement la gestion avancée de l'alimentation sur le lecteur (tous les lecteurs ne prennent pas en charge la désactivation, mais la plupart le font).

Cela ne donne que deux intervalles possibles, mais ne décrit pas quel autre effet ont différentes valeurs. Quelle est la différence entre disons 63 et 127, etc. Je n'ai pas pu trouver plus de documentation à ce sujet. Est-il décrit quelque part?

Petr Pudlák
la source
1
Quelques résultats de test approximatifs d'un WD Elements Portable de 4 To. Comme indiqué par la réponse de SilverbackNet, ne vous attendez pas à ce que d'autres appareils se comportent comme ça. Par défaut = 128. 127 = 30 min en veille, LED clignotante lente. 126 = identique à 127. 124 = 10 min en veille, LED clignotant lentement. 63 = ~ 10 sec au moteur brisé, LED fixe. 12 = ~ 4 s pour LED fixe brisée. 1 = LED fixe et fixe (je n'étais pas assis à côté pour conduire pour savoir à quel point - comme je l'ai dit, des résultats de test approximatifs). Je n'ai vu aucune information sur ce que pourrait signifier une LED solide après la rotation du moteur - le temps de rotation semblait identique à la veille normale, mais n'a pas vraiment testé cela.
juanitogan

Réponses:

15

Le code source de hdparm montre qu'il transmet simplement la valeur au disque, sauf qu'il transmet la commande 0x85 au lieu de 0x05 lorsque la valeur est 255. La spécification ATA indique ce petit morceau :

Le code de sous-commande 05h permet à l'hôte d'activer la gestion avancée de l'alimentation. Pour activer la gestion avancée de l'alimentation, l'hôte écrit le registre Nombre de secteurs avec le niveau de gestion avancée de l'alimentation souhaité, puis exécute une commande SET FEATURES avec le code de sous-commande 05h. Le niveau de gestion de l'alimentation est une échelle allant du paramètre de consommation d'énergie le plus bas de 01h au niveau de performance maximal de FEh. Le tableau 30 montre ces valeurs.

  • Performances maximales FEh
  • Niveaux de gestion d'alimentation intermédiaires sans veille 81h-FDh
  • Consommation électrique minimale sans veille 80h
  • Niveaux intermédiaires de gestion de l'alimentation avec veille 02h-7Fh
  • Consommation électrique minimale avec veille 01h
  • FFh réservé
  • Réservé 00h

Les performances des appareils peuvent augmenter avec l'augmentation des niveaux de gestion de l'alimentation. La consommation électrique de l'appareil peut augmenter avec l'augmentation des niveaux de gestion de l'alimentation. Les niveaux de gestion de l'alimentation peuvent contenir des bandes discrètes. Par exemple, un dispositif peut implémenter une méthode de gestion de l'alimentation de 80h à A0h et une méthode de consommation d'énergie plus performante et plus élevée du niveau A1h à FEh. Les niveaux avancés de gestion de l'alimentation de 80 h et plus ne permettent pas à l'appareil de tourner pour économiser de l'énergie. Le code de sous-commande 85h désactive la gestion avancée de l'alimentation. La sous-commande 85h peut ne pas être implémentée sur tous les appareils qui implémentent la sous-commande SET FEATURES 05h.

En d'autres termes: "Comportement non spécifié, spécifique à l'appareil"

SilverbackNet
la source
3

Avec crédit sur www.freeminded.org

Les valeurs 1-127 autorisent la rotation, 128-254 ne le permettent pas et 255 désactive complètement la gestion avancée de l'alimentation (si le lecteur le prend en charge). Les valeurs 1 à 240 sont en 5 secondes, les valeurs 241 à 251 sont des étapes de 30 minutes, voir le tableau ci-dessous.

entrez la description de l'image ici

Il y a plus d'informations sur le site.

Carl B
la source
8
Merci, mais j'ai l'impression que le site a mélangé deux arguments. hdparma une autre option -Squi contrôle le temps de rotation, et elle est définie exactement comme l'autre phrase du site: les valeurs de 1 à 240 spécifient plusieurs plis de 5 secondes, donnant des délais d'attente de 5 secondes à 20 minutes. Les valeurs de 241 à 251 spécifient de 1 à 11 unités de 30 minutes, ce qui donne des délais d'attente de 30 minutes à 5,5 heures. De plus, il n'est pas logique de définir le temps de rotation vers le bas pour les valeurs> = 128, si elles ne permettent pas réellement la rotation vers le bas.
Petr Pudlák
4
Ceci est trompeur, l'auteur du billet de blog que vous avez lié semble confondre -B, avec -S. (-B modifie la gestion avancée de l'alimentation et son entrée dans hdparm.conf est 'apm'). Le tableau que vous avez publié concerne le délai d'attente ("-S" & "spindown_time")
karatchov
C'est ce dont j'avais besoin et cela a fonctionné pour mes disques FireCuda Seagate ST2000LX001
Locane
J'appuie ce que @karatchov dit.
Ben