Na co wpływają różne wartości funkcji zaawansowanego zarządzania energią dysku twardego (hdparm-B), z wyjątkiem spowalniania?

24

hdparm„s -Bparametr jest opisany jako:

Pobierz / ustaw funkcję Zaawansowane zarządzanie energią, jeśli napęd ją obsługuje. Niska wartość oznacza agresywne zarządzanie energią, a wysoka wartość oznacza lepszą wydajność. Możliwe ustawienia mieszczą się w zakresie od 1 do 127 (które pozwalają na obniżenie prędkości) oraz wartości od 128 do 254 (które nie pozwalają na zmniejszenie prędkości). Najwyższy stopień zarządzania energią osiąga się przy ustawieniu 1, a najwyższą wydajność we / wy przy ustawieniu 254. Wartość 255 mówi hdparm, aby całkowicie wyłączał Zaawansowane zarządzanie energią na dysku (nie wszystkie dyski obsługują jego wyłączenie, ale większość tak).

Daje to tylko dwa możliwe odstępy, ale nie opisuje, jaki inny wpływ mają różne wartości. Jaka jest różnica między powiedzmy 63 i 127 itd. Nie mogłem znaleźć więcej dokumentacji na ten temat. Czy jest to gdzieś opisane?

Petr Pudlák
źródło
1
Niektóre zgrubne wyniki testów urządzenia WD Elements Portable o pojemności 4 TB. Jak zauważono w odpowiedzi SilverbackNet, nie oczekuj, że inne urządzenia będą się tak zachowywać. Domyślnie = 128. 127 = 30 min do czuwania, wolno migająca dioda LED. 126 = to samo co 127. 124 = 10 minut do gotowości, wolno migająca dioda LED. 63 = ~ 10 sekund do włączenia silnika, ciągła dioda LED. 12 = ~ 4 sek. Do włączenia, stała dioda LED. 1 = natychmiastowe wyzwolenie, stała dioda LED (nie siedziałem obok, żeby wiedzieć, jak natychmiast - jak powiedziałem, zgrubne wyniki testu). Nie widziałem żadnych informacji na temat tego, co może oznaczać świecąca się dioda LED po włączeniu silnika - czas rozruchu wydawał się taki sam jak zwykły tryb gotowości, ale tak naprawdę tego nie przetestowałem.
juanitogan

Odpowiedzi:

16

Kod źródłowy do hdparm pokazuje, że po prostu przekazuje wartość na dysku, chyba że przechodzi komendy 0x85 zamiast 0x05 gdy wartość wynosi 255. ATA Spec okazuje się ten smakołyk:

Kod podkomendy 05h umożliwia hostowi włączenie zaawansowanego zarządzania energią. Aby włączyć Zaawansowane zarządzanie energią, host zapisuje rejestr Sector Count z pożądanym poziomem zaawansowanego zarządzania energią, a następnie wykonuje polecenie SET FEATURES z kodem podkomendy 05h. Poziom zarządzania energią to skala od najniższego ustawienia zużycia energii wynoszącego 01h do maksymalnego poziomu wydajności FEh. Tabela 30 pokazuje te wartości.

  • Maksymalna wydajność FEh
  • Pośrednie poziomy zarządzania energią bez trybu gotowości 81h-FDh
  • Minimalny pobór mocy bez czuwania 80h
  • Pośrednie poziomy zarządzania energią w trybie gotowości 02h-7Fh
  • Minimalne zużycie energii w trybie gotowości 01h
  • Zarezerwowany FFh
  • Zarezerwowany 00h

Wydajność urządzenia może wzrosnąć wraz ze wzrostem poziomu zarządzania energią. Zużycie energii przez urządzenie może wzrosnąć wraz ze wzrostem poziomu zarządzania energią. Poziomy zarządzania energią mogą zawierać dyskretne pasma. Na przykład, urządzenie może wdrożyć jedną metodę zarządzania energią od 80h do A0h oraz metodę o wyższej wydajności i wyższym zużyciu energii od poziomu A1h do FEh. Zaawansowane poziomy zarządzania energią 80h i wyższe nie pozwalają na spowolnienie urządzenia w celu oszczędzania energii. Kod komendy 85h wyłącza Zaawansowane zarządzanie energią. Podkomenda 85h może nie zostać zaimplementowana na wszystkich urządzeniach, które implementują komendę SET FEATURES 05h.

Innymi słowy: „Nieokreślone zachowanie specyficzne dla urządzenia”

SilverbackNet
źródło
3

Z podziękowaniami dla www.freeminded.org

Wartości 1–127 pozwalają na wyłączenie, 128–254 nie, a 255 całkowicie wyłącza zaawansowane zarządzanie energią (jeśli napęd je obsługuje). Wartości od 1 do 240 są w krokach co 5 sekund, wartości od 241 do 251 to kroki co 30 minut, patrz tabela poniżej.

wprowadź opis zdjęcia tutaj

Więcej informacji na stronie.

Carl B.
źródło
8
Dzięki, ale mam wrażenie, że strona pomieszała dwa argumenty. hdparmma kolejną opcję, -Sktóra kontroluje czas spinowania, i jest zdefiniowana dokładnie tak, jak inne zdanie z witryny: Wartości od 1 do 240 określają wielokrotności 5 sekund, dając limity czasu od 5 sekund do 20 minut. Wartości od 241 do 251 określają od 1 do 11 jednostek 30 minut, dając limity czasu od 30 minut do 5,5 godziny. Nie ma również sensu definiowanie czasu rozwijania dla wartości> = 128, jeśli w rzeczywistości nie pozwalają na wyłączenie.
Petr Pudlák
4
Jest to mylące, autor wpisu na blogu, który podlinkowałeś, wydaje się mylić -B z -S. (-B zmienia zaawansowane zarządzanie energią, a jego wpis w hdparm.conf to „apm”). Opublikowana tabela dotyczy limitu czasu gotowości („-S” i „spindown_time”)
karatchov
Właśnie tego potrzebowałem i działało to dla moich napędów FireCuda Seagate ST2000LX001
Locane
Popieram to, co mówi @karatchov.
Ben