Anleitung für Set-CPU

Set-Cpu ist ein sehr nützliches Programm, um den Prozessortakt und die Hoch- und Heruntertaktcharakteristik des Telefons zu beeinflussen. Ich habe in weiten Teilen die originale Anleitung übersetzt.

Set-CPU benötigt zwingend Root-Rechte

SetCPU gibt es als Paid-App im Market zum Download

Oder kostenlos für Registrierte Mitglieder auf XDA-Developers

Die CPU des HTC-Desire taktet automatisch in einem Bereich von 245 bis 998 MHz. Je nach Lastsituation taktet die CPU automatisch herunter, um Strom zu sparen, oder herauf, um volle Leistung zur Verfügung zu stellen. Mit Set CPU kann man auf diese dynamische Taktung gezielt Einfluss nehmen, um das Verhalten ganz an die eigenen Bedürfnisse anzupassen und beispielsweise richtung Energiesparen zu optimieren.

Nach dem ersten Start des Programms sieht man Folgenden Screen:

Hier sollte man einfach den Knopf „Autodetect Speeds Recommended“ betätigen und die Nachfrage nach Rootrechten bejaen. Sollte euer ROM keinen Autodetect unterstützen, folgt noch eine Abfrage des Telefontyps.

Nun landet man im Hauptscreen des Programms:

Das Menü unten erscheint, wenn man die Menütaste drückt.

In diesem Menü kann man mit „Device Selection“ wieder den ersten schirm zur automatischen Geräteerkennung aufrufen (das sollte man machen, wenn man sein ROM updated hat, damit SET-CPU wieder alles so einstellen kann, wie es der Macher des jeweiligen ROMs voreingestellt hat.

Der zweite Menüpunkt ist „Perflock Disabler“, der muss nur bei Stock-ROMs betätigt werden, bzw. bei ROMs, die nicht den Vermerk tragen „Perflock disabled“

Zur Erklärung:

In normalen HTC-ROMs gibt es einen Treiber Namens „Perflock“ der permanent die Maximum- und Minimumtaktraten, die man mit SET-CPU einstellen kann, zurücksetzt. Der Disabler behebt das Problem, wird aber bei jedem Reboot gelöscht und muss manuell nach dem Booten wieder aktiviert werden. Dies geschieht aus Sicherheitsgründen, da der Disabler möglicherweise Euer Telefon zum Absturz bringt.

Im Hauptscreen sieht man zunächst die große MHz Zahl, die die aktuelle Taktrate der CPU angibt, diese Zahl kann schwanken, je nachdem, ob Hintergrunddienste Rechenleistung benötigen.

Unterhalb der Frequenzangabe sind zwei Slider, mit dem oberen kann man die maximale Taktfrequenz einstellen, mit dem unteren die minimale Taktfrequenz. Bei Kernels, die übertakten Ermöglichen, kann man hier Frequenzen jenseits von 998MHz einstellen, natürlich mit den gleichen Risiken, die es beim übertakten von CPUs gibt. Durch die dynamische Taktung wird aber eher selten der volle CPU-Takt benötigt. Bei Rechenlastigen Apps (z.B. Spiele) ist natürlich mit dauerhafter Vollast zu rechnen.

Der Auswahlbutton „Scaling“:

Mittels dieses Auswahlmenüs kann man den sogenannten CPU Govenor einstellen. Dieser bestimmt die Charakteristik, wie die dynamische CPU-Taktung auf einen Lastwechsel reagiert:

je nach ROM finden sich verschiedene Govenors, hier die häufigsten:

  • ondemand – verfügbar in den meisten Kernels und der Standardgovenor für die meisten Kernels. When die CPU eine bestimmte Auslastung erreicht (das kann man unter „up threshold“ ind den Advanced Settings einstellen, siehe weiter unten) dann wird die CPU sehr schnell hochgetaktet, um die Lastanforderung zu bedienen, wenn keine Last vorhanden ist, taktet die CPU wieder runter
  • conservative – verfügbar in einigen Kernels. Funktioniert ähnlich wie „ondemand“, nur wird die CPU nicht ganz so schnell hochgetaktet. Das bietet zwar nicht sofort Höchstleistung, spart aber Energie.
  • performance – verfügbar in den meisten Kernels. Die CPU läuft immer auf der eingestellten Taktfrequenz des max-Sliders. Dies ist etwas effizienter, statt bei „ondemand“ beide Werte auf maximum (mit dem Slider) zu stellen, da keine Rechenleistung für Laständerungen verschwendet wird. Dies ist der empfohlene Govenor für stabile Benchmarks.
  • powersave – verfügbar in einigen Kernels. Die CPU läuft auf der eingestellten Taktfrequenz des min-Sliders
  • interactive – verfügbar in einigen Kernels. Dieser Govenor ist für extrem schnelle Reaktion auf Lastwechsel konzipiert. Er funktioniert ähnlich wie „ondemand“ oder „conservative“, nur dass bei den Advanced-Einstellungen nichts an der „sample Rate“ geändert werden sollte (Die wird nicht benötigt, bei ungünstig Eingestellten Werten kommt es zu Rucklern und Hängern). Denn dieser Govenor taktet die Cpu bei Lastanforderung direkt auf maximaltakt und schaltet dann langsam wieder herunter, wenn diese Leistung nicht benötigt wird. Dies stellt einen sehr Leistungsstarken Govenor bei gleichzeitiger Energieeffizienz dar.
  • smartass-Govenor – aus dem LeeDroid-Forum: “Smartass governor: based on the concept of the “interactive governor” but a little more responsive, Smartass will also cap the clock speed at a minimum whilst the screen is off thus eliminating the need for “sleep profiles”.” – d.h. wenn man diesen Govenor einstellt muss man nicht einmal mehr ein Profil für deaktivierten Screen einstellen, da dann die CPU ohnehin nur mit Minimaltakt läuft.

Der Knopf „Set on Boot“ stellt die hier eingestellten Werte für die Taktung und des Govenors beim booten wieder her (wenn Perflock disabled ROMs genutzt werden)

Im zweiten Tab „Profiles“ kann man Profile erstellen

Der Punkt „Enable“ schaltet die Profilnutzung ein. Ein Haken bei „notifikations“ zeigt in der Benachrichtigungsleiste an, welches Profil gerade aktiv ist.

Mit „Add Profile“ definiert man ein neues Profil (siehe rechten Screenshot) mit folgenden Punkten:

Condition: stellt die Bedingung ein, zu der das Profil gelten soll:

Bedingungen sind:

  • Charging/Full – wärend des Ladens und Status „Voll“ bei laden über beliebige Quelle
  • Charging AC/Full – wärend des Ladens und Status „Voll“ bei laden über Netzteil
  • Charging USB/Full – wärend des Ladens und Status „Voll“ bei laden über USB
  • Screen Off – währen der Bildschirm aus ist
  • Battery < – während Batteriestand unterhalb X Prozent
  • Temp > – wenn Temperatur größer als

für die letzten beiden Bedingungen erscheint dann ein Slider, bei dem man den Wert einstellen kann.

Mit den Max und Min Slidern stellt man die minimale Taktfrequenz ein, die für den ausgewählten Zustand gelten. Mit „Scaling“ den Govenor und mit „Priority“ die Priorität (wenn z.B. eine Condition für mehrere Profile gilt, beispielsweise Laden über AC -> Maximaltakt der CPU und Temperatur über 45 Grad-> 245MHz maxfrequenz, dann müsste man der zweiten Bedingung eine hohe Priorität einräumen, damit sich das Desire bei kritischen Temperaturen trotz angeschlossenen Netzteils herunter taktet)

Mit Save speichert man das ganze.

Beispielprofil:

ich habe nur ein einziges aktives Profil für „Bildschirm aus“

Condition: „Screen off“ (Bedingung: Bildschirm aus)

Max: slider auf 245000 (Maximalfrequenz der CPU auf 245MHz)

Min: slider auf 245000 (Minimalfrequenz der CPU auf 245MHz)

Scaling. powersave (damit die CPU einfach auf Minimaltakt bleibt zum Stromsparen, siehe governors oben)

Priority: 50 (egal, da ich nur ein Profil habe ;o) )

um ein Profil zu aktivieren muss  ein Haken bei „Enable“ sein und auch der Haken vor dem entsprechenden Profil

Das Menü Advanced:

Sampling Rate – die Rate in Millisekunden, mit der die CPU vom Govenor überprüft wird

Up Theshold – Eine Prozentgröße für die CPU Last bei derzeitiger Taktung, bei der die CPU hochgetaktet wird

Ignore nice Load – wenn man hier 1 einsetzt werden einige Hintergrundprozesse ignoriert und die CPU nicht hochgetaktet, wenn diese aktiv sind

Powersave Bias (0-1000) – Eine logarithmische Prozentangabe, bei der gilt: 1000 ist 100%, 100 ist 10%, and 0 is 0%. Der CPU Govenor stellt dann einen Prozessortakt ein der X Prozent unter dem eigentlich eingestellten Wert ist, der für Optimale Geschwindigkeit eingestellt werden müsste.

und natürlich gibt es hier wieder „Apply“ zum abspeichern und „Set on Boot“ um das ganze permanent zu machen

Mit dem Punkt Info kann man Informationen zum Handy einsehen und diverse Benchmarks fahren, um die Auswirkungen der Einstellungen zu sehen.

viel Spaß beim Tüfteln! Im Brutzelforum wgibt es auch schon einen Thread zu Set-CPU

Über Brain McFly

Rooter aus Leidenschaft, Nerd, Erklärbär ;o)

41 Kommentare zu “Anleitung für Set-CPU”

  1. marse sagt:

    Unter saling gibts bei mir noch „Interactive“ zur Auswahl,keine Ahnung ob ich Interactive eingestellt lassen soll.

    1. Brain McFly sagt:

      hab mal Beschreibung für interactive ergänzt

      1. Brain McFly sagt:

        p.s. wenn interactive verfügbar, sollte man den nutzen

  2. Ratze sagt:

    Interactive ist ähnlich wie der ondemand-governor, reagiert nur schneller, siehe auch http://android.doshaska.net/interactive

    ondemand vs conservative:
    ondemand taktet bei Last sofort auf die höchste zugelassene Frequenz, wenn die Last nachläßt wird über verschiedene Stufen wieder auf die minimale heruntergetaktet.

    conservative:
    Taktet bei last über verschiedene Stufen hoch, nicht unbedingt bis zum Höchsttakt (nur soweit wie benötigt), wenn keine Last mehr sofort auf minimaltakt.

    ondemand reagiert daher schneller, verbraucht aber auch mehr Strom als conservative, interactive ähnlich wie ondemand, taktet noch schneller hoch, bessere Geschwindigkeit

  3. ToM sagt:

    Ich verwende dieses ROM hier (https://www.brutzelstube.de/2010/gerootetes-offizieles-htc-stock-rom-2-10-405-2-stand-9-9-2010-mit-optionalen-addons/), etwas modifiziert. Dabei sind auch die Powersafing Modules installiert.
    DIe machen doch das Gleiche, wie SetCPU, oder irre ich mich da?

    ToM

    1. Brain McFly sagt:

      ja, du irrst ;o)
      Du musst setcpu verwenden, um die geänderten Govenors nutzen zu können, das Undervolting wird aber automatisch auch ohne SetCPU genutzt

      1. ToM sagt:

        Strange, denn runtertakten tut er definitiv. Ich hab spasseshalber mal das Tool Temp CPU draufgehabt, da sehe ich deutlich den Sprung von 245 MHz auf 998 MHz, wenn ich den Screen anmache und eine App starte?!?

        ToM

        1. Brain McFly sagt:

          ja natürlich, die cpu des desires taktet standardmäßig zwischen 245MHz und 998MHz, nur wie es umschaltet und wie es auf Lastwechsel reagiert, wird über die Govenors geregelt.

          1. ToM sagt:

            Da scheint schon was in die Modules eingebaut zu sein:

            POWERSAVING MODPACK (1.5)

            This update works only with the second ROM with init.d. It adds a few things to the ROM:

            * Perflock disabler – lets your phone consume less power when idle
            * Interactive/Powersaving governors – for good power/performance
            * Undervolt – reduces the overall power your phone uses
            * Screenstate scaling – scales down CPU usage depending on battery level and screen state
            * CFQ scheduler – improved general performance

            ToM

            1. Brain McFly sagt:

              und die ersten 2 punkte sind für setcpu

              1. ToM sagt:

                Ich hab SetCPU mal wie beschrieben installiert und dasselbe Profil wie DU hast erstellt.
                Das Handy wird nach Neustart mehr als zäh, brauchte einige Minuten, um das App wieder runterzuschmeissen. Merkwürdig. Ich hab im Forum mal gepostet, welches ROM + Addons ich verwende, vielleicht liegt da der Hund begraben?
                https://www.brutzelstube.de/forum/viewtopic.php?f=14&p=153#p153

                ToM

              2. Brain McFly sagt:

                hast du den oberen slider im Hauptscreen eventuell runter auf 245MHz gestellt, so dass die CPU nicht mehr hochtakten konnte? Mit 245MHz lief meine CPU nur gerade im Moment des SCreenshots, weils da sonst nix zu tun gab, die Anzeige schwankt aber und geht auch bis 998MHz hoch bei mir

  4. ToM sagt:

    Der obere war auf max. Die Schwankungen hab ich auch gesehen. Nur nach Neustart war das Ding zäh wie Kaugummi…
    Daher hab ich das App erstmal runtergeschmissen.

    ToM

    1. Brain McFly sagt:

      in dem rom, was du nutzt, ist der perflock nicht disabled, daran liegts vielleicht. Du hast zwar das powersave-mod geflasht (welches den perflock abschaltet), aber vielleicht wurde das durch irgend ein anderes Mod überschrieben. Ich würde den powersave-mod einfach nochmal flashen und set-cpu nochmal probieren

      1. ToM sagt:

        Passiert dasselbe nach Reboot: Musste den Akku rausnehmen, da ging gar nix mehr. Somit ist SetCPU Geschichte für mich, da die Modules auch ohne arbeiten und ich den positiven Effekt bemerke.
        Zum Glück gibt es NANDroid. 😛

        ToM

        1. Brain McFly sagt:

          was mir gerade so einfällt, im hauptschirm hast du nicht zufällig als govenor „powersave“ angegeben? Dann läuft dein desire nur noch mit 245 MHz…

          1. ToM sagt:

            Nein, da hab ich „interactive“ dringelassen. Eigentlich war alles 2mal so eingestellt, wie von Dir in dem Guide beschrieben.
            Was solls? Powersafe Mod tut, die Taktzahl variiert angenehm, es spart Strom. Warum mich mit dem App rumärgern?

            ToM

            1. Brain McFly sagt:

              ja, mich interessiert immer das „warum“ ;o)
              Hast recht, wenn alles läuft ist ja ok 😀

              1. mbk2 sagt:

                Könntest ja mal Lee’s Rom versuchen. Ist Sense basierend – merkst also keinen Unterschied zum Stock aber es läuft geschmeidiger 🙂 Kannst auch ohne AP2SD+ installieren, dann ist es dem Stock noch ähnlicher 🙂 Aber SetCPU funktioniert richtig gut – und der smartass Govenor ist schon supi!

              2. ToM sagt:

                Naja könnte. Läuft alles schön rund, getreu dem Motto: Never touch a running system.
                Wenn ich wieder Bastellaune hab, klatsch ich mal Lee drauf.

                ToM

              3. mbk2 sagt:

                Mach einfach ein Nadroid Backup. Dann kannst du alles ausprobieren und kann jederzeit zum ursprünglichen ROM Stand zurückkehren. Das ist ja das schöne am root und Nandroid… 😉

              4. ToM sagt:

                Scho klar, nur keine Lust 😛
                Das NAND Backup hat mir schon des Öfteren das „Leben gerettet“.

                ToM

  5. mbk2 sagt:

    Bin grad ein wenig baff über meinen Akkuverbrauch. Hab irgendwie das Gefühl, der Batterie will nicht runtergehn!
    Muss schon sagen, Smartass und undervolting (+ Juice Defrender) und der Akku hält ewig 😉

    1. Brain McFly sagt:

      Jo, das was HTC ins STandard-ROM einbaut ist nicht wirklich sparsam ;o)
      Manche berichten über Reboots bei Einsatz des „Smartass“-Govenors. Hast du damit Probleme und hast du noch zusätzliche Profile eingestellt?

      1. mbk2 sagt:

        In der Tat 😉
        Nein überhaupt nicht. Läuft seit ein paar Tagen ohne Probleme durch. Keine Reboots etc…
        Hab sonst nur 3 weitere Profile:
        beim Laden auf 499max,
        Battery 40.5°C auf 499max jeweils mit smartass.

        Und noch ein Performance OC 1113MHz Profil bei Bedarf.

        1. mbk2 sagt:

          Irgendwie wurde grad ne Zeile nicht mehr gepostet:
          3. Profil wär Temp>40.5 Grad auch auf 499MHz

  6. Masel sagt:

    Hallo Brain,

    sag mal, muss das App ständig im Hintergrund laufen ? oder kann man es einstellen und dann zwingen dass es nicht mehr startet ?

    danke und viele Grüße

    Masel

    1. Brain McFly sagt:

      keine ahnung, was stört dich dran, die speicherverwaltung des RAMs funktioniert doch unter Android erstklassig. Da muss man nix frei halten, selbst 10 Gigabyte RAM würde Android bis zum Anschlag voll machen, bevor es Apps beendet. Und Set-CPU frisst keine Leistung.

  7. Masel sagt:

    ok alles klar….dann lass ichs laufen…hehe…

    viele Grüße

    Masel

  8. Noah sagt:

    Hi Brain,
    ein Hinweis für diese Anleitung:
    „smartass“ ist auch für AuraXTSense verfügbar.
    Zumindest in Version 8.1.4 und 8.2 (evtl. auch schon früher).
    Gruß Noah

    1. Brain McFly sagt:

      hab mal den leedroid hinweis rausgenommen, den smartass-govenor gibts ja jetzt für fast jedes ROM

  9. osoelpeligroso sagt:

    Hab das mit dem Perflock nicht ganz gecheckt….Hab InsertCoin 1.8f drauf, muß ich alles lassen wie es ist oder Perflock disable??

    1. Brain McFly sagt:

      da snq-’s chgrmod3 kernel in dem rom ist, dürfte der Perflock abgeschaltet sein, da man ja sonst nicht mittels set-cpu die Frequenzen verändern könnte.

  10. osoelpeligroso sagt:

    ja vielen dank! habe es schon selber gesehen. wenn ich nicht weiß was ich tue, zögere ich etwas zu bestätigen. hab auf disable perflock gedrückt und das gerät ist nicht explodiert…..

  11. HD sagt:

    Hi,

    ich hätte gerne folgendes eingestellt:

    Display aus: min: 128 MHz max: 128 MHz
    Display an: min: 245 MHz max: 998 MHz

    Wie krieg ich das denn hin? Ich kann ja kein Profil für „screen on“ definieren…

    1. Brain McFly sagt:

      du musst ja auch nur ein profil für screen off erstellen. Das was du auf dem Hauptscreen einstellst gilt für alles, was nicht von Profilen erfasst wird. Also wenn du ein SCreen Off Profil erstellt gilt die Haupteinstellung für alles, wo der Bildschirm an ist ;o)

  12. HD sagt:

    Hm, eigentlich logisch ;)Danke!
    Noch was anderes: Beim Screen off Profil hast du ja powersafe beim scaling eingestellt.
    Ist das wirklich notwendig? Ich meine wenn ich da z.B. interactive einstelle und min/max beides auf 128 MHz steht,
    kann er doch trotzdem nicht höher takten als 128 MHz, oder doch?
    Ich habe das Gefühl wenn ich auf powersafe bin, dauert es ewig (naja ein paar Sekunden halt…) bis er hochtaktet wenn ich das
    Display einschalte…

    1. Brain McFly sagt:

      ich hab inzwischen auch den ondemand govenor und 128Mhz-4hundertirgendwas als screenoff aktiviert, wegen dem „Trägheitsphänomen“ beim einschalten

  13. Donald sagt:

    bei mir gibt es auch noch die Option „userspace“ – was macht das denn?

    1. Brain McFly sagt:

      der ermöglicht es externen Apps eigene Profile zu setzen. Ist im Moment nutzlos. Beispielsweise wäre es denkbar, dass dann z.B. ein Videoplayer festlegt, dass die cpu immer mit einem gewissen Mindesttakt läuft, damit es nicht zu Rucklern kommt. Mir ist aber keine App bekannt, die das nutzt.

  14. Sandra sagt:

    Hallo, Ich habe mir heute die neuste Version von Set-CPU gekauft. Ich habe ein screen off profil erstellt, nach Deiner Anleitung. jedes mal wenn ich den Bildschirm wieder einschalte und somit das Profil deaktiviert wird startet automatisch die Google Suche. Ich habe bis jetzt nicht herausfinden können an was das liegen könnte? Ich habe ein Samsung Galaxy S2 mit Root Box -JB-i9100-V3.4.
    Vielleicht kannst Du mir weiterhelfen?

Comments are closed.