Flickering/Brightness/ Charging Permanent Fix - Xperia Z1 General

To the extent that flickering and low charging is related to Sony thermanager, here is the permanent fix for AOSP/CM based roms. While the idea of thermal manager is good and we should credit Sony for doing it, the implementation kind of s*cks. For example, the manager kicks in when CPU/GPU temperature rises to 44 degrees. Also, several triggers are set between 54-56 degrees. This is plain wrong, because 44, 50 and 55-56 are all perfect numbers for an active device and at these temperatures, thermal manager should not be active. I have adjusted trigger numbers so that there will be no mitigation until at least 60 and surprise surprise, all screen flickering is gone away....
Attached is thermanager.xml which should be put in /system/etc/ with 644 permissions. Reboot is required. UNZIP FIRST. Also, backup your current file just in case.
A word of caution on undervolting: keep in mind that when you undervolt on high frequencies, you make your CPU work harder, as it requires more cycles to do the same task. As a result, you have overheating. So, undervolting is counter-intuitive..

Does it also will solve the touch freeze problem on cm12.1?
Gesendet von meinem Xperia Z1

sgspluss said:
Does it also will solve the touch freeze problem on cm12.1?
Gesendet von meinem Xperia Z1
Click to expand...
Click to collapse
Any touch issues related to thermanager kicking in early could be resolved. But lollipop has overheating issues related to art, which can't be solved by thermal management. That's why strictly speaking, lollipop has to be recalled. In my view it can't be fixed.

A little question
Hello optimumpro
I only need put the thermanager in the path system/etc to make it work? or need something else?. Sorry by the queastion I noob an recently I repair de display and touchscreen for my xperia z1 C6902 and a have the flickering problem.
Thanks for your help.

optimumpro said:
A word of caution on undervolting: keep in mind that when you undervolt on high frequencies, you make your CPU work harder, as it requires more cycles to do the same task. As a result, you have overheating. So, undervolting is counter-intuitive..
Click to expand...
Click to collapse
I think you have a misconception about undervolting , undervolting does not make your CPU work harder , instead it makes your CPU unstable .
so no, undervolting does not makes your cpu overheat , only overvolting does.

This works for me!
before flash this file, my Phone only receives 90ma from any changer, and now reciving 1080ma. Thanks a lot!
Room: Ressurection Remix
Android version: 5.1.1, Xperia Z1 C6943
Sent from my Xperia Z1 using XDA Free mobile app

Hi
My phone in stock rom recieves 800ma
Does it normal??
I think it charges late,from 0 to 100 it takes about 3 hours 45 mins
Do i need flash this file??
Does my charger or battery have any problem?!
Thank you so much
Here is my screen shot
Sent from my C6903 using Tapatalk

agha_jo0n said:
Hi
My phone in stock rom recieves 800ma
Does it normal??
I think it charges late,from 0 to 100 it takes about 3 hours 45 mins
Do i need flash this file??
Does my charger or battery have any problem?!
Thank you so much
Here is my screen shot
View attachment 3434889
Sent from my C6903 using Tapatalk
Click to expand...
Click to collapse
I don't think that app is accurate tbh with the fix it says no higher than 300ma for me and my phone is charging pretty well I'm using 2100ma charger as well
Sent from my Xperia Z1 using Tapatalk

Sorry bro but i don't have this file in system /etc??? Wtf???

ninjasoft said:
Sorry bro but i don't have this file in system /etc??? Wtf???
Click to expand...
Click to collapse
You are probably on kitkat. If that's the case, you don't need thermanager. If you are on lollipop, look again, the files are not necessarily in alphabetical order...
And remember, this one is for custom roms: CM and/or AOSP based. I just looked at your signature, you have stock...

zhuoyang said:
I think you have a misconception about undervolting , undervolting does not make your CPU work harder , instead it makes your CPU unstable .
so no, undervolting does not makes your cpu overheat , only overvolting does.
Click to expand...
Click to collapse
You are wrong. When cpu is unstable, it can't do the job. When it can't do the job it jumps to higher frequencies and then plugs in additional cores, which causes overheating.

optimumpro said:
You are wrong. When cpu is unstable, it can't do the job. When it can't do the job it jumps to higher frequencies and then plugs in additional cores, which causes overheating.
Click to expand...
Click to collapse
Explain why that a phone reboots automatically when you underclock too much, if your concept is correct then it should just run at higher frequencies instead of just reboot.
And also what's the purpose of overvolting?
What's the purpose of per frequency voltage table?

zhuoyang said:
Explain why that a phone reboots automatically when you underclock too much, if your concept is correct then it should just run at higher frequencies instead of just reboot.
And also what's the purpose of overvolting?
What's the purpose of per frequency voltage table?
Click to expand...
Click to collapse
Easy: when you under volt over a certain level, the cpu just shuts down, because it does not have enough energy to jump to higher frequencies. So, in that case, instead of jumping and overheating, it just dies. However, when you under volt to a lesser degree and cpu has just enough (not to die), then you will have jumping and overheating.
There is no purpose in overvolting, other than returning to your prior levels or correcting wrong default values if you don't want to fix those in kernel source.
What's the purpose of per frequency voltage table? If you adjust, you want to do it on global level, because cpu has different frequencies. There is no other way...
However, if you put your phone on performance governor, you won't need per frequency voltage. By the way, in my experience, performance governor causes less noise and overheating, because it does not spend time and energy on jumping, and it could go to idle immediately.

optimumpro said:
Easy: when you under volt over a certain level, the cpu just shuts down, because it does not have enough energy to jump to higher frequencies. So, in that case, instead of jumping and overheating, it just dies. However, when you under volt to a lesser degree and cpu has just enough (not to die), then you will have jumping and overheating.
There is no purpose in overvolting, other than returning to your prior levels or correcting wrong default values if you don't want to fix those in kernel source.
What's the purpose of per frequency voltage table? If you adjust, you want to do it on global level, because cpu has different frequencies. There is no other way...
However, if you put your phone on performance governor, you won't need per frequency voltage. By the way, in my experience, performance governor causes less noise and overheating, because it does not spend time and energy on jumping, and it could go to idle immediately.
Click to expand...
Click to collapse
__________________________________________________________________________________________________________________________________________________________________________
http://bigfatreality.blogspot.com/2012/04/complete-android-undervolting-guide.html
Advantages of undervolting Android
Thank God for Android where we can easily modify and customize our lovely Android devices to the way we want. Being said this, undervolting is one of the biggest attraction for Android! Simply by undervolting an Android you will or might experience:
A longer battery life
More responsive smartphone
Less heat produced by the phone
Super-charge your Android to go further than what it can do (overclocking Android)
Click to expand...
Click to collapse
http://techglen.com/2014/01/16/what-is-undervolting-how-to-undervolt-your-android-phone/
Note: UnderVolting is widely used as a cooling solution and in my opinion more effective than any other cooling solution available for free. Results can will show decrease in the temperature of smartphone. I recommend undervolting to anyone with enough confidence and knowledge to do so. The benefits easily outweigh the risks. I dont see why one shouldn’t do this for a cool and better smartphone experience.Undervolting will NOT compromise performance at all.
Click to expand...
Click to collapse
http://forum.xda-developers.com/showthread.php?t=1956346
Undervolting is actually a very good thing for your smart phone when you do it correctly. Undervolting has one major positive effect on your CPU: it will extend the life of your processor by allowing it to do demanding things with lower heat generation
Click to expand...
Click to collapse

zhuoyang said:
__________________________________________________________________________________________________________________________________________________________________________
http://bigfatreality.blogspot.com/2012/04/complete-android-undervolting-guide.html
http://techglen.com/2014/01/16/what-is-undervolting-how-to-undervolt-your-android-phone/
http://forum.xda-developers.com/showthread.php?t=1956346
Click to expand...
Click to collapse
Maybe or maybe not. Blogs, especially by those who don't know what they are talking about (isn't it the purpose of blogs anyway? ) is not proof of anything.
However, you asked me to explain myself and I did. Why don't you put cpu info on the screen and experiment (so you can see live frequencies and temperature). You'll be surprised...
The point stands: when your cpu does not have enough juice, it spends more efforts to accomplish the task. If it manages not to shutdown, then it spends more cycles to do the job, thus causing overheating and excessive battery drain. And it does not matter how you call that state: unstable or whatever...
The reason I said it was counterintuitive is that people think if you provide less energy to cpu, there will be less noise and heat. The most energy is spent when cpu jumps back and force or plugs in/out cores and that's exactly what cpu does when you reduce voltage. If it is locked at the highest frequency, you eliminate jumping and extra plugging. When your phone is active, it accomplishes tasks faster. When it is done, it rushes to idle immediately and in idle state it virtually does not make any difference which frequency you are on, especially it does not matter when your phone is in deep sleep. Also, at higher frequencies cpu is often able to do the task using one core, again resulting in battery savings.

optimumpro said:
Maybe or maybe not. Blogs, especially by those who don't know what they are talking about (isn't it the purpose of blogs anyway? ) is not proof of anything.
However, you asked me to explain myself and I did. Why don't you put cpu info on the screen and experiment (so you can see live frequencies and temperature). You'll be surprised...
The point stands: when your cpu does not have enough juice, it spends more efforts to accomplish the task. If it manages not to shutdown, then it spends more cycles to do the job, thus causing overheating and excessive battery drain. And it does not matter how you call that state: unstable or whatever...
The reason I said it was counterintuitive is that people think if you provide less energy to cpu, there will be less noise and heat. The most energy is spent when cpu jumps back and force or plugs in/out cores and that's exactly what cpu does when you reduce voltage. If it is locked at the highest frequency, you eliminate jumping and extra plugging. When your phone is active, it accomplishes tasks faster. When it is done, it rushes to idle immediately and in idle state it virtually does not make any difference which frequency you are on, especially it does not matter when your phone is in deep sleep. Also, at higher frequencies cpu is often able to do the task using one core, again resulting in battery savings.
Click to expand...
Click to collapse
You're the one who don't know what you yourself is talking about.
Someone need to prove your concept right, I can't find anything about saying under clocking makes your cpu overheat.
Try find someone who agree with your concept or at least prove yourself right.
If you're able to prove yourself right I'll do you a favor and submit it to the news portal.

zhuoyang said:
You're the one who don't know what you yourself is talking about.
Someone need to prove your concept right, I can't find anything about saying under clocking makes your cpu overheat.
Try find someone who agree with your concept or at least prove yourself right.
If you're able to prove yourself right I'll do you a favor and submit it to the news portal.
Click to expand...
Click to collapse
"You're the one who don't know what you yourself is talking about"
No need to get personal. And I certainly don't need any "favors" from you.
If you need proof, just do a search anywhere including XDA where it would tell you that there is growing evidence that performance governor where your cpu is set at the highest frequency reduces "race to idle" and therefore causes less noise (jumping) and therefore better on performance and battery.
http://forum.xda-developers.com/nexus-4/development/guide-android-governors-explained-t2017715 That's just one example.
You won't find much more for several reasons: linux does not care about smart phones and only they know enough about kernels, but in the context of PCs they are not concerned about governors. They only have performance and ondemand (for laptops). Google does not deal with kernels (except for nexus) and they have no qualified engineers. Manufacturers do, but they have no incentives to invest more millions in research and development so that you can keep your device longer.
But as I have already said, do it yourself. Set cpu data on screen and experiment with performance vs other governors while watching the temperature. My experience has been that there is obviously no jumping and very little core plugging/unplugging, because 2.2-2.4 core can do a lot alone without extra efforts...
If you can't behave and maintain an intelligent conversation without resorting to personal attacks, then there is no point for me to talk to you. .

optimumpro said:
"You're the one who don't know what you yourself is talking about"
No need to get personal. And I certainly don't need any "favors" from you.
If you need proof, just do a search anywhere including XDA where it would tell you that there is growing evidence that performance governor where your cpu is set at the highest frequency reduces "race to idle" and therefore causes less noise (jumping) and therefore better on performance and battery.
http://forum.xda-developers.com/nexus-4/development/guide-android-governors-explained-t2017715 That's just one example.
You won't find much more for several reasons: linux does not care about smart phones and only they know enough about kernels, but in the context of PCs they are not concerned about governors. They only have performance and ondemand (for laptops). Google does not deal with kernels (except for nexus) and they have no qualified engineers. Manufacturers do, but they have no incentives to invest more millions in research and development so that you can keep your device longer.
But as I have already said, do it yourself. Set cpu data on screen and experiment with performance vs other governors while watching the temperature. My experience has been that there is obviously no jumping and very little core plugging/unplugging, because 2.2-2.4 core can do a lot alone without extra efforts...
If you can't behave and maintain an intelligent conversation without resorting to personal attacks, then there is no point for me to talk to you. .
Click to expand...
Click to collapse
I am not attacking you tbh.
Governors doesn't do anything besides controlling the frequencies of cpu. CPU uses correct amount of voltage according to the voltage table.
If what you're saying is correct, doesn't overvoltage makes your phone cooler? It has more energy to process things and doesn't need to jump to higher frequency right?
Kernel developers implement features for reasons. If your theory is correct, why does voltage control exist? Does kernel developers write a thousand lines of code just to do nothing?

zhuoyang said:
I am not attacking you tbh.
Governors doesn't do anything besides controlling the frequencies of cpu. CPU uses correct amount of voltage according to the voltage table.
If what you're saying is correct, doesn't overvoltage makes your phone cooler? It has more energy to process things and doesn't need to jump to higher frequency right?
Kernel developers implement features for reasons. If your theory is correct, why does voltage control exist? Does kernel developers write a thousand lines of code just to do nothing?
Click to expand...
Click to collapse
"I am not attacking you" Yes you were, I said that some bloggers don't know what they are talking about and you replied that I didn't know what I was talking about. Anyway, I accept your veiled apology.
Neither overvoltage nor undervoltage makes the phone cooler. There is an optimal regime for each cpu and if you go outside of it (in either direction), you are inviting trouble. You are not going to destroy your cpu by either under or over voltage, as there is protection in kernel. The phone runs cooler when cpu works less and the optimal regime causes the cpu work less. If you are reducing juice (voltage), you make cpu work longer, which results in overheating.
I gave you an example of performance governor to make a point that this is counterintuitive: while cpu is set at the higher frequencies, it actually performs the tasks and rushes to idle faster, which results in cooler condition. When the same cpu is set lower (and especially if it is under volted), it works longer, jumps to different frequencies, plugs/unplugs cores, which all contributes to overheating....

What is normal values for this phone ? I have diferent chargers, Samnsung - around 600mA, one HTC - around 400mA and another one with 200mA according to that app. Wich one should i use ? So far i used samsung one because it charges fast...2 hours or less, but the battery dies also fast ....so it may be because of the charger ?

Related

To undervolt or not undervolt..

I have recently been giving my Nexus One a go with various different custom kernels. An issue that has caught my interest is the fact that people disagree on whether or not undervolting the kernel actually improves battery life...
I decided to do some research and write an article about it.. Please give it a read and feel free to comment it..
Read here
EDIT: I cant say I agree with the move of this topic, considering its indirectly discussing custom kernel development, but oh well..
Good read, makes sense, thanks.
Would be nice to see some discussion on it here.
Thanks it was good read.
my 2cts
I'd like to detail the "basic physics" part a bit. I work as an IC designer and have some experience with the power consumption of digital ICs.
You're right about the P=U*I, but I in a microprocessor is not constant if you change U. Let me explain: a digital circuit is basically made of thousands of transistor gates switching from logic 0 to logic 1 many times per second. What causes the consumption in the IC is that moving from 0 to 1 or from 1 to 0 is lossy, because the transistor gates are capacitive.
The formula that applies, for a logic gate you switch like 0-1-0-1... at a given frequency, is:
P=F*C*V², with F the frequency, and C the capacitance of this gate.
Now if you extend this to a chip with lots of transistors switching, you'll still have P=F*C*V² with C being the total capacitance that is switched (you don't need to know the real value).
If you reduce V so that it's 90% of the initial value, P gets reduced to 0.81%
You can extend this formula to I, being I=P/U=F*C*V. Meaning that when U gets lowered by 10%, I also gets lowered by 10%
This is, however, with many assumptions. It stands for a digital IC. If the processor has lots of analog circuits inside, those will usually consume a constant current, then a power that is directly proportional to the supply voltage.
Also, in new submicronic technologies, leakage current can become significant and it will add some error to the formula I gave.
I hope that helps, if my explanation is not clear please feel free to ask.
So Bricolo_fr, what your saying is yes reducing voltage saves some battery, but reduces overall calculating power.
I gave up on UV kernels because they ruined the radio reception.
It may not have been the UV aspect that caused it - possibly another decision made by the kernel builder - but I know that at home I get 2-3 bars of HSDPA in the house when running a basic cyanogen, but with a UV kernel I get almost no signal (in fact it roams to a backup provider, which is a pain in the neck as roaming on Android is slightly broken.. it won't roam back when it detects your main provider is available again).
So whether it makes sense or not there's an effect.. it's just the cause that needs investigating.
My take on it may be that undervolting does save battery life, but too much undervolting doesn't give sufficient power and can either slow-down, harm, or have an increase need for power and therefore, reduce battery life?
Is that correct?
tl;dr: Undervolting does increase battery life
Undervolt too much and you're using more energy to get enough power?
I know undervolting on my laptop with NHC increased battery life without a noticable reduction in speed.
well, undervolting WITHOUT underclocking will not reduce your computation power, so it shouldn't reduce the radio reception (and as mentionned, the radio chip is powered by another INDEPENDENT voltage)
what can happen, but it is only a guess and one within many possibilities, is that the undervoltage you applied makes the processor unstable. that's totally possible if you go too low in voltage.
if you're really too low, nothing will function, or your phone will crash often. if you're on the edge, maybe the processor is unstable, but I still don't see a relation with radio here

SetCPU...Beneficial for Battery Life?

I've seen a few different posts in some of the kernel threads debating whether SetCPU is helping or hurting battery life. SO, I'm just kind of curious to see what results are on a larger scale? Based on your own experiences, do you have SetCPU installed and if so, does it help or hurt battery life generally? Also, if you do have it installed, do you use profiles? What are the most beneficial settings to use?
1. Not in right section
2. SetCPU not intended for battery life
3. It only adjusts CPU clockspeed
4. This thread is mostly meaningless
5. It's been discussed ad nauseam.
charnsingh_online said:
1. Not in right section
2. SetCPU not intended for battery life
3. It only adjusts CPU clockspeed
4. This thread is mostly meaningless
Click to expand...
Click to collapse
SetCPU is not intended for battery life? Go to the Market and look at the description. If I posted this in the wrong section I apoligize. But, I think you are mistaken with your comment about SetCPU not being intended to increase battery life or increase performance...
THATTON said:
SetCPU is not intended for battery life? Go to the Market and look at the description. If I posted this in the wrong section I apoligize. But, I think you are mistaken with your comment about SetCPU not being intended to increase battery life or increase performance...
Click to expand...
Click to collapse
SetCPU only sets clock speeds and governors already in the kernel. If you just install SetCPU and adjust no settings your battery life will not change. Thus, "does SetCPU help battery life?" is utterly and completely meaningless.
Discussion of different governors and clock speeds has occurred (and is still occurring) ad nauseum and is really more suited for the General forum.
Thread moved as it does not pertain to N1 development.
I see very little gains from setcpu but I use it because I purchased it from the market and why not use it if you bought it right?
This method does not apply to drug addiction LOL
-Charlie
bri3d said:
SetCPU only sets clock speeds and governors already in the kernel. If you just install SetCPU and adjust no settings your battery life will not change. Thus, "does SetCPU help battery life?" is utterly and completely meaningless.
Discussion of different governors and clock speeds has occurred (and is still occurring) ad nauseum and is really more suited for the General forum.
Click to expand...
Click to collapse
lol Why would you download an application, not use it, and expect results?
If you throttle your CPU down you WILL get better battery life. My phone is set to never go over 600mhz and I get bettter life with it than if I turn off setcpu altogether.
charnsingh_online said:
1. Not in right section
2. SetCPU not intended for battery life
3. It only adjusts CPU clockspeed
4. This thread is mostly meaningless
Click to expand...
Click to collapse
You have a lot of knowledge, this is obvious but you're unnecessarily harsh (mean).
It's boring but's it's a legitimate question because people still make inaccurate conclusions about CPU and battery life. Those of us with some knowledge can really help those that are trying to understand.
#2 above is correct. But the question remains, does a forced lower clock speed ceiling have an effect on battery life? It could do, of course it could, but without a baseline and a control environment it's impossible to prove either way. I suspect the OP is simply looking for subjective opinions.
And on this basis I offer:
The CPU only has a material effect on battery drain when it's being utilised.
When the Nexus CPU is not required to work it idles using the lowest power possible
The radio (network) interface is the second most demanding element of on your battery over time (next to the display). Although the CPU peak demand is higher than the radio.
SetCPU does not impact radio battery use.
SetCPU can not have a positive effect on battery usage if it's using more power to run it's clock cycles.
SetCPU can force the processor to use less power (wind down speed).
Slowing the processor means some tasks will take longer to perform.
If those tasks require a high-drain elements (display, radio, WiFi or BT for example) then it's counter-productive (battery wise) to slow them down.
However, because CPU power consumption does not have a liner relationship to clock speed, then some tasks that don't use high-drain elements will consume less power to complete.
So, whilst it's unlikely that your battery life will benefit from the use of SetCPU alone there is a chance that it will.
SetCPU is a fantastic app designed for overclocking, the profiles are niche facilities that may offer battery benefit to a narrow range of users.
Hey djmcnz thanks for the indept look at this app but more importantly thanks for showing respect to those of us who are just learning. We all have to learn information at some point and there are people that forget that at one point some one had to tell them.
Thank you for the clarification on that! Djmcnz-that was exactly what I was looking for in terms of an answer. I really appreciate you taking the time out to explain everything for me and anyone else that may have been curious.
charnsingh_online said:
1. Not in right section
2. SetCPU not intended for battery life
3. It only adjusts CPU clockspeed
4. This thread is mostly meaningless
Click to expand...
Click to collapse
Don't know why you're so pissed off by a thread...
1. Not a very big issue. We have mods here to take care of this.
2. I don't know if SetCPU affects battery life or not but similar thing on a PSP device does increase the battery life. I have tried it on my PSP and setting the clock speed to the lowest acceptable level (depending upon what you're doing) does help maximizing the battery life.
3. You're absolutely right here.
4. Don't know what to say man.. but being a little humble doesn't hurt....
I never meant to be rude. I always get pissed off when people post in wrong sections Seriously. If people post in right section it just frees up moderator time. And about CPU nexus CPU has same voltage for many frequencies like 998,960 have same voltage. Going so down doesn't mostly benefit. So setcpu is only good for overclocking IMO. Display uses most of the power along with radio n CPU is one of those in middle of usage maybe 3rd or 4th. So underclocking will give a big battery boost is just a placebo. Atmost 10 minutes more is what underclocking can provide. N its not worth sacrificing the performance. Go for something underpowered if u want to underclock IMO. So setcpu serves more purpose of power than battery
I use it for the cool widget and standby/idle profile. B-)
you know what?youre allright.i follow your threads and you explain things well for someone like me learning all this ****.i got no time for keyboard commandos.thanks for the explanation.
djmcnz said:
You have a lot of knowledge, this is obvious but you're unnecessarily harsh (mean).
It's boring but's it's a legitimate question because people still make inaccurate conclusions about CPU and battery life. Those of us with some knowledge can really help those that are trying to understand.
#2 above is correct. But the question remains, does a forced lower clock speed ceiling have an effect on battery life? It could do, of course it could, but without a baseline and a control environment it's impossible to prove either way. I suspect the OP is simply looking for subjective opinions.
And on this basis I offer:
The CPU only has a material effect on battery drain when it's being utilised.
When the Nexus CPU is not required to work it idles using the lowest power possible
The radio (network) interface is the second most demanding element of on your battery over time (next to the display). Although the CPU peak demand is higher than the radio.
SetCPU does not impact radio battery use.
SetCPU can not have a positive effect on battery usage if it's using more power to run it's clock cycles.
SetCPU can force the processor to use less power (wind down speed).
Slowing the processor means some tasks will take longer to perform.
If those tasks require a high-drain elements (display, radio, WiFi or BT for example) then it's counter-productive (battery wise) to slow them down.
However, because CPU power consumption does not have a liner relationship to clock speed, then some tasks that don't use high-drain elements will consume less power to complete.
So, whilst it's unlikely that your battery life will benefit from the use of SetCPU alone there is a chance that it will.
SetCPU is a fantastic app designed for overclocking, the profiles are niche facilities that may offer battery benefit to a narrow range of users.
Click to expand...
Click to collapse
djmcnz said:
You have a lot of knowledge, this is obvious but you're unnecessarily harsh (mean).
It's boring but's it's a legitimate question because people still make inaccurate conclusions about CPU and battery life. Those of us with some knowledge can really help those that are trying to understand.
#2 above is correct. But the question remains, does a forced lower clock speed ceiling have an effect on battery life? It could do, of course it could, but without a baseline and a control environment it's impossible to prove either way. I suspect the OP is simply looking for subjective opinions.
And on this basis I offer:
The CPU only has a material effect on battery drain when it's being utilised.
When the Nexus CPU is not required to work it idles using the lowest power possible
The radio (network) interface is the second most demanding element of on your battery over time (next to the display). Although the CPU peak demand is higher than the radio.
SetCPU does not impact radio battery use.
SetCPU can not have a positive effect on battery usage if it's using more power to run it's clock cycles.
SetCPU can force the processor to use less power (wind down speed).
Slowing the processor means some tasks will take longer to perform.
If those tasks require a high-drain elements (display, radio, WiFi or BT for example) then it's counter-productive (battery wise) to slow them down.
However, because CPU power consumption does not have a liner relationship to clock speed, then some tasks that don't use high-drain elements will consume less power to complete.
So, whilst it's unlikely that your battery life will benefit from the use of SetCPU alone there is a chance that it will.
SetCPU is a fantastic app designed for overclocking, the profiles are niche facilities that may offer battery benefit to a narrow range of users.
Click to expand...
Click to collapse
HUH English Please
Kidding
mikey1022 said:
huh english please :d
kidding
Click to expand...
Click to collapse
34567890
Personaly done many tests and the result was:
Test config: WiFi tethering all the way, screen 100% Playing video all the time 2G only
4:10 @ 245Mhz hard
3:30 @ 998Mhz hard
No use actually - using N1 on 245Mhz is impossible - too sluggish.
SetCpu is ussefull:
1) If u have OC kernel to set OC mode for games like Asphalt
2)For letting android vary frequence ondemand instead of 998 all the time
3)For downclocking while in sleep mode (why use full power when u dont use it?)
4)For using Failsafe profile, to prevent battery and hardware damage.
That's all.
No use trying saving battery setting profiles like 100% - 998, 50% - 576, 20% - 499. This is useless.
On UV kernels the same thing +\-30 minutes battery life. And UV kernels themselfs dont give segnificant battery life increase, only lags and unstability ti system.
Dont believe me try yourself - Create yourself some actions fo testing and repeat them 2 time (Min cpu and Max cpu) on any kernel. Results will be very close.
SeriousX said:
3)For downclocking while in sleep mode (why use full power when u dont use it?)
Click to expand...
Click to collapse
The CPU steps down to it's minimum speed by itself. It never uses more juice than it needs to.
As far as i know, it is always at maximum, but maybe im wrong and you are right - then theres even less sence in this app.

[Q] Undervolting vs. Battery life

Hi, I spend last few days optimizing voltage table on my Desire and it left me wondering.
I bumped into several situations where 2 or 3 frequencies would be stable on the same voltage level. My question is, theoretically, if 300MHz would use the same voltage as 800MHz, would the power consumption increase proportionally or would it remain fairly similar?
Seeing that 300MHz would need more burn time at the same voltage to complete a task that 800 MHz would do in fraction of that time and then idle, this leaves me puzzled. Is it better to always use highest frequency of the group with same voltage for better efficiency? Or does the slower frequency actually consume less power even though it has to work longer and uses the same voltage?
Please enlighten me or discuss
I would also like to be enlightened on this.
AFAIK your assumption is on the right track, get the job done as quick as possible & get back to idling...
Slightly off topic, but somewhat relevant
byrong did a great write up on the effects of cpu speed vs screen brightness power consumption here that may be be of interest...
Interesting but still doesn't answer one question:
If my 245, 368 and 768MHz would be stable at the same voltage, does it matter if I set 768MHz as my minimum/idle frequency instead of 245MHz? Would is consume more power in the long run say on conservative governor?
And what about the screen-off profile? Consider a scenario when I'm playing an MP3 while screen is off and the player will still take a lot of CPU power to pre-buffer the song, apply equalizer, post-processing etc. Now would that nearly constant burn theoretically consume more power on the 245MHz or 768MHz? It still has to do the same work and 245MHz should just have higher constant load, right?
And how about complete idle. Does it really matter if I idle on 245 or 768 MHz if the voltage and actual work done is identical?
This is I'm sure something everybody is asking but nobody knows the real answer. Unless I'm speaking utter rubbish it's perhaps time to run some tests.
Even if the voltages are the same for different frequencies, I'm sure higher frequencies draw higher amounts of current (as shown in byrong's research, although his voltage tables were not stated). If you change your min cpu freq from 245 to 768 MHz I'd almost guarantee more power consumption, even when idle. I could be wrong though. If you're so curious, why don't you try and post back?
I might be wrong but my $0.02
From what I can remember in class, Power = voltage x current
To do the same amount of work, supplying lesser voltage would mean more current is consumed. That said, if less work is being done at the same voltage, less current would be consumed.
So running the CPU at a slower clock cycle means less work is being done, so less current consumption, compared to running it at full 768MHz.
I think ... ;p
Well I think I will make some empiric testing as soon as I find a way to log current current (yea funny ) to a file.
Even if your $0.02 are right, you're still talking about drawing less current over longer time or more current in a short burst. Of course there are apps like games that will probably take as much horsepower as they can get for redrawing the screen - in that case lower constant frequency is better, because higher frequency would actually have to do more work - drawing more FPS just because it can. For minimum frequency the situation is completely different as the apps only require bursts of workload.
nik3r said:
Well I think I will make some empiric testing as soon as I find a way to log current current (yea funny ) to a file.
Click to expand...
Click to collapse
I thought you read waydownsouth's link?
In the methodology section byrong states he used CurrentWidget to log current over time. You can also use Battery Monitor Widget.
By the way, his methodology is pretty excellent as it minimizes as many variables as possible, and he wrote his own script to keep the cpu working at a controlled rate. I think at a minimum, you should put the phone in airplane mode while conducting the tests.

[GUIDE] Tweaking Interacting Gov

Hey guys, Kyuubi10 back once again with another Guide.
I thought it might be useful to pop in a couple results of my trial and error for the HTC One M8.
Note: This is not scientifically, calculated accurate, but it's close enough, based on estimates.
After following these guides:
http://forum.xda-developers.com/showthread.php?t=2769899
https://vjnaik.wordpress.com/2015/06/25/kernel-tweak-interactive-governor-paramaters-rooted-phone/
I decided to make a summary guide of the above but with specific HTC One M8 values.
Since I agree with the idea of "race to idle" embodied in the Wheatley governor, I tried emulating that on the Interactive governor while also keeping it as efficient as possible.
Here are the values (all others not mentioned, leave default):
Code:
[B]above_hispeed_delay [/B]- 80000 2265600:10000
[B]go_hispeed_load[/B] - 95
[B]hispeed_freq[/B] - 1728000
[B]io_is_busy[/B] - 1
[B]min_sample_time[/B] - 10000
[B]target_loads[/B] - 45 729000:80 883200:50 1267000:85 1497600:50 1728000:90 1958400:50
[B]timer_rate[/B] - 10000
[B]timer_slack[/B] - 5000
"above_hispeed_delay" makes sure that longer time is spent on the frequency step 1.72Ghz, before quickly raising higher into max freq.
1.72Ghz is the most energy efficient frequency with a good performance, e.g. it will not cause lag during casual usage, while it uses minimal voltage.
If the load is too high for this frequency to handle, I set the time short once it's gone over this freq step so that it will not waste time before reaching max freq. Thus dealing with the issue asap.
Another important parameter is "target_load", with this I have defined that at each efficient freq step the load needed to overcome it would be higher than normal. But it would up-scale quickly when using non-efficient frequencies.
The other parameters I have set so that the frequency is lowered as soon as CPU load is finished, so that it will rush back to idle as quickly as possible.
The interesting thing about this set-up is that for general, non heavy usage, it basecally functions as if I have underclocked to 1.72Ghz, but when the CPU is truly pushed it reaches up to 2.5Ghz which is my Overclocked max freq value.
Thus both saving battery and providing high performance.
I have felt no lag, and it's been quite a smooth experience while I used this
Combined with using GPU rendering (found in developer settings), and Seeder, the over all usage is pretty good.
Battery usage has been very efficient and I have managed to squeeze out an extra hour or two using this.
I highly recommend it!
Hope I helped you guys... don't forget to press the thanks button if you also feel that I did!:good::good:
I noticed I have some governor settings left at 0 or blank. I did some quick googling, found some other tweaks for the M8 and the interactive governor. So I played around a bit, and I think the following would be useful to add to the above tweaks.
-----------------------
sampling_down_factor: 60000
sync_freq: 1036800
up_threshold_any_cpu_load: 65
up_threshold_any_cpu_freq: 1190400
boost: 0
boostpulse_duration: 80000
--------------------
Also of note there is not a entry for " io_is_busy " under the Interactive governor under ElementalX Sense kernel v6.03. I believe it's possible to modify the governor to add the function, if it's desired.
Hope this helps others.
nice one i read the links that you posted and follow the guides there also to tweak the interactive governor on the first link that you posted is really interesting he has updated that post also, i followed his guide inspired by your guide and i have been getting good results on my phone with battery and performance i mean almost no battery drain at all while my phone is idle. thanks for the help mate!
Plugged the settings into Yankactive on DU. Quick, freqs stay low when nothings going on, seems legit. I set my timer_rate higher tho, 10000 feels a little low, makes me think that the CPU will spend too much time polling loads.
SaskFellow said:
I noticed I have some governor settings left at 0 or blank. I did some quick googling, found some other tweaks for the M8 and the interactive governor. So I played around a bit, and I think the following would be useful to add to the above tweaks.
-----------------------
sampling_down_factor: 60000
sync_freq: 1036800
up_threshold_any_cpu_load: 65
up_threshold_any_cpu_freq: 1190400
boost: 0
boostpulse_duration: 80000
--------------------
Also of note there is not a entry for " io_is_busy " under the Interactive governor under ElementalX Sense kernel v6.03. I believe it's possible to modify the governor to add the function, if it's desired.
Hope this helps others.
Click to expand...
Click to collapse
Some of those actually make no difference. Since they are overruled by other perameters. E.g. up_threshold aren't used in interactive, since they follow target_load instead.
Sampling_down_factor on the other hand is overrulled by the timer features of interactive.
When you use ondemand, or conservative, sampling_down_factor is a fun parameter to play with, but not interactive.
While Sync_Freq I don't like using because it raises minimum frequency to its value...although temporarily, the timer features can already deal with CPU loads efficiently.
lil_kujo said:
nice one i read the links that you posted and follow the guides there also to tweak the interactive governor on the first link that you posted is really interesting he has updated that post also, i followed his guide inspired by your guide and i have been getting good results on my phone with battery and performance i mean almost no battery drain at all while my phone is idle. thanks for the help mate!
Click to expand...
Click to collapse
Great The links are important!! They are my sources, and often contain much more detail than what I use in my guides. I attempt creating a well ordered summary, but my sources are better if you don't mind reading loads.
I'm glad I could help
munkyvirus said:
Plugged the settings into Yankactive on DU. Quick, freqs stay low when nothings going on, seems legit. I set my timer_rate higher tho, 10000 feels a little low, makes me think that the CPU will spend too much time polling loads.
Click to expand...
Click to collapse
That's the idea. And never heard of Yankactive...but I'm gonna assume it's good lol.
And about time_rate, you are right, but you are also wrong.
There isn't a true right answer unless someone performs a scientific experiment in order to fully test which one is better.
But I'll explain why I put my one short... I want the frequencies returning to IDLE asap. While yes, you are right it's polling often, it also returns to idle much faster, rather than staying at higher frequency uselessly wasting battery.
I'll try to run some tests checking CPU load, if CPU load considerable lowers I'll come back and report.
Yankactive is Interactive with some under the hood tweaks, I believe, same tunables. I also looked at some documentation on Interactive and I think the target_loads have to be in ascending order based on load when paired with clock speeds, I'm gonna mess with them a bit and see what I get. Link
munkyvirus said:
Yankactive is Interactive with some under the hood tweaks, I believe, same tunables. I also looked at some documentation on Interactive and I think the target_loads have to be in ascending order based on load when paired with clock speeds, I'm gonna mess with them a bit and see what I get. Link
Click to expand...
Click to collapse
And no, target_loads has to be in ascending order based on FREQUENCY. You are applying load percentages to frequency ranges, therefore it is imperative that its the frequency defining the order.
e.g. 50 4:80 10:20 12: 50 means:
50% load before going to the next frequency step, until you reach frequency 4, then use 80% instead until frequency 10, then use 20% instead until 12, then use 50% until max frequency.
Feel free to play with them as much as you want, just make sure to keep the idea of using efficient frequency steps in mind.
Kyuubi10 said:
And no, target_loads has to be in ascending order based on FREQUENCY. You are applying load percentages to frequency ranges, therefore it is imperative that its the frequency defining the order.
e.g. 50 4:80 10:20 12: 50 means:
50% load before going to the next frequency step, until you reach frequency 4, then use 80% instead until frequency 10, then use 20% instead until 12, then use 50% until max frequency.
Feel free to play with them as much as you want, just make sure to keep the idea of using efficient frequency steps in mind.
Click to expand...
Click to collapse
Thank you for the knowledge dump, been scraping the barrel for weeks trying to figure out tunables!
munkyvirus said:
Thank you for the knowledge dump, been scraping the barrel for weeks trying to figure out tunables!
Click to expand...
Click to collapse
Hehe it's a pleasure.
It's a way I find to give back to the community, since I learn so much through it. I can try help make life easier for those who follow the same path I did.
Hello kyuubi10 thanks for your help, would it be ok to change mp decision to battery saver mode ? Whats your take on that?
Wow, this is awesome! I had the performance gov on, which just destroyed my battery. Now, I have a question for you!
What is your take on "Multicore Power Savings" ? I'm using a flarport kernel which has it set to aggressive by default. Should this be changed to anything else while using your gov settings? Thanks for any assistance!
lil_kujo said:
Hello kyuubi10 thanks for your help, would it be ok to change mp decision to battery saver mode ? Whats your take on that?
Click to expand...
Click to collapse
I have never heard of mpdecision having a battery saver mode XD
Would you please expand on that? Also tell me which tweaking app you are using?
Kyuubi10 said:
I have never heard of mpdecision having a battery saver mode XD
Would you please expand on that? Also tell me which tweaking app you are using?
Click to expand...
Click to collapse
It's in the ex app mate, it uses a less aggressive version of mpdecision to saver on battery power but I can't say that I noticed much improvement TBH.
Sent from my HTC One_M8 using Tapatalk
Anonaru said:
Wow, this is awesome! I had the performance gov on, which just destroyed my battery. Now, I have a question for you!
What is your take on "Multicore Power Savings" ? I'm using a flarport kernel which has it set to aggressive by default. Should this be changed to anything else while using your gov settings? Thanks for any assistance!
Click to expand...
Click to collapse
You had performance on?? You do realise that the perf gov basically keeps your CPU cores running on max frequency all the time right?
No wonder your battery was dying XD
Anyhoo....good thing you found my guide
Now, about multicore power savings, as usually with most things you will be compromising something to gain something else...always keep that in mind.
With MPS you'll be giving up some multitasking, in order to gain some battery savings.
Why (you may ask)?
Well, think about a to-do list, and for each list you have one person completing the tasks within that list. Let's say you have four lists and 4 people completing those tasks.
What MPS does is it takes as many tasks as possible and places them within a single list, for one person to do. At the end of the day that one person will have done a lot of work, while the other 3 will have done very little work. The drawback? The work was completed much slower, because only one person was doing it.
Why can MPS be good? It is the way it chooses which CPU to use to add the tasks to, it chooses CPUs which are already turned on, rather than turning a new one on.
The frequency voltages on each core range from the lowest of 775mV, to the highest of 1075mV. That's a 300mV increase in battery consumption between lowest frequency and highest. (Mind you, 1075 for me is an overclocked value, if you are not OC then it will be even less)
When CPU cores have nothing to do they get turned off....they don't idle at 775mV....they are literally off. Therefore around 0mV usage XD
If you get tasks which would have run on 2 CPUs at minimum frequency, using only 775mV each, and put them to run on only 1 CPU at MAX frequency at 1075mV, you still have about 400mV battery savings. Now lets say its something which would have used 4 CPUs, but you end up using only two.... then the battery savings double to 800mV.
Final answer...it depends on your tastes, what do you prefer most? Multitasking or battery saving.
Personally I keep it enabled, but not aggressive.
But if you really don't care about multitasking, you may as well leave it as aggressive.
lil_kujo said:
Hello kyuubi10 thanks for your help, would it be ok to change mp decision to battery saver mode ? Whats your take on that?
Click to expand...
Click to collapse
smeejaytee said:
It's in the ex app mate, it uses a less aggressive version of mpdecision to saver on battery power but I can't say that I noticed much improvement TBH.
Sent from my HTC One_M8 using Tapatalk
Click to expand...
Click to collapse
Well, I use adiutor, so I don't have that option.
I am happy with my phone how it is (if it wasn't for the damned plug issues XD)
But @lil_kujo, as @smeejaytee said....he hasn't noticed much improvement.
So I'd trust his advice
Kyuubi10 said:
You had performance on?? You do realise that the perf gov basically keeps your CPU cores running on max frequency all the time right?
No wonder your battery was dying XD
Anyhoo....good thing you found my guide
Now, about multicore power savings, as usually with most things you will be compromising something to gain something else...always keep that in mind.
With MPS you'll be giving up some multitasking, in order to gain some battery savings.
Why (you may ask)?
Well, think about a to-do list, and for each list you have one person completing the tasks within that list. Let's say you have four lists and 4 people completing those tasks.
What MPS does is it takes as many tasks as possible and places them within a single list, for one person to do. At the end of the day that one person will have done a lot of work, while the other 3 will have done very little work. The drawback? The work was completed much slower, because only one person was doing it.
Why can MPS be good? It is the way it chooses which CPU to use to add the tasks to, it chooses CPUs which are already turned on, rather than turning a new one on.
The frequency voltages on each core range from the lowest of 775mV, to the highest of 1075mV. That's a 300mV increase in battery consumption between lowest frequency and highest. (Mind you, 1075 for me is an overclocked value, if you are not OC then it will be even less)
When CPU cores have nothing to do they get turned off....they don't idle at 775mV....they are literally off. Therefore around 0mV usage XD
If you get tasks which would have run on 2 CPUs at minimum frequency, using only 775mV each, and put them to run on only 1 CPU at MAX frequency at 1075mV, you still have about 400mV battery savings. Now lets say its something which would have used 4 CPUs, but you end up using only two.... then the battery savings double to 800mV.
Final answer...it depends on your tastes, what do you prefer most? Multitasking or battery saving.
Personally I keep it enabled, but not aggressive.
But if you really don't care about multitasking, you may as well leave it as aggressive.
Click to expand...
Click to collapse
Hah, thanks for the guide-- I am pretty well versed in task / resource allocation on multi-threaded systems, though
Main reason I was asking was because I haven't a clue what some of the values are on this interactive gov. Just wanted to make sure they didn't clash! I'll chance it to "Enabled" rather than "Aggressive," because a compromise between the two sounds the best
As for Performance gov-- default setting on this flarport kernel, didn't bother to check it until I noticed that any time a core was on, it was racing at 2.5ghz, even with nothing going on. Battery pretty much committed suicide
Anonaru said:
Hah, thanks for the guide-- I am pretty well versed in task / resource allocation on multi-threaded systems, though
Main reason I was asking was because I haven't a clue what some of the values are on this interactive gov. Just wanted to make sure they didn't clash! I'll chance it to "Enabled" rather than "Aggressive," because a compromise between the two sounds the best
As for Performance gov-- default setting on this flarport kernel, didn't bother to check it until I noticed that any time a core was on, it was racing at 2.5ghz, even with nothing going on. Battery pretty much committed suicide
Click to expand...
Click to collapse
LOL I suggest you change kernel asap! If the dev uses uses Performcance gov as his default he doesn't know what he is doing XD
And no, as far as I know governor tunables won't ever clash with MPS.
Thanks!
rjavc said:
Thanks!
Click to expand...
Click to collapse
You're welcome! Pleasure to help.
But I'd appreciate if you press the thanks button on the relevant posts which helped you. That's the XDA way :good::good:
Kyuubi10 said:
You're welcome! Pleasure to help.
But I'd appreciate if you press the thanks button on the relevant posts which helped you. That's the XDA way :good::good:
Click to expand...
Click to collapse
Hi mate, I wondered if I could ask your advice, I want to set interactive up on my maw Android TV box it's quad 1.5gb and I want maximum performance as its constantly plugged in, there is no battery so that's not an issue,
Sorry if you think this OT but I thought I'd ask you as you know the governor well, thank you in advance mate.
Sent from my HTC One_M8 using Tapatalk

Is it possible to overclock?

Hi there,
Is it possible to overclock the cpu and gpu?
If so how? Or which rom/kernel?
Running G model 4gb ram
Even if you can, it will chew the battery and heat up.
RobboW said:
Even if you can, it will chew the battery and heat up.
Click to expand...
Click to collapse
Not a problem as I would only be using it sometimes not permanently
Kendal21 said:
Not a problem as I would only be using it sometimes not permanently
Click to expand...
Click to collapse
in theory it is, we had a a kernel that OC'd the CPU way back then, but the SoCs on the Axons are probably low-binned - shutdowns and stuff like that are commonplace
But still, do you know what OC does to a phone? New phones are thermally constrained devices, starting from the snapdragon 800 series onwards. remember the sd805/810 disaster? Well...
If you run your phone at 100% load, it will run at max speed (1.56/2.15) for a very short time (say, 30 seconds), until the SoC reaches a specific temperature. After that it'll go down to a more manageable frequency, eventually going even further down or staying at 1.8 ghz, depending on your specific situation (the pink thermal blob might be bad).
That's why VR mode sets your cores at around 1.8 ghz, to keep them from going hot and lowering frequency even more. Sustained performance is better than burst performance on gaming.
Day to day usage is another matter, because more frequency won't mean thermal throttling when opening apps or unlocking the phone, beside the obvious battery usage
TL/DR: Be prepared to make your own kernel if you want to OC. It might not work

Categories

Resources