Kategorie | Hardware, Howto, Linux

  

Nvidia – PowerMizer Howto

Opublikowano 23 lutego 2009 przez Franek

Informacje ogólne
Binarny sterownik NVIDIA obsługuje kilka poziomów wydajności. Każdy z nich posiada dwa parametry: częstotliwość zegara procesora graficznego (GPU) oraz częstotliwość zegara pamięci. Aby sprawdzić dostępne poziomy wydajności obsługiwane przez naszą kartę, posłużymy się komendami dostępnymi w pakiecie nvidia-settings. Jeśli nie masz zainstalowanego tego pakietu, zrób to teraz:

sudo apt-get install nvidia-settings

nvidia-settings -q GPUPerfModes -t
perf=0, nvclock=100, memclock=0 ; perf=1, nvclock=250, memclock=0 ; perf=2, nvclock=350, memclock=0

Uwagi:
Ten parametr jest tylko do odczytu.
memclock=0 oznacza, że pamięć karty jest niedostępna.
Liczba dostępnych poziomów wydajności dla różnych kart, może być różna.
Dla tego samego poziomu wydajności mogą istnieć różne wartości.

Aby sprawdzić aktualny poziom wydajności z jakim pracuje karta, należy skorzystać z tych poleceń:

nvidia-settings -q GPUCurrentPerfLevel -t
0

nvidia-settings -q GPUCurrentClockFreqs -t
100,666

W powyższym przykładzie GPU ma częstotliwość 100 MHz.

Nie należy monitorować bieżącego poziomu wydajności GPUCurrentPerfLevel i GPUCurrentClockFreqs za pomocą komendy ‘nvidia-settings -q all’ – komenda ta sztucznie podnosi aktualny poziom wydajności karty.

Sterownik karty potrafi wykryć źródło zasilania komputera, 0 = zasilanie sieciowe, 1 = bateria, sprawdzamy to poleceniem:

nvidia-settings -q GPUPowerSource -t
1

Tryby wydajności
Prawdopodobne wartości to 0 = minimum wydajności, 1 = tryb pośredni, 3 = maksymalna wydajność. Tryb wydajności może być dynamicznie kontrolowany przez sterownik, np. kiedy przeglądasz strony w sieci karta działa w trybie 0, ale kiedy uruchomisz ‘glxgears’ sterownik przestawi kartę w tryb 2. Aktualny tryb sprawdzimy poleceniem:

nvidia-settings -q GPUCurrentPerfMode -t

Lub z poziomu GUI nvidia-settings:
nvidia-settings

Teoria
Możesz skonfigurować strategię wydajności dla zasilania sieciowego i baterii osobno, jeśli sterownik prawidłowo wykrywa źródło zasilania. Jeżeli tak nie jest musisz użyć tylko jednej konfiguracji, zwykle dla dla zasilania sieciowego – sprawdź bieżące źródło zasilania wykrywane przez sterownik.

Kontrola strategii częstotliwości zegara
strategy=22(hexadecimal) – ustalona częstotliwość, karta pracuje z ustaloną częstotliwością bez względu na procent wykorzystania zegara.
strategy=33(hexadecimal) – adapcyjna/zmienna częstotliwość, karta działa w trybie maksymalnego oszczędzania energii (pref=0), aż do rozpoczęcia pracy aplikacji w dużym stopniu obciążającej GPU, takiej jak gra 3D.

nvidia-adaptive-strategy

Tryby PowerMizer
Istnieją trzy możliwe tryby PowerMizer dla stałych częstotliwości zegara:

  • mode=1 – Maksymalna wydajność – zwykle jest to pref=najwyższy poziom
  • mode=2 – Zrównoważony/pośredni
  • mode=3 – Maksymalna oszczędność energii – zwykle jest to poziom pref=0

Strategie PerfLevelSrc
Specjalny parametr sterowników, zapisany szesnastkowo:

0x[strategia dla baterii][strategia dla zasilania sieciowego]

Przykłady:
PerfLevelSrc=0x2222 – Stały (ustalony) tryb PowerMizer (i odpowiednio ustalona częstotliwość) jest używana dla pracy na baterii i stały tryb powermizer jest używany na zasilaniu sieciowym, te tryby mogą być takie same bądź różne wartości

PerfLevelSrc=0x2233 – Stały tryb działania PowerMizer jest używany przy pracy na baterii, a zmienna/adaptacyjna częstotliwość zegara jest używana dla pracy na zasilaniu sieciow

PerfLevelSrc=0x3333 – Adaptacyjna/zmienna strategia częstotliwości zegara, używana na zasilaniu sieciowym i baterii.

Istnieją dwa parametry określające strategię częstotliwości zegara:

  • PowerMizerDefault – zawiera wartości używane dla obu źródeł zasilania
  • PowerMizerDefaultAC – zawiera wartości używane podczas zasilania sieciowego

Praktyczne zastosowanie
RegistryDwords jest odpowiedzialne za dodanie odpowiednich opcji w sekcji dla urządzenia NVIDIA w pliku konfiguracyjnym xorg.conf . Minimalna konfiguracja może wyglądać następująco:

Section “Device”
Identifier “NVIDIA GeForce”
Driver “nvidia”
Option “RegistryDwords” “<konfiguracja>”
EndSection

Składnia RegistryDwords wygląda następująco: parametr1=wartość1; parametr2=wartość2

“PowerMizerEnable=0x1; PerfLevelSrc=0x; PowerMizerDefault=0x; PowerMizerDefaultAC=0x”

Powinno się teraz przeładować moduł jądra NVIDIA i ponownie uruchomić serwer X.org, aby zastosować opcję. Z doświadczenia jednak wiem, że sam restart X.org wystarczy – Ctrl + Alt + Backspace

Przykładowe konfiguracje

  • Na baterii – maksymalne oszczędzanie energii, na zasilaniu sieciowym – maksymalna wydajność:

"PowerMizerEnable=0x1; PerfLevelSrc=0x2222; PowerMizerDefault=0x3; PowerMizerDefaultAC=0x1"

  • Na baterii – maksymalne oszczędzanie energii, na zasilaniu sieciowym – adapcyjna/zmienna wydajność:

"PowerMizerEnable=0x1; PerfLevelSrc=0x2233; PowerMizerDefault=0x3"

  • Na baterii – adapcyjna/zmienna wydajność, na zasilaniu sieciowym – maksymalna wydajność:

"PowerMizerEnable=0x1; PerfLevelSrc=0x3322; PowerMizerDefaultAC=0x1"

  • Adapcyjna/zmienna wydajność dla każdego źródła zasilania:

"PowerMizerEnable=0x1; PerfLevelSrc=0x3333"

Na podstawie tekstu Artem Naluzhnyy, oraz za jego zgodą.

  

7 Comments For This Post

  1. Michał Says:

    Wielki dzięki. Siedzę na MDV 2009.1 i właśnie sobie ustawiłem kartę graficzną jak trza. wcześniej cały czas śmigała na maxie, a laptop się grzał. Wielkie dzięki!

  2. Kuba Says:

    Świetny artykuł! Pozwoliłem sobie wstawić go tutaj: http://forum.notebookreview.com/showthread.php?p=5672003

  3. michal Says:

    witam wszystkich mam problem z kartą graficzną firmy nvidia od jakiegoś czasu pojawiają się artefakty przy pdpalaniu systemu i jak zainstaluję sterowniki do kart to system działa przez 3 minuty i wyłancza mi kompa co robić i gdzie jest problem pomóżcie

  4. michal Says:

    czy istnieje podobna możliwość konfiguracji dla sterowników zawartychw rpm

  5. Franek Says:

    Wydaję się, że nie ma znaczenie w jaki sposób były instalowane sterowniki.

  6. Mariusz Says:

    Witam.
    Może wiecie jak zmusić kartę do wykrywania zmiany źródła zasilania? Nvidia-settings w laptopie uruchomionym na baterii nawet po podłączeniu później kabla, nadal wskazuje źródło zasilania z baterii i na odwrót, przy uruchomieniu na kablu a później po jego odłączeniu nadal wskazuje zasilanie AC.

  7. Franek Says:

    Jaki system i stery?

Leave a Reply

Polityka komentarzy

     
     
Green Dog Says

MiniBlog