Something I've noticed regarding CPU - Nexus 4 General

It seems the CPU scaling is not set properly with the kernel that cause the phone runs warm and decrease battery life. Checked with CPU Spy and I noticed it often idles around 1134~1026MHz, instead of all the way down to 384MHz.
What you need:
1. Download any CPU control apps, like AnTuTu CPU Master, No-frills CPU Control, CPU Tuner...etc...
2. ROOT!
3. Set the minimum frequency to 384MHz. Leave all other parameters unchanged.
4. Check Apply on boot.
Now check with CPU Spy again you'll see your CPU idles at 384MHz and your phone is running cooler.

Yeah seems the kernel needs to be tweaked a little. It will most likely be patched by .1
Sent from my Nexus 7 using Tapatalk 2

the phone goes in standby, but the cpu stands over 1000Mhz instead of scaling at the bottom?

Mine already goes down to 384mhz without intervention of any CPU apps. At this very moment my CPU is at 1% and clocked at 384mhz.
I don't think doing this will have any effect on battery life or heat.

OverTheBelow said:
Mine already goes down to 384mhz without intervention of any CPU apps. At this very moment my CPU is at 1% and clocked at 384mhz.
I don't think doing this will have any effect on battery life or heat.
Click to expand...
Click to collapse
Mine aswell. Clocks down to 384 Mhz when doing nothing.

Thermal throttling is NOT supposed to throttle to minimum, its not a rollercoaster. It would lag terribly intermittently. Perhaps the threshold needs to be brought up, but the throttling clocks seems about right. Something else that could be done and help a lot is adjust the voltages.
Edit : sorry I misread your post.

OverTheBelow said:
Mine already goes down to 384mhz without intervention of any CPU apps. At this very moment my CPU is at 1% and clocked at 384mhz.
I don't think doing this will have any effect on battery life or heat.
Click to expand...
Click to collapse
Mine does go down to 384MHz. But my point is the CPU does not go down to 384MHz when it should be.
From CPU Spy it seems like when idling the CPU half time stays on 1134MHz and half time goes down to 384MHz.
After the tweaking the CPU goes down to 384MHz all the time, and does NOT affect smoothness or fluency of the system.

richteralan said:
Mine does go down to 384MHz. But my point is the CPU does not go down to 384MHz when it should be.
From CPU Spy it seems like when idling the CPU half time stays on 1134MHz and half time goes down to 384MHz.
After the tweaking the CPU goes down to 384MHz all the time, and does NOT affect smoothness or fluency of the system.
Click to expand...
Click to collapse
Mine oscillates between 1 and 1.5 Ghz while in use, and goes down to 384 when lightly used or when WifFi is on (Wifi prevents my phone from entering Deep Sleep). The rest of the time, it's in Deep Sleep.

384 is the minimum? Damn, I remember when 384 was the maximum.
Sent from my Nexus 7 using xda app-developers app

Hehe, time goes on and we need more power xD

Related

SetCPU usage/benefits?

I was thinking about installing SetCPU but I have heard stories of it not working very well on the Captivate. Does anyone use this, and if so what kind of battery life improvement are you seeing? Post config settings too please!
Its working just fine. I have a live background so my battery usage isnt very great so long as the screen is on. I had some trouble with the system being slow to respond every time I turned the screen back on when I had "screen off" profile set to max 200 and min 100. then it dawned on me that it would always just underclock to 100 I set it to max 200 and min 200 when the screen is off and also started using launcher pro and it is no longer sluggish at all.
This has saved me a gratuitous amount of battery life when the phone is idle.
Default profile
Max 1Ghz
Min 800Mhz
scaling Conservative
Charging/full profile
Same as default but scales on performance
Battery <50%
Max 800Mhz
Min 400Mhz
scaling Ondemand
screen off
Max 200
Min 200
Scale powersave
kenjindomini said:
Its working just fine. I have a live background so my battery usage isnt very great so long as the screen is on. I had some trouble with the system being slow to respond every time I turned the screen back on when I had "screen off" profile set to max 200 and min 100. then it dawned on me that it would always just underclock to 100 I set it to max 200 and min 200 when the screen is off and also started using launcher pro and it is no longer sluggish at all.
This has saved me a gratuitous amount of battery life when the phone is idle.
Default profile
Max 1Ghz
Min 800Mhz
scaling Conservative
Charging/full profile
Same as default but scales on performance
Battery <50%
Max 800Mhz
Min 400Mhz
scaling Ondemand
screen off
Max 200
Min 200
Scale powersave
Click to expand...
Click to collapse
Thanks for these, I was looking for a some decent settings. Mine were close to that to start, but I had no idea what I was doing, haha
I had some stability problems with it that I am now fairly certain are related to adjusting the polling frequency in advanced settings. After disabling setting advanced settings on boot, and a reboot, it has not caused the phone to hang once. I am also fairly sure that the phone boots with the conservative governor enabled and min/max frequencies set to 100MHz and 1GHz, even without SetCPU - so the main benefit here is profiles to force lower clocks with screen off, or during overheat or low battery.
CPU throttles itself. Any effects of setCPU is placebo effect
Err if you set the clocks yourself, you can produce a difference depending on what it's catered towards. I'm sure if I set the max clock to 200 (assuming the app works) for all situations there will be a difference.
Does the stock ROM have a perflock like the EVO that we need to disable?
Also, does the stock ROM automatically underclock at times, or???
I've now verified after clearing user data, the stock firmware already sets the conservative governor and allows it the full range of frequencies supported by the CPU. Only benefit from SetCPU should be profiles - reduce max clock when hot or low battery, that sort of thing.
Sent from my Samsung Captivate
I was going to make a screen off profile of 200mhz, to save battery. Should I bother doing this?
Edit: Nevermind, I'm just going to uninstall it. It's locked up my phone twice already
Default Profile: 800 MHz
Profiles:
Temp > 46 C -- 400 Max 100 Min Conservative
Battery < 40 -- 400 Max 100 Min Conservative
Screen Off -- 400 Max 100 Min Conservative
This now gives my phone life of about 2 days with moderate use (1 hour calls, 1 hour browsing and another 30-45 mins of using apps that need screen on like games, etc)
brandonb81 said:
I was going to make a screen off profile of 200mhz, to save battery. Should I bother doing this?
Edit: Nevermind, I'm just going to uninstall it. It's locked up my phone twice already
Click to expand...
Click to collapse
One thing u got to keep in mind, CPU scales up when woken from low speeds (like when u set for 200 n this takes a second or two). After some R&D i realized 400 MHz when sleeping is optimal with hardly noticeable lag.
Unhelpful said:
I had some stability problems with it that I am now fairly certain are related to adjusting the polling frequency in advanced settings. After disabling setting advanced settings on boot, and a reboot, it has not caused the phone to hang once. I am also fairly sure that the phone boots with the conservative governor enabled and min/max frequencies set to 100MHz and 1GHz, even without SetCPU - so the main benefit here is profiles to force lower clocks with screen off, or during overheat or low battery.
Click to expand...
Click to collapse
well, i have tried playing heavy games like asphalt 5, dungeon hunter, assasin's creed... these all games seemed to work with no lag even at 400 MHz when my battery was less than 40. Most apps I have or used or saw were very comfortable even at 400 MHz. But with multiple apps open, sometimes there was lag, so i set the max at 800 MHz, instead of 1 GHz.
Also, I set my connection to EDGE from 3G. This helped reduce phone from getting heated up with long calls.
I tried using this app myself but uninstalled it after a week. While I'm sure there was some underlying cause, it made my phone never wake up from sleep mode when it turned off.
Honestly thou, I know several android phone owners with s lot of phones That didn't see any real change in their battery life as s result. And based on my experiences, I'd say stay away from it.
Just my 2 cents thou
Sent from my SAMSUNG-SGH-I897 using XDA App

Incredicontrol

We finally have root permissions, so i decided to try incredicontrol... anyone has already tried it?
I lowered the max freq up to 640MHz, and lowered the minimum freq up to the minimum (51MHz). The phone remains agile, no lags.
I noticed an improvement of the battery life, and the phone doesn't overheat like before.
The system uses more cores, not just one as with the base frequency.
I verified with the options "show cpu usage" in the hidden menù.
I suggest to use the interactive governor, because other governors don't use the shadow core.
We still cannot undervolt because there isn't a kernel that supports undervolt...
ps sorry for my bad english, but i'm italian
this app is simple, but unfortunaly it crashed for me to often, i use cpu master, set max speed to 1000 and min speed to 51mhz,
i think these tools are not full tegra3 rdy right now
fire3d said:
this app is simple, but unfortunaly it crashed for me to often, i use cpu master, set max speed to 1000 and min speed to 51mhz,
i think these tools are not full tegra3 rdy right now
Click to expand...
Click to collapse
mmm maybe.... maybe we have to wait new versions....... but on mine incredicontrol does not crash
CPU master
My CPU master doesn't (never) crash(ed) when i set max min CPU. Perhaps your app is buggy?

Note stays on 800Mhz when playing Asphalt 7, even when min = 1.6ghz

As above.
i'm using Half illusion ICS Rom, with anidroid kernel.
used better battery stats to track cpu usage while playing the asphalt 7 game.
initial settings were
min 200
max 1.4ghz
governor = interactiveX
after i realized that the game hits a ceiling @ 800mhz, i forced it to run faster
min 1.6ghz
max 1.6ghz
governor = ondemand / interactiveX
the phone runs 1.6ghz when at my home screen.
however the game still runs @ 800mhz only. It's somehow laggy at the start of the race and when loading (u can see the graphics stutter quite a bit).
is there any way i can get my Note to run at full speed whenever I'm running a gfx-intensive game?
i closed all apps except batt stats to make sure it's not RAM shortage that's causing the lag ingame.
Have you tried using the governor "On demand"? Also try flashing HydraCore kernel.. Maybe that fixes it without changing governor..
go thru this thread and choose the appropriate CPU governer
http://forum.xda-developers.com/showthread.php?t=1736168
dylansmith said:
As above.
i'm using Half illusion ICS Rom, with anidroid kernel.
used better battery stats to track cpu usage while playing the asphalt 7 game.
initial settings were
min 200
max 1.4ghz
governor = interactiveX
after i realized that the game hits a ceiling @ 800mhz, i forced it to run faster
min 1.6ghz
max 1.6ghz
governor = ondemand / interactiveX
the phone runs 1.6ghz when at my home screen.
however the game still runs @ 800mhz only. It's somehow laggy at the start of the race and when loading (u can see the graphics stutter quite a bit).
is there any way i can get my Note to run at full speed whenever I'm running a gfx-intensive game?
Click to expand...
Click to collapse
Phone is too hot so It's uderclocking to 800MHz. It is impossible to do without raising max core temperature in the kernel. Stock 1,4GHz is marketing gambit.
nokiamodeln91 said:
go thru this thread and choose the appropriate CPU governer
http://forum.xda-developers.com/showthread.php?t=1736168
Click to expand...
Click to collapse
point is, no matter which governor i choose, it sticks to 800mhz.
out of few hours of stuff, only 1minute stays on 1.4/1.6ghz.
dylansmith said:
point is, no matter which governor i choose, it sticks to 800mhz.
out of few hours of stuff, only 1minute stays on 1.4/1.6ghz.
Click to expand...
Click to collapse
Means it takes 1 minute until the CPU gets too hot after starting he game and the kernel decides to throttle the CPU frequency to 800 MHz maximum.
is that even possible
Change your kernel
Silent Lain said:
Means it takes 1 minute until the CPU gets too hot after starting he game and the kernel decides to throttle the CPU frequency to 800 MHz maximum.
Click to expand...
Click to collapse
not really. as mentioned that 1 minute is probably when i'm scrolling around the homescreen and navigating menus.
what are the kernels that can work on the half illusion ROM other than the default CM9/anidroid? hydracore works too?
I just have to flash through CWM and reboot right?
(just want to make sure, because i know it's gonna be hard-bricked if i do the wrong thing.)

Concept noob idea for a governor

Hello all !
I was bored in school today so I've written a governor concept idea for quad cores. I'm not a dev AT ALL (for now at least, i'm studying many different stuff, hardware / code related too).
I have no idea if this is possible or if this is clever but I wanted to share it anway. If it gives idea to a developer, that's totally worth it, otherwise, well... I had fun doing it
It's called Progressive.
Progressive
The name of the governor says all. The idea behind it is to be «*progressive*». It means it doesn't unleash the full power when it's not needed. It goes progressively higher in freq with more cores. This should make the phone cooler and the battery better. The delay (3 sec ) is just a number, not sure this is really nice. Also, I'm not sure how the S4 handles temperature.
Max freq 1.5 Ghz
Min freq 384 Mhz
Screen off
=> 384-918 Mhz // not too low frequency to avoid reboot
Screen on without touching since 3 sec // always check after 3 seconds for changing the state
=> 384-1134 Mhz only one core online
Screen on touched
=> 594-1134 Mhz two cores online // bump the min_freq to avoid keyboard lag and to add a bit of butter
Screen on touched with a medium load of task // not sure how quantify this
=> 594 Mhz – 1.5Ghz two cores online
Screen on touched with a high load of task // i.e. Games
=> 702 Mhz – 1.5 Mhz four cores online // max power
We also need a thermal protection to avoid any damage, this should do the trick
If the temp is >= 80°C
=> Two cores online max_freq 1134 Mhz until it reaches 70 °C // not sure about the temp, this can be adjusted
If the temps is >=70°C
=> Let 4 cores being possibly online but lower the max_freq to 1134 Mhz
Click to expand...
Click to collapse
What do you guys think ? Is this even possible ? Good, bad idea ?
I hope you enjoy reading it as much as I enjoyed to writte it
doesn't it do this already?
Fissurez said:
doesn't it do this already?
Click to expand...
Click to collapse
I'm not sure how the ondemand governor on nexus 4 works. So I can't really answer, it's really a noob idea that poped into my head today
you pretty much described interactive with mpdecision enabled.
not exactly, but quite.
3 seconds is way too long for the CPU to ramp up (just a matter of tweaking, though). you'd get more lag than you save battery.
mpdecision ramps the cpu to its maximum frequency as soon as a touch input is detected (normally only 2 cores until a certain threshold is reached), so yours should save a bit of power during smaller workloads.
also, if the touch input is released, it clocks the active cores down to 1.02 GHz for a bit before disabling them when not needed.
after all, it seems like a more conservative interactive governor with active mpdecision. could be nice for saving battery while retaining good performance.
it could be a viable choice for those who go for battery life over performance. :good:
Nuu~ said:
you pretty much described interactive with mpdecision enabled.
not exactly, but quite.
3 seconds is way too long for the CPU to ramp up (just a matter of tweaking, though). you'd get more lag than you save battery.
mpdecision ramps the cpu to its maximum frequency as soon as a touch input is detected (normally only 2 cores until a certain threshold is reached), so yours should save a bit of power during smaller workloads.
also, if the touch input is released, it clocks the active cores down to 1.02 GHz for a bit before disabling them when not needed.
after all, it seems like a more conservative interactive governor with active mpdecision. could be nice for saving battery while retaining good performance
Click to expand...
Click to collapse
Thank you Sir, I understand better how mpdecision works now
Glad to see i'm not completely stupid lol

[GUIDE/DISCUSSION] ViperWVGA/Sense ROMs kernel tweaking thread: Battery/smoothness!

Because both the ViperDHD and Team Venom beta forums are being used by people like us to discuss battery life, kernel tweaking and smoothness, I decided to change this into a universal Viper/Sense discussion thread. ANyone from the family of devices which include DHD, Desire Z, Desire S, IncS, dinc2, mt4g etc are welcome here. ACtually, everyone is.
The discussion was sort of started here
http://forum.xda-developers.com/showthread.php?p=37246862#post37246862
Feel free to post settings and everything. We are trying to get the most of our old devices!
Reserved
Reserved for something else
CyanVivo X, default kernel.
Screen off: 245 min/max
Screen on: 245min, 1228 max.
2 hours of screen on time, 3 hours when I'm lucky, 3G is killing my battery...
Frequencies: 61-1200 MHz redux kernel.
With ondemandx governor and deadline scheduler
Undervolted consolidatedly by -25
I manage to get a battery life of 14-16 hours.
Main usage: voice calls- 1-1.5 hrs
The only problem is... Battery never reaches 100%.
Any suggestions?
Sent from my oc'd viper vivo
Using tricksterMOD, you can see that governors like interactive and ondemand have their own settings. I have been playing around with these settings, and I am still not finished with what I like yet. However you can use this post as a guide:
http://forum.xda-developers.com/showpost.php?p=36743252&postcount=3113
With Interactive, you can set your go_highspeed_load to 806 or 768MHz. I have set my min to be 245MHz, max 1200MHz but highspeed load is 806MHz. This results in a kind of even split between the times that 245, 806 and 1200MHz are used. With ondemand or another governor, it generally spikes up to 1200MHz (your max freq) a lot, rather than scaling between the lower freqs. This results in more battery usage because you are staying at a higher freq for longer than needed. Performance is generally the same with interactive and ondemand if configured right.
What do these mean? Basically, with my device now when I touch the screen, it will ramp up to 806MHz. If the process is more than just moving something on the screen and more processing power is needed, it will automatically go to 1200MHz, and when its done and I am still touching the screen, it will go back down to 806MHz. When all I am doing is browsing xda or something, when I scroll it ramps up to 806MHz and when I leave it to read something, it will go down to 245MHz. Then obviously when its sleeping it goes into deep sleep (hopefully)
My battery life suckss.
Sent from one of the few remaining Incredible S'
markj338 said:
Using tricksterMOD, you can see that governors like interactive and ondemand have their own settings. I have been playing around with these settings, and I am still not finished with what I like yet. However you can use this post as a guide:
http://forum.xda-developers.com/showpost.php?p=36743252&postcount=3113
With Interactive, you can set your go_highspeed_load to 806 or 768MHz. I have set my min to be 245MHz, max 1200MHz but highspeed load is 806MHz. This results in a kind of even split between the times that 245, 806 and 1200MHz are used. With ondemand or another governor, it generally spikes up to 1200MHz (your max freq) a lot, rather than scaling between the lower freqs. This results in more battery usage because you are staying at a higher freq for longer than needed. Performance is generally the same with interactive and ondemand if configured right.
What do these mean? Basically, with my device now when I touch the screen, it will ramp up to 806MHz. If the process is more than just moving something on the screen and more processing power is needed, it will automatically go to 1200MHz, and when its done and I am still touching the screen, it will go back down to 806MHz. When all I am doing is browsing xda or something, when I scroll it ramps up to 806MHz and when I leave it to read something, it will go down to 245MHz. Then obviously when its sleeping it goes into deep sleep (hopefully)
Click to expand...
Click to collapse
I am gonna try nodding the governors now!
Sent from my Incredible S using xda app-developers app
Mark r these settings good?.... Btw what nr i should put to boost?
janarp said:
Mark r these settings good?.... Btw what nr i should put to boost?
Click to expand...
Click to collapse
Looking good to me
Smooth or not? Maybe post a screenie of cpuspy or something to see what you're running at
See here for more info
http://forum.xda-developers.com/showpost.php?p=19846297&postcount=2
Are you finding any slowdown and major battery drainage where android os keeps the device awake?
markj338 said:
Looking good to me
Smooth or not? Maybe post a screenie of cpuspy or something to see what you're running at
See here for more info
http://forum.xda-developers.com/showpost.php?p=19846297&postcount=2
Are you finding any slowdown and major battery drainage where android os keeps the device awake?
Click to expand...
Click to collapse
It feels really smooth right now.. i cant tell for battery because i flashed patcha kernel right now... Lets see how good my battery is after few days of using... Thanks for link i read it later... Dont have that time right now... And here is pic ... If u mean this offcourse..
or u can suggest me better kernel tuning app...
janarp said:
It feels really smooth right now.. i cant tell for battery because i flashed patcha kernel right now... Lets see how good my battery is after few days of using... Thanks for link i read it later... Dont have that time right now... And here is pic ... If u mean this offcourse..
or u can suggest me better kernel tuning app...
Click to expand...
Click to collapse
Not that one
The screen that shows how long you've been at what freq
probably i flash new Beast Mode MOD kernel if it release today... it looks more interesting..=)
---------- Post added at 03:57 PM ---------- Previous post was at 03:56 PM ----------
markj338 said:
Not that one
The screen that shows how long you've been at what freq
Click to expand...
Click to collapse
with this kernel tuner app i cant see that i guess..=)
hey all i m using advenced-sense-kernel-r1
i would like to set governors like markj338 posted.
"Using tricksterMOD, you can see that governors like interactive and ondemand have their own settings. I have been playing around with these settings, and I am still not finished with what I like yet. However you can use this post as a guide:
http://forum.xda-developers.com/show...postcount=3113
With Interactive, you can set your go_highspeed_load to 806 or 768MHz. I have set my min to be 245MHz, max 1200MHz but highspeed load is 806MHz. This results in a kind of even split between the times that 245, 806 and 1200MHz are used. With ondemand or another governor, it generally spikes up to 1200MHz (your max freq) a lot, rather than scaling between the lower freqs. This results in more battery usage because you are staying at a higher freq for longer than needed. Performance is generally the same with interactive and ondemand if configured right.
What do these mean? Basically, with my device now when I touch the screen, it will ramp up to 806MHz. If the process is more than just moving something on the screen and more processing power is needed, it will automatically go to 1200MHz, and when its done and I am still touching the screen, it will go back down to 806MHz. When all I am doing is browsing xda or something, when I scroll it ramps up to 806MHz and when I leave it to read something, it will go down to 245MHz. Then obviously when its sleeping it goes into deep sleep (hopefully)"
is there an easy way
right now i have these cpu stats and these oc settings
do i have to remove oc deamon and cpu stats to use tricksterMOD
mkdsa said:
hey all i m using advenced-sense-kernel-r1
i would like to set governors like markj338 posted.
"Using tricksterMOD, you can see that governors like interactive and ondemand have their own settings. I have been playing around with these settings, and I am still not finished with what I like yet. However you can use this post as a guide:
http://forum.xda-developers.com/show...postcount=3113
With Interactive, you can set your go_highspeed_load to 806 or 768MHz. I have set my min to be 245MHz, max 1200MHz but highspeed load is 806MHz. This results in a kind of even split between the times that 245, 806 and 1200MHz are used. With ondemand or another governor, it generally spikes up to 1200MHz (your max freq) a lot, rather than scaling between the lower freqs. This results in more battery usage because you are staying at a higher freq for longer than needed. Performance is generally the same with interactive and ondemand if configured right.
What do these mean? Basically, with my device now when I touch the screen, it will ramp up to 806MHz. If the process is more than just moving something on the screen and more processing power is needed, it will automatically go to 1200MHz, and when its done and I am still touching the screen, it will go back down to 806MHz. When all I am doing is browsing xda or something, when I scroll it ramps up to 806MHz and when I leave it to read something, it will go down to 245MHz. Then obviously when its sleeping it goes into deep sleep (hopefully)"
is there an easy way
right now i have these cpu stats and these oc settings
do i have to remove oc deamon and cpu stats to use tricksterMOD
Click to expand...
Click to collapse
You can't edit the governor settings with the daemon controller app. That's why we use the trickster mod app to edit things
By governor settings I don't mean switching governors, I mean the actual settings of it.
That stuff should disable itself but its best to remove them to avoid conflicts
Sent from my HTC Incredible S
My results on ViperIncS with z13boot.img, redux_0.8 kernel, daemon controller, 3G always On, 7 hours of sleepmode (0.8%/hour), sync ON, loged on on every account on my phone but with disabled updates for accounts.. only IM+pro is working all the time inpush mode.
hey markj338 i m new to this,so if i understand i should remove oc deamon and cpu stats but can u walk me trough setup trickstermode
removed oc deamon and cpu stats and installed trickster i have these screenshots
mkdsa said:
hey markj338 i m new to this,so if i understand i should remove oc deamon and cpu stats but can u walk me trough setup trikstermode
Click to expand...
Click to collapse
Delete them
Download an app from play store called trickster MOD kernel settings or something
Download busybox installer by stericsson
Install busybox using the app
open trickster, then you can set whatever you like.
screnshoots
ok removed oc deamon and cpu stats
installed busybox and Trikster got these settings..what should go_highspeed_load be now is 99...noticed when i restart dhd governor goes back to ondemand
tnx man

Categories

Resources