Taktrate runterschrauben - Strom sparen

Weiß jemand wie man beim MTK6592 Octa Core 1.7GHz die Taktrate runterdrehen kann?

Die minimale Taktrate liegt bei 700irgendwas. Das braucht kein Mensch, zieht nur unnötig den Akku leer. Im normalen Geschäft sollten 200 oder 300 MHz doch völlig ausreichen.
 

Erbsenmatsch

Well-Known Member
Ick hab beim Nexus 5 immer sehr, sehr weit runtergetaktet. Selbst Drastic hat dann noch super funktioniert. Du hast schon recht: die 1,7 GHz braucht man wirklich selten :)
 

N2k1

Well-Known Member
1,7 GHz mit 1 Kern zieht weniger Strom als 300 MHz mit 4 oder mehr Kernen.
Daher ist ein weiteres herabsetzen nur mit einem "undervolting" sinnvoll, was aber so nicht geht.
Wenn Du die Taktrate komplett verringern willst, kannst Du dies über die PLL-Settings machen.
Aber bei 700 MHz und Deepsleep läuft das P8 mehr als 3 Tage durch (incl. Sync von insgesamt 5 Mail-Adressen - wobei man die Mails dann aber nicht allzu oft lesen darf, da man sonst ja nicht bei 700 MHz bleibt ;-))
 
Im Deepsleep komme ich sicher auch auf drei Tage. Aber sobald man irgendwas macht fängt das Dingen mit 700 Umdrehungen an zu laufen, und dann geht's sturzflugmäßig abwärts.

Und deshalb würde ich da gerne eine minimale Taktrate von 200 oder 300 einstellen. Habe auch schon verschiedene Tools ausprobiert (SetCPU, NoFrills), da kann man aber nur die oberen Frequenzen drosseln.
Unter 700 geht nicht.
 

N2k1

Well-Known Member
Nochmal: Mit 200 oder 300 MHz fängst Du nichts an, weil dann sofort mehrere Kerne anfangen würden zu rödeln.
Wenn Du das wirklich willst: Engineer Mode --> Hardware testing --> De-Sense --> PLLs
 

KloNom

Well-Known Member
Auch wenn der mpdecision daemon gestoppt wird und dann die nicht benötigten Cores im System offline genommen werden? Hier beschrieben. Ich denke dann sollten die Cores sich nicht automatisch wieder starten, auch wenn der Workload eigentlich zu hoch ist...
 
O

Ora

Guest
@N2k1: Blöde Frage... reicht nicht hier eine Änderung aus`
Code:
root@S5:/sys/devices/system/cpu/cpu0/cpufreq # cat cpuinfo_min_freq
cat cpuinfo_min_freq
728000
 
O

Ora

Guest
Kernel?

Hier tun die doch auch rum...
Code:
adb root
adb stop mpdecision
adb shell
echo "0" > /sys/devices/system/cpu/cpu1/online
echo "0" > /sys/devices/system/cpu/cpu2/online
echo "0" > /sys/devices/system/cpu/cpu3/online
 

KloNom

Well-Known Member
Kernel?

Hier tun die doch auch rum...
Code:
adb root
adb stop mpdecision
adb shell
echo "0" > /sys/devices/system/cpu/cpu1/online
echo "0" > /sys/devices/system/cpu/cpu2/online
echo "0" > /sys/devices/system/cpu/cpu3/online
Genau was ich vor 2 Posts beschrieben hatte ;) ...
 
O

Ora

Guest
Klar, aber beantworte meine Frage nicht... kann man
cpuinfo_min_freq
überschreiben und hilft das?
 
Muß schon sagen, Euere Tipps waren nicht wirklich hilfreich ...

Bin jetzt auf ein Tool gestoßen mit dem man zwar nicht die Minimumrate unterschreiten kann, dafür kann man aber einzelne Kerne abschalten.
Ich teste das gerade aus.
Habe mal 5 von den 8 Kernen abgeschaltet, die verbleibenden drei laufen mit maximal 728 MHz.
Bisher absolut keine Performanceeinbußen.
Anschließend lasse ich mal nur 2 Kerne mit Normalfrequenz (728 - 1700 MHz) rödeln. Mal sehen was effizienter ist.

Werde aber das dumme Gefühl nicht los, das nicht die CPU für den enormen Akkuschwund verantwortlich ist, sondern das Display. Selbst bei einer Beleuchtung von nur 15%.

https://play.google.com/store/apps/details?id=ch.amana.android.cputuner
 

laptel

New Member
Werde aber das dumme Gefühl nicht los, das nicht die CPU für den enormen Akkuschwund verantwortlich ist, sondern das Display.
Dein Gefühl täuscht dich nicht, das Display ist immer Verbraucher Nummer 1.

Wenn du dein Phone mal mit anderen Erfahrungsberichten in der Serie vergleichst hast du schon mal den ersten Anhaltspunkt. Alles was du drumherum optimieren möchtest, ist immer stark abhängig von deinem Nutzungsverhalten. Je aktiver du mit deinem Phone bist, um so geringer sind die Auswirkungen der Einsparungen gesehen zur Zeitleiste. Nutzt man z.B. 2G anstatt 3G kann man Akku sparen, aber wer viel Netzaktivität hat, der erreicht damit keinen oder den gegenteiligen Effekt, da man im 2G Mode die ca. siebenfache Zeit für die Datenmenge benötigt. In jenem Fall würde es vielleicht mehr bringen, wenn man das Ansprechverhalten des 3G-Moduls verändert. Hast du den Eindruck, dass dein Phone außerhalb des Standards der Serie sehr viel Akku frisst, solltes du vielleicht zu aller erst einmal auf Wakelooks hin überprüfen. Anwendungen, die dein System unnötig hindern, in den Ruhezustand zu gehen oder zu oft aufwecken. So kann z.b. eine App, die mit dem Internet synchronisiert, nach einem Patch einen neuen "falschen" Abfrageintervall bekommen haben und dein Phone öfter als nötig aufwecken. Oder du hast vielleicht 10 verschiedene Apps ala HayDay, die ständig am Netz lauschen um zu sagen "Hey, dein Feld ist fertig", Whatsapp, Facebook u.s.w. eigentlich all das, was dir ständig die neuste Info geben möchte, beschäftigt dein Phone obwohl das Display off ist.

Habe mal 5 von den 8 Kernen abgeschaltet, die verbleibenden drei laufen mit maximal 728 MHz. Bisher absolut keine Performanceeinbußen. Anschließend lasse ich mal nur 2 Kerne mit Normalfrequenz (728 - 1700 MHz) rödeln.
Meiner Erfahrung nach ist dieses Thema ein wenig komplexer. Nur weil ein Tool anzeigt, dass etwas geändert wurde muss es sich nicht wirklich auf die Einstellung im Phone auswirken. Voraussetzung dafür ist, dass der Unterbau stimmt. Ich versuche es mal an einem Beispiel stark vereinfacht zu erklären. Mit einen Tool setzt du die Taktfrequenz auf 700Mhz, das Tool schreibt also ein 700 auf die gebräuchliche Systemvariable. Mit einem anderen Tool überprüfst du, wie viel Takt anliegt. Es zeigt dir 700Mhz. Der Fallstrick ist, dass es vielleicht auch nur die Systemvariable gelesen hat, auf welcher ja 700 stehen. Dies nützt dir aber nichts, wenn der Kernel des System, diese Variable gar nicht abfragt, weil er geschlossen ist und Taktfrequenz fest voreingestellt ist. Änderungen im System setzten also schon mal mindestens Rootrechte und den passenden Kernel voraus!

Weiterhin bringt es nicht viel, wenn man nur an der Taktfrequenz schraubt. Hierbei sollte man sich ebenfalls mal den Guvernor des Systems anschauen. Dieser regelt das Ansprechverhalten der Lastzustände im System und kann u.U. einiges an Einsparung bringen. Wieder vereinfacht gesagt geht es darum zu interpretieren, ab wann die CPU schrittweise nach oben getaktet werden muss im Verhältnis zur Arbeitsbelastung. "SmartAssV2" oder "Lulzactive" wären hierzu die Schlagwörter. Und während man sich in das Thema Guvernor einarbeitet, kann man sich auch gleich noch mit dem IO Scheduler beschäftigen, bei dem es auch um die Skalierung der Instanzen geht. Hierbei muss halt nach seinem empfinden rumprobieren. Von vornherein steht aber fest, je mehr man sparen will, um so träger wird das System.

Möglichkeiten gäbe es noch so einige, aber wie bereits erwähnt ist dies ein sehr komplexes Thema, bei dem man sich viel Basiswissen aneignen muss. Was ich hier ändere und auf den ersten Blick sich als positiv zeigt, könnte sich an anderer Stelle aber negativ auswirken. Man kann schon davon ausgehen, dass alles was in Hinblick auf die allgemeine Usability einfach zu bewerkstelligen ist, der Hersteller schon gemacht hat. Das Feintuning aber, richtet sich immer nach den eigenen Gebrauchsgewohnheiten.
 

aryo187

Active Member
Mann kann ja über ein Benchmark ganz easy testen ob nur eine Variable geändert wurde oder wirklich der Prozessor.
ich werds gleich mal testen beim thl mit 2k und mit 1365. Dauert nur paar min^_^[DOUBLEPOST=1414413021,1414412258][/DOUBLEPOST]apk: no frills cpu mit root rechten.

mit 2000 Mhz = 30719 Punkte
mit 1365 Mhz = 26020 Punkte

Das ergebniss finde ich schon etwas seltsam. hätte gedacht das 30% weniger Mhz mehr als ~13% Punkte ausmachen.
 

laptel

New Member
Mann kann ja über ein Benchmark ganz easy testen ob nur eine Variable geändert wurde oder wirklich der Prozessor. Das ergebniss finde ich schon etwas seltsam. hätte gedacht das 30% weniger Mhz mehr als ~13% Punkte ausmachen.
Im Ansatz richtig gedacht, aber:

- 1. Bencht die App auch wirklich nur die CPU-Rohleistung?
- 2. Verhält sich das ganze ähnlich wie bei einem PC. 10% mehr Takt ist nicht 10% mehr Leistung. Stichwort: Latenzen!

Im Topic geht es ja aber eigentlich mehr ums Akku sparen und wenn man nur die CPU runtertaktet wird man halt nicht den erhofften Einsparungserfolg haben Erfolg haben. Man darf nicht davon ausgehen, dass die Kerne ständig Volllast laufen wenn man was macht (außer vielleicht Spiele). Deswegen der Hinweis zum Guvernor und Scheduler. Die Kunst ist es eher die Teillastbereiche besser zu nutzen und dafür zu sorgen, dass das Phone im Standby auch wirklich so viel wie möglich im Standby ist und nicht durch ständige Wakelooks zu arbeiten hat.
 
Die Kunst ist es eher die Teillastbereiche besser zu nutzen und dafür zu sorgen, dass das Phone im Standby auch wirklich so viel wie möglich im Standby ist und nicht durch ständige Wakelooks zu arbeiten hat.
Das sehe ich auch so:pleasantry:

Hab's jetzt aufgegeben an der CPU rumzuschrauben. Taktrate verringern oder Kerne abschalten bringt so gut wie gar nix.
Weder eine merkliche Leistungseinbuße, noch längere Akkulaufzeit. - Einfach laufen lassen.

Wenn man mehr Akkulaufzeit haben will bleibt wohl nur ein kleineres Display und ein dickerer Akku übrig.
Und auch das was laptel oben geschrieben hat.
Das kann man übrigens prima mit diesen beiden Apps machen.

- Wakelock Detector
- Greenify
 

Mitglieder

Keine Mitglieder online.

Who Has Visited

Statistik des Forums

Themen
54,361
Beiträge
837,160
Mitglieder
66,935
Neuestes Mitglied
sawfish
Oben Unten