CPU-Mindesttakt (arm_freq_min) und 3.10.x Kernel

  • Hallo zusammen,

    mit dem Parameter "arm_freq_min" in config.txt kann man einstellen, auf welche Taktfrequenz in Untätigkeitsphasen (idle) heruntergeschaltet werden soll. Obwohl es eigentlich nur wenig Stromersparnis bringt, habe ich mit meinem perfektionistischen Streben diese Einstellung natürlich auf den niedrigst möglichen Wert gesetzt: lt. elinux sind das 100 Mhz, darauf habe ich mich verlassen und es schien auch alles zu funktionieren.

    Mit dem neuesten Kernel (latest, Version 3.10.x, nicht der Arch Standardkernel) ließ sich der Pi nicht mehr booten. Nach mühsamer Suche stellte sich heraus, daß 100 Mhz für diesen Kernel zu wenig sind. Mit

    Code
    arm_freq_min=200


    läuft es wie gewohnt.:thumbs1:

    Weiterer Effekt:
    Das Wlan (Edimax-Stick, 8192cu Treiber) brach bisher nach ca. 1-2 Std. immer zusammen. Da habe ich auch schon stundenlang gesucht und verschiedenste Modulparameter getestet. Jetzt läuft es schon seit 2 Tagen endlich stabil - Ursache dürfte auch in dem zu niedrigen Takt gelegen haben.

    Fazit: Mind. 200 Mhz verwenden (oder ganz auf underclocking verzichten, so ist es ja als Standard vorgegeben)

    Gruß, mmi

  • Hallo mmi,

    da bin ich mal gespannt, ob das mit dem WLAN so bleibt (daumendrück) ...

    Mich eiert das langsam ehrlich gesagt an: weder der Logilink(RT5370) noch der Edimax(Realtek RTL8188CUS) funktionieren bei mir ohne sporadische Verbindungsabbrüche.
    Mich wundert nur ein wenig, dass das Problem ausser bei Dir und mir scheinbar bei niemandem auftaucht ...
    Aber das ist mal wieder (fast) OT ....

    Schönen Tag noch,
    -ds-

  • Ist Dein Edimax stick auch dieses Miniteil und als Kernelmodul wird "8192cu" verwendet?
    Durchaus möglich, daß der neue Kernel das Problem löst und es nichts mit dem Mindesttakt zu tun hat. Bin natürlich zu faul, deswegen nochmal einen Downgrade zu machen.

    Ich weiß nicht, was die Debian Arm backports bereitstellen. Falls Du Interesse hast, könnte ich Dir den Kernel (3.10.1) und die zugehörigen Module packen und bereitstellen, sie sind ja schnell in /boot bzw. /lib/modules kopiert und sollten distributionsunabhängig laufen.

    Ansonsten glaube ich, daß wlan gar nicht so häufig verwendet wird, deswegen auch so wenig "Klagen" ;)

    Bis dann, mmi

    P.S. Bin erst mal weg, Frau hat Hunger, muss grillen ;)

  • Hi mmi,

    na dann erst mal guten Appetit ;) ...

    jaja, das ist so ein Miniding und lädt "8192cu" ...
    Dannke für Dein Angebot, aber lass gut sein. Ich mag mich damit nicht rumärgern. Wird schon mal irgendwann funktionieren ...
    Der Watchdog passt auf und rebootet und gut ist. Und der RPi über WLAN hängt sowieso im Moment nur so rum ...
    Kann schon sein dass kaum jemand WLAN nutzt ... vielleicht fällts auch nur nicht weiter auf ...

    bye,
    -ds-

  • Danke!

    Wlan läuft und läuft und läuft - damit ist endlich dieses leidige Thema vom Tisch. War für mich sehr wichtig, da nur für einen Pi Netzwerk über Kabel in Frage kommt.

    Schönen Abend noch!

    mmi


  • Danke!

    Wlan läuft und läuft und läuft - damit ist endlich dieses leidige Thema vom Tisch. War für mich sehr wichtig, da nur für einen Pi Netzwerk über Kabel in Frage kommt.

    Schönen Abend noch!

    mmi

    Na das lässt ja hoffen :) ...

    Ebenfalls Prost,
    -ds-

  • Was mich in diesem Zusammenhang wundert: warum hält man so lange an dem 3.6er Kernel fest? Oder hat er mittlerweile schon so viele patches, daß er fast einer höheren Version entspricht? Keine Ahnung.

    Als "best ager" und "silver surfer" muß man schauen, vom neuesten noch rechtzeitig was mitzubekommen. Darum halt ich's wie beim Metzger: nur das frischeste auf den Teller. ;)

    Schönen Sonntag noch,
    mmi

    P.S.: Wieder ein paar Stunden mehr, ein mittlerweile verärgerter watchdog, weil wlan läuft und läuft ...:thumbs1:

  • Guten Abend,
    der 3.6.x ist mittlerweile in der Version 3.6.11-15, und bekam nun schon wieder ein Update.
    Er wird also immer mal wieder gepatcht.

    Mit dem Kernel 3.10.6-1 (oder -2?) kann ich mittlerweile nicht mehr booten, es kommt direkt ein Kernel Panic.
    Je nach WLAN Stick habe ich seit eh und je ebenfalls Verbindungsabbrüche und das mit dem Standard Takt ;)
    Der Realtekt 8192SU (also der Chip, die Marke weiß ich gerade nicht, weil der einfach nur Schwarz ist und nichts mehr drauf steht) macht Probleme und ein Tendor W541U V2.0 läuft ohne Probleme.

    Soviel von meiner Seite zu dem Thema.
    Gruß,
    Nesc ;)

  • Hallo nesc,

    ich kann Dir nur recht geben, die neuesten 3.6.11er Versionen sind mittlerweile gut gepatched worden, vor einigen Monaten störte mich noch ein ziemlich verbugtes Alsa und sonst noch einiges. Das geht aber mittlerweile gut, leider gibt's das f2fs filesystem erst ab 3.9.

    Der "latest" Kernel ist immer ein Wagnis und nicht unbedingt empfehlenswert. Der neueste (3.10.6-1) läuft bei mir auch nicht, dazu kommt, daß die Kamera mit diesen Kerneln vermutlich noch nie funktioniert hat.

    Deswegen habe ich auf zwei meiner Raspis wieder den Standardkernel installiert und bin völlig platt, wie gut jetzt WLAN mit den kleinen Edimax-Sticks funktioniert! Mittlerweile seit über einer Woche im Dauerbetrieb kein Aussetzer mehr - der watchdog ist arbeitslos geworden. Nachdem bei mir fast alle RPis nur mit wlan arbeiten, natürlich sehr erfreulich.

    Gruß, mmi

  • Ja hey mmi :) ...

    hmm ... das mit den WLAN-Sticks kann ich im Moment leider für mich noch nicht so bestätigen.
    Aber ich werde mal bei Gelegenheit wieder durchtauschen und andere probieren. Vermutlich habe ich bei meinem Glück in dieser Hinsicht, mal wieder die richtigen (in Hinblick auf trouble) erwischt.
    Ist jetzt aber nicht weiter schlimm, wie gesagt. Ich kann warten ;) ...

    cu,
    -ds-

  • Hallo dreamshader,

    nachdem Du ja die gleichen Sticks wie ich hast und es bei Dir nicht so gut läuft, würde ich als Ursache auf den networkmanager tippen. Ich verwende den relativ neuen "netctl", wäre ja mal einen Versuch wert.

    Grüsse nach RO,
    mmi

  • Ja hey :) ...

    hmm .. ich denke, der wird eh mit netctl eingerichtet (ich habe den mit einem script aktivieren müssen ... habe ich aber jetzt nicht weiter nachgeschaut, was der so treibt).

    Ach ... ich probier bei Gelegenheit mal die anderen aus ... und wenn nicht, dann nicht ;) ...

    Der betreffende RPi soll als AVR-Programmer tun ... tut aber nicht :) ... aber das schreibe ich gleich noch ins GPIO-Forum.

    Viele Grüsse bei traumhaftem Wetter aus RO,
    -ds-

  • Ich habe mal eine Frage bezüglich des mit Watchdog überprüfen.

    Wie genau funktioniert das?

    Ich habe aktuell einen cronjob laufen, der regelmäßig überprüft ob eine WLAN Verbindung vorhanden ist, wenn ja nichts tun, ansonsten wicd neustarten + einmal nach WLAN Geräten scannen.
    Auf meinem Netbook habe ich das soweit getestet, wenn ich manuell die Verbindung disconnecte, dass dann sobald der cronjob durchgelaufen ist kurz darauf wieder eine Verbindung vorhanden ist.
    -> Zweck erfüllt.

    Nur wie sieht es mit dem Watchdog aus, ist das effizienter?

    Gruß,
    Nesc

    ps: Falls zu sehr Off-Topic, einmal bescheid sagen ;)

  • Zitat


    Ich habe aktuell einen cronjob laufen, der regelmäßig überprüft ob eine WLAN Verbindung vorhanden ist, wenn ja nichts tun, ansonsten wicd neustarten + einmal nach WLAN Geräten scannen.

    Nachdem in Deinem Fall nur wicd neu gestartet und gescanned werden soll, würde ich es so lassen - effizienter kann man da nicht viel machen.

    Der watchdog ist hauptsächlich interessant, wenn das gesamte System hängen bleibt - dann kann man den RPi z.B. automatisch neu booten lassen.

    Gruß, mmi

  • Um das Thema noch mal aufzugreifen:

    Habt ihr auch die anderen *_min Einstellungen mal ausprobiert was dort noch stabil wäre, oder habt ihr bisher nur arm_freq_min verändert?

    Code
    arm_freq_min=
    core_freq_min=
    sdram_freq_min=
    over_voltage_min=

    Insbesondere würde mich " over_voltage_min " interessieren wie weit man das auf einen negativen Wert setzen kann


    Im raspberrypi.org Fourm habe ich dazu folgendes gefunden:


    quelle: http://www.raspberrypi.org/phpBB3/viewtop…dervolt#p188730

    Und hier noch ein Blog Beitrag der sich auch bezüglich "Power Saving" beschäftigt: http://www.daveakerman.com/?page_id=1294

  • Hab das mal ein bischen getestet aber musste feststellen das sich der takt nich dynamisch erhöht wenn er ausgelastet wird :huh: :s


    Meine /boot/config.txt Einstellung sieht aktuell so aus:

    cpu.php Ergebnis:

    Spoiler anzeigen

    Idle:

    u8c6gfb315ig.png


    Last:

    zg89xwuoneju.png
    Als Stresstest hab ich das Script von hier genutzt: http://elinux.org/RPi_config.txt#Overclock_stability_test

    Man beachte auch die "Page generated" Zeit, die nun extrem hoch ist - vorher dauerte das umdie 1sec

    Also wieso taktet sich der RPI unter Last nicht hoch? :-/ =(

  • Hallo meigrafd,

    also bei mir funktioniert die dynamische Taktung:

    Im idle:

    Code
    CPU current Frequency..: frequency(45)=200000000
    CORE current Frequency.: frequency(1)=100000000
    CORE current Voltage...: volt=1.20V
    SD-RAM CORE  Voltage...: volt=1.20V
    SD-RAM IO    Voltage...: volt=1.20V
    SD-RAM PHY   Voltage...: volt=1.23V

    Dynamisch hochgetaktet:

    Code
    CPU current Frequency..: frequency(45)=850000000
    CORE current Frequency.: frequency(1)=250000000
    CORE current Voltage...: volt=1.20V
    SD-RAM CORE  Voltage...: volt=1.20V
    SD-RAM IO    Voltage...: volt=1.20V
    SD-RAM PHY   Voltage...: volt=1.23V

    Meine Einstellungen in dieser Reihenfolge:

    Code
    arm_freq=850
    arm_freq_min=200
    core_freq=250
    core_freq_min=100
    sdram_freq=400
    sdram_freq_min=300
    over_voltage=0

    Im Vergleich zu Deiner Einstellung sehr "brav". ;)

    Unterschiedlich ist der Kernel, ich verwende "3.10.9-1-ARCH+", möglicherweise gegenüber dem Standardkernel etwas anders konfiguriert, aber das sollte diesbezüglich eigentlich auch keine Rolle spielen.

    Einen Stresstest habe ich nicht extra gemacht - er taktet gleich hoch, wenn ich schnell nacheinander nur diese Sysinfos ausgeben lasse.

    Mancher Minimalwert ist zwar mit noch kleineren Werten als zulässig beschrieben, aber mit Kernel 3.9 gab es einige Modifikationen bei den timern, da funktionierte das nicht mehr.

    Für over-/undervoltage habe ich keinen Bedarf (mehr), absolute Zuverlässigkeit hat Vorrang! ;)

    Gruß, mmi

  • Für "sysinfo" hab' ich mir folgendes Script erstellt:

    Gruß, mmi

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!