Hi,
Igor hat mit seinem letzten Update vom 17.10.2014 Support für den ondemand CPU governor in den Linux Kernel 3.4.104 hinzugefügt. Ein Governor hat die Aufgabe, je nach aktueller Last die Taktfrequenz der CPU-Kerne dynamisch anzupassen. Es gibt Governors für verschiedene Ziele, z.B. Stromsparen, maximale Performance, etc etc.
root@ct:/# uname -a
Linux ct 3.4.104-sunxi #1 SMP PREEMPT Fri Oct 17 16:13:30 CEST 2014 armv7l GNU/Linux
Kontrolle, welche CPU governor verfügbar sind:
root@ct:/etc/init.d# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
userspace interactive ondemand performance
Der Default governor bei Igors Image ist interactive und wird beim Booten vom Skript /etc/init.d/cpufrequtils gesetzt.
Kontrolle, welcher CPU governor aktiv ist:
root@ct:/etc/init.d# cpufreq-info -p
480000 1010000 interactive
Mit folgenden Kommandos kann der ondemand governor (testweise) aktiviert werden:
echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo ondemand > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
Gegenfalls Min/Max CPU Frequenz einstellen/verändern:
echo 480000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo 1010000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
Zusätzliche Parameter für den ondemand governor:
echo 40 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold
echo 2000000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate
Über den Parameter up_threshold wird gesteuert, wie schnell der governor bei steigender Last die CPU-Frequenz der Kerne auf die Maximalfrequenz hochsetzt. Der Default 95 ist zu träge - ich habe gute Ergebnisse mit 40 erzielt.
Mittels SYSMON sehe ich, daß die CPU nun den größten Teil des Tages mit der minimalen Frequenz getaktet ist. Benutze ich das FHEM Frontend oder laufen andere performance hungrige Jobs (z.B. nächtliches Backup) werden die CPU-Kerne maximal getaktet.
Im Anhang zwei Screenshots vorher mit default interactive governor und nachher mit ondemand governor.
Gruß
Tobias
PS: Hier noch ein paar Hintergrundinfos:
http://linux-sunxi.org/Cpufreq (http://linux-sunxi.org/Cpufreq)
https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt (https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt)
ich habe bei mir die cpufrequtils komplett rausgeschmissen, damit nur noch die Parameter vom boot-Skript gelten.
Zitat von: betateilchen am 06 November 2014, 11:12:51
ich habe bei mir die cpufrequtils komplett rausgeschmissen, damit nur noch die Parameter vom boot-Skript gelten.
Das heißt, es ist dann gar kein governor aktiv? Die CPUs laufen dann fix mit 912 MHz?
[target]
boot_clock = 912
jepp. Die Probleme hatte ich hier im Forum schonmal beschrieben:
http://forum.fhem.de/index.php/topic,26992.0.html
wie zieht man die updates? update / upgrade brachten kleider nicht den gewünschten erfolg
Zitatcat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
ergab
userspace interactive performance
Zitat von: chris1284 am 07 November 2014, 18:54:07
wie zieht man die updates? update / upgrade brachten kleider nicht den gewünschten erfolg
Kernel Updates lassen sich auf dem CubieTruck nicht via apt-get update / upgrade einspielen.
Siehe http://www.igorpecovnik.com/2013/12/24/cubietruck-debian-wheezy-sd-card-image/ (http://www.igorpecovnik.com/2013/12/24/cubietruck-debian-wheezy-sd-card-image/)
1. Kernel ZIP file cubietruck_kernel_3.4.xxx_mod_head_fw.tar dort herunterladen
2. Auf dem CubieTruck z.B. nach /tmp kopieren und auspacken (MD5 Checksumme kontrollieren, um sicherzugehen, daß das Archiv vollständig ist)
3. Sicherstellen, daß die die Boot-Partition nach /boot montiert ist
4. Kernel tar Archiv in das root Filesystem / auspacken:
cd /
tar xvpf /tmp/cubietruck_kernel_3.4.xxx_mod_head_fw.tar
5. Neu booten:
reboot
Die ganze Aktion ist zwar nicht wirklich kritisch - trotzdem sollte man grundsätzlich vorher ein vollständiges
Backup ziehen...
Gruß
Tobias
Edit: Hinweis zur Boot-Partition ergänzt.
Hallo
Sorry ich hatte meinen cubitruck total gefrustet vor 8 Wochen in die Ecke gestellt weil ich die Kracks hier nciht mehr nerven wollte.
Da ich ein totaler Linux Anfänger bin fehlen halt immer wichtige Grundlagen. Da ich aber in einem anderen Beriech beruflich unterwegs bin ist das erlernen des neuen Betriebssystems keine Kleinigkeit... :-(
1 ist kein Problem, hab ich gefunden und geladen
das dann mt filezilla zb auf den cubie kopieren auch kein Problem
2. Auf dem CubieTruck z.B. nach /tmp kopieren und auspacken (MD5 Checksumme kontrollieren, um sicherzugehen, daß das Archiv vollständig ist)
auspacken ?? bei Windows ganz easy, aber mit Linux ??
MD5 Checksumme grrrrrr, vor 8 Wochen mal was gelesen aber leider nicht im Langzeitgedächnis
3. Kernel tar Archiv in das root Filesystem / auspacken:
Ich denke ich bin nicht der einzige mit so einer Kiste zuhause der da stockt... Solche Probleme gabs auf der Fritte nicht...
Der Ustieg von der Fritte ist leider steinig....
Zitat von: Franz Tenbrock am 07 November 2014, 21:55:30
Da ich ein totaler Linux Anfänger bin fehlen halt immer wichtige Grundlagen. Da ich aber in einem anderen Beriech beruflich unterwegs bin ist das erlernen des neuen Betriebssystems keine Kleinigkeit... :-(
Verstehe ich gut. Aber trotzdem kann dir das Einarbeiten in Linux niemand abnehmen. Gerade zu Linux gibt es tonnenweise Material im Internet und sicherlich auch regalweise gute Literatur im Buchhandel.
Das Upgrade eines Linux Kernels für einen Einplatinencomputer wie den CubieTruck ist sicherlich nicht unbedingt "beginner level". Andererseits sind diese Rechner ja gerade Geräte zum Experimentieren und Ausprobieren. Da muß man sich d'rauf einlassen oder eben nicht. Eine FritzBox oder auch ein Windows mit voll-/halbautomatischen Betriebssystem Updates über ein GUI ist definitiv eine andere Welt.
Zitat
1 ist kein Problem, hab ich gefunden und geladen
das dann mt filezilla zb auf den cubie kopieren auch kein Problem
Gut
Zitat
2. Auf dem CubieTruck z.B. nach /tmp kopieren und auspacken (MD5 Checksumme kontrollieren, um sicherzugehen, daß das Archiv vollständig ist)
auspacken ?? bei Windows ganz easy, aber mit Linux ??
MD5 Checksumme grrrrrr, vor 8 Wochen mal was gelesen aber leider nicht im Langzeitgedächnis
Stichworte für die Recherche: unzip und md5sum
Zitat
3. Kernel tar Archiv in das root Filesystem / auspacken:
Ich denke ich bin nicht der einzige mit so einer Kiste zuhause der da stockt...
Naja, dazu habe ich ja sogar die genauen Kommandos in meinem ersten Post aufgeführt.
Zitat
Solche Probleme gabs auf der Fritte nicht...
Ansichtssache... Auf der FritzBox war beispielsweise das Nachrüsten eines Perl Pakets für irgendein FHEM-Modul auch kein Spaß...
Zitat
Der Ustieg von der Fritte ist leider steinig....
Nicht entmutigen lassen.
Aber ganz ehrlich - Du brauchst kein Kernel Upgrade durchführen, wenn dein CubieTruck läuft und das tut, was Du möchtest. Du mußt Dich nicht mit CPU Governor herumplagen, wenn Linux Neuland für dich ist. Das _kann_ man machen, wenn man Freude am Experimentieren hat. FHEM läuft auch ganz vorzüglich mit dem Standard Governor aus Igor's Image. Oder auch ganz ohne - siehe den Beitrag von betateilchen weiter oben...
Nix für ungut, Gruß
Tobias
weil der cubie sich ständig aufgehängt hat FrequenZ ?!
wäre das update auf eine aktuellere Version sicher sinnvoll.
Das man sich da einarbeiten muss ist mir klar....
Aber es ist shcon eien Menge.
FHEM Perl Linux.
ne Menge läuft ja schon und die Fritte machts ja noch
nur Schade um den cubie der zur Zeit ohne Strom hinter der Fritte steht...
im Winter ist ja etwas mehr Zeit :-)
Zitat von: Franz Tenbrock am 07 November 2014, 22:48:35
weil der cubie sich ständig aufgehängt hat FrequenZ ?!
wäre das update auf eine aktuellere Version sicher sinnvoll.
Das Kernel Update wird deinen CubieTruck vermutlich nicht stabiler machen. Vielmehr solltest Du die maximale CPU Frequenz auf konservative 912 MHz verringern. Im Beitrag http://forum.fhem.de/index.php/topic,26992.0.html (http://forum.fhem.de/index.php/topic,26992.0.html) ist genau das beschrieben... Das IgorImage (bzw. das init skript cpufrequtils) übertaktet den CubieTruck standardmäßig etwas (1010 MHz).
Danke tmp88
allerdings musste ich noch nach dem entpacken nach /
nand1 mounten und uImage aus /boot dorthin kopieren. erst dann ergab uname -a die reichtige Version 3.4.104-sunxi aus
nur entpacken und reboot brachte immer den alten kernel zum booten
@chris das kommt darauf an, welche IgorImage-Version Du ursprünglich installiert hast. Bei der aktuellen Version ist die Bootpartition standardmäßig nach /boot eingehängt, da fällt der Schritt dann weg.
Das Ganze hängt mal wieder mit fehlendem "Grundverständnis zu Linux" zusammen *g*
Zitat von: Franz Tenbrock am 07 November 2014, 21:55:30
auspacken ?? bei Windows ganz easy, aber mit Linux ??
Noch einfacher als bei Windows:
unzip Dateiname.zip
Danke für den Hinweis... ja Linux ist mir zugegeben an mancher Stelle noch einwenig "fremd" ;)