Dlaczego moje Pi działa cały czas z częstotliwością 700 MHz?

12

Mój RasPi jest skonfigurowany do korzystania z podkręcania 900 MHz raspi-config, ale nadal działa z częstotliwością 700 MHz nawet pod obciążeniem. Znalazłem już tę odpowiedź , a mój system działa również dynamicznie

for info in /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_*
do 
  echo ${info}
  sudo cat ${info}
done

Wynik:

/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
700000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
900000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq
700000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_transition_latency
355000

Nawet podczas serwowania dużych plików przez SMB i podczas pracy apt-get updateczęstotliwość pozostanie na poziomie 700 MHz. Dlaczego?

Arne
źródło
Och, wow, teraz widziałem, że dwukrotnie przechodzi do 900 MHz. Używam watch -n 1 cat /sys/...do monitorowania częstotliwości. Może mimo wszystko nie mam problemu.
Arne,
1
Wykonywanie wielu operacji we / wy (serwowanie plików, pobieranie za pośrednictwem apt) nie wymaga intensywnego działania procesora, ponieważ samo we / wy jest wąskim gardłem - co oznacza, że ​​procesor musi na to czekać, więc gdy system jest zajęty tak szybko, jak to możliwe w jednym sens, procesor może być w większości bezczynny.
złotowłosa
@Goldilocks: Cóż, smbd i ntfs-3g wytwarzały prawie 100% obciążenia, około 50% użytkownika i 50% obciążenia systemu. Zakładałbym, że to wystarczy, ale może obciążenie systemu było jakimś czekaniem we / wy.
Arne,
Do Twojej dyspozycji jest łatwiejszy sposób wydrukowania ustawień: grep "" / sys / devices / system / cpu / cpu0 / cpufreq / cpuinfo_ *
Ludovic Ronsin

Odpowiedzi:

14

Nawet przy ustawieniu częstotliwości dynamicznej Raspberry Pi ma bardzo wysoki domyślny próg skalowania częstotliwości.

Aby zacytować ten post na blogu dotyczący podkręcania Pi:

Regulator ondemand zastosowany w Raspberry Pi zwiększy szybkość procesora do maksymalnej skonfigurowanej wartości, ilekroć okaże się, że jest zajęty przez ponad 95% czasu. To brzmi dość uczciwie w większości przypadków, ale jeśli chcesz dodatkowego przyspieszenia, nawet gdy system wykonuje nieco lżejsze zadania, musisz obniżyć próg obciążenia. Można to również łatwo zrobić, zapisując wartość całkowitą w pliku (możesz umieścić następujące na przykład w /etc/rc.localpliku startowym):

echo 60> / sys / devices / system / cpu / cpufreq / ondemand / up_threshold

Mówimy tutaj, że chcielibyśmy uruchomić tryb Turbo, gdy procesor jest zajęty przez co najmniej 60% czasu. To wystarczy, aby Pi poczuł się nieco bardziej przyjemny podczas ogólnego użytkowania.

Możesz również ustawić wydajność procesora na gubernatora zamiast na żądanie, używając podobnej komendy:

echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

Wydajność utrzyma taktowanie procesora przez cały czas 100%. Szczegółowe informacje o dostępnych trybach można znaleźć tutaj: https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt

Jonathan Milford
źródło
Właśnie tego szukałem!
Arne,
0

Zrobiłem mały program do automatyzacji procesu, który Jonathan Milford opisał bardzo dobrze. Robi to przy każdym rozruchu, aby utrzymać.

Link do mojego projektu

MeisterD
źródło