Mam serwer, który od aktualizacji do 10.04 działa teraz na demonie skalowania procesora „ondemand”. Dlaczego miałby to automatycznie instalować? Nie chcę, aby mój serwer oszczędzał energię kosztem wydajności.
Mam serwer, który od aktualizacji do 10.04 działa teraz na demonie skalowania procesora „ondemand”. Dlaczego miałby to automatycznie instalować? Nie chcę, aby mój serwer oszczędzał energię kosztem wydajności.
Odpowiedzi:
Zamiast wyłączać wykonywanie /etc/init.d/ondemand
skryptu (zgodnie z sugestią George'a) należy użyć tego polecenia
sudo update-rc.d ondemand disable
Aby system init nie uruchomił skryptu, jest to znany sposób na zrobienie tego! Wyłączenie uprawnienia exec ( sudo chmod -x /etc/init.d/ondemand
) może zostać zastąpione, jeśli pakiet zostanie zaktualizowany.
Skalowanie częstotliwości nie jest statyczne. Gdy tylko trzeba będzie pracować, procesor przeskakuje do akcji, stany P zwiększają się i wszystko leci.
Jest włączony, ponieważ jest powszechnie postrzegany jako dobra rzecz. Oszczędza energię (dobre dla portfela i środowiska). Utrzymuje ciepło ( tak ważne w serwerowni). I jest całkiem niezauważalny.
Ponadto w przypadku nowoczesnych układów Intela, jeśli masz skalowanie, możesz użyć „turbo boost”, w którym jeden rdzeń będzie działał przez pewien czas z prędkością wyższą niż standardowa. Jest to bardzo przydatne w przypadku skoków pracy jednowątkowej. Bez włączonego skalowania nie otrzymujesz tego.
Możesz zainstalować narzędzie debian rcconf :
sudo apt-get install rcconf
następnie stamtąd wyłącz usługę „ondemand”.
Ustaw wszystkie procesory na regulator wydajności:
for GOVERNOR in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; \
do \
echo "performance" | sudo tee $GOVERNOR; \
done
Wszystkie obsługiwane gubernatory jądra Linux:
Zobacz https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt
sudo echo > ...
nie rób tego, czego oczekujesz: askubuntu.com/q/230476/158442
Aby wszystkie procesory działały z maksymalną wydajnością w sposób ciągły na komputerze stacjonarnym lub serwerze Ubuntu, uruchom:
sudo chmod -x /etc/init.d/ondemand
w wierszu poleceń i wprowadź hasło. Powoduje to wyłączenie skryptu powłoki, który powoduje, że wszystkie procesory działają z prędkością „OnDemand”, co powoduje, że są one domyślnie ustawione na pełną prędkość (wydajność). Aby to zadziałało, musisz ponownie uruchomić komputer.
Testowałem to tylko w Ubuntu Jaunty 9.04, ale powinno działać i nie powodować żadnych problemów w żadnej wersji Ubuntu.
Myślę, że domyślne ustawienia Ubuntu są z tego powodu dziwne. Moim zdaniem komputer lub serwer powinien działać z pełną prędkością.
Pozdrawiam, George
ondemand
gdy popełniają błąd.
W niektórych systemach gubernator „na żądanie” jest niestety zepsuty.
Tak jest w przypadku „Intel (R) Core (TM) 2 Quad CPU Q9300 @ 2.50GHz” i jądra 2.6.32-42.
Jądro uważa, że może ustawić częstotliwość indywidualnie dla każdego procesora, podczas gdy sprzęt faktycznie pozwala tylko ustawić częstotliwość dla grup kilku procesorów (np. CPU 0 i 1 razem, a CPU 2 i 3 razem).
Możesz dowiedzieć się, że jądro nie zdaje sobie z tego sprawy, patrząc na pliki / sys / devices / system / cpu / cpu * / cpufreq / Wpływ_cpus, które zawierają „0”, „1”, „2”, „3” zamiast „0 1”, „0 1”, „2 3”, „2 3”.
Widocznym efektem tego niedopasowania jest proces jednowątkowy, który zaczyna działać z pełną prędkością na jednym procesorze (regulator „ondemand” reaguje szybko), a następnie po około 20 sekundach (w zależności od szczegółów ustawień) traci część swojej prędkości.
Powodem jest to, że system operacyjny z gubernatorem „ondemand” okresowo stosuje niskie częstotliwości na bezczynnych procesorach, nie spodziewając się, że pośrednio zmieni również częstotliwość naszego zajętego procesora. Nie jest to nawet widoczne, gdy spojrzysz na / sys / devices / system / cpu / cpu * / cpufreq / * cur_freq lub / proc / cpuinfo, system operacyjny po prostu tego nie wie!
Zatem w tych systemach rozwiązaniem jest powrót do prostego regulatora „wydajności”.
PS: W moim przypadku ciągłe działanie procesorów z pełną częstotliwością nic nie zmieniło w odniesieniu do szumu wentylatora. Podejrzewam, że gdy procesor pracuje na biegu jałowym, niższa lub wyższa częstotliwość nie będzie miała większego wpływu na zużycie energii.
Mam nowy procesor AMD Athlon II X4 631 (procesor Fusion do gniazda FM1) i nie oszczędza żadnej energii (wyglądałem na licznik energii)! Nie mam rdzenia turbo, więc nie potrzebuję ustawień na żądanie. Większość nowych procesorów sama oszczędza energię.
Podczas porównywania istnieje niewielka różnica, w zakresie 1-2%, w porównaniu do ustawień na żądanie i wydajności.
Jest to stare, ale ponieważ nikt o tym nie wspominał, i dla kompletności dodam, że argument, w jaki sposób procesor działający na maksymalnej prędkości marnuje energię, wytwarza ciepło, hałas wentylatora itp. Jest NIEPRAWIDŁOWY .
Prawie wszystkie współczesne procesory, szczególnie komputery stacjonarne / serwerowe, przejdą w tryb głębokiego uśpienia po bezczynności (wyścig Google do bezczynności).
Skalowanie napięcia prawdopodobnie zaoszczędzi więcej energii, więc na laptopach może to nieco wydłużyć czas działania, ale na komputerach stacjonarnych i serwerach z regulatorem wydajności będzie w porządku dla większości „normalnych” użytkowników (którzy nie prowadzą farm serwerów lub podobnych).
Używam gov wydajności z moim i7-2600k, a temperatura procesora wynosi zwykle około 30 C.