Q&A:
What is Overclocking??
Overclocking is running the cpu, and possibly other system components like memory, faster than the speed for which it was rated. It's not something to take lightly as it's something that actually can physically damage the phone.
What is Undervolting?
If you are performing CPU intensive tasks, you reap the most benefit from the UV kernel because it needs less power to run at 1 GHz (or whatever the maximum clock speed is set to for that kernel).
If you spend alot of time idling, for instance reading interspersed by web requests, you are spending most of your time at the minimum clock speed. With the stock kernel, that is set to 0.1 GHz. With a UV kernel, the minimum clock needs to be set to something higher to keep the CPU running.
What in the hell is BFS/CFS???
CFS: Completely Fair Scheduler - The original process scheduler. CFS is better for multitasking, BFS is better for user interactions
BFS: Brain F**k Scheduler - The updated and improved process scheduler of CFS. The scheduler is designed to offer low latency when used interactively
What in the hell is Noop/SIO/Others???
NO-OP: This scheduler only implements request merging.
SIO: Simple I/O Scheduler - SIO is like a lighter version of deadline but it doesn't do any kind of sorting, so it's aimed mainly for random-access devices (like SSD hard disks) where request sorting is no needed (as any sector can be accesed in a constant time, regardless of its
physical location).
CFQ: Completely Fair Queueing - The CFQ scheduler has always tried to divide the bandwidth of each block device fairly among the processes performing I/O to that device; the time-sliced version goes further by giving each process exclusive access to the device for a period of time.
BFQ: Budget Fair Queueing - BFQ is a proportional share disk scheduling algorithm, based on CFQ, that supports hierarchical scheduling using a cgroups interface
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
BFQ vs CFQ
Slowest task's bw (MB/s) Fastest task's bw (MB/s)
-------------------------------------------------------------------
BFQ (2 files) 9.81 +/- 0.47 9.95 +/- 0.43
CFQ (2 files) 8.61 +/- 0.67 11.92 +/- 0.44
-------------------------------------------------------------------
BFQ (5 files) 4.29 +/- 0.10 4.31 +/- 0.09
CFQ (5 files) 4.01 +/- 0.17 5.24 +/- 0.14
__________________________________________________________________________________________________________________________________
The voltage settings are going to be differ by each of us, but sharing some of your settings will help the "New" or any people to find their stable settings.
Ex:
Kernel Type: TW/AOSP
OTB version: 1.1b/1.2b/etc
Scheduler: cfq/bfq/sio/Noop/Deadline/etc
Settings: Highest to Least
7/09
ASOP
OTB 2.6.35.13 CFS 0704
BFQ
1500: -0
1400: -0
1300: -0
1200: -50
1000: -75
800: -75
400: -100
200: -100
100: -125
bfq scheduler, clocked to 1120 Mhz
1120 : -25
1000 : -25
800 : -50
600 : -50
400 : -75
200 : -125
100 : -150
Stable for 36hrs
1400 - 50
1300 - 50
1000 -50
800-0
400- 50
200 - 50
100 - 200
Noop also
Thoes are my settings test settings as of today so far so good XD
Sent from my SCH-I500 using XDA App
CFQ Scheduler
1200 - 0
1000 - 25
800 - 25
600 - 50
400 - 50
200 - 50
Still testing more aggressive settings but this has been 100% stable for me.
SIO scheduler. Clocked at stock 1000 Mhz
1000 : -75
800 : -75
600 : -75
400: -75
200: -125
100: -150
Testing for stability now, but it seems to be working great for now.
Its kinda weird but when I first flash the OTB I am not able to run voltages as low as I can after a few hours. Makes no sense to me but whatever.
My 100% of the time fail safe settings are:
1300 -75
1200 -25
1000 -50
800 -50
400 -75
200 -75
100 -75
With the above its always been perfect. Now as aforementioned after a short while I can adjust to these following voltages:
1300 -75
1200 -50
1000 -75
800 -75
400 -100
200 -125
100 -125
But again oddly if I try testing these right after a fresh kernel install I get some kind of freeze/lock up issue.
As always YMMV and truly you need to find what is stable for your own phone and the only way to do that is thru individual testing.
In terms of the scheduler I was mostly using cfq since OTB came out for voltage control but I have played with SIO and BFQ. IMO there is not a tangible difference
So what is the difference between the different schedulers? I see some people use SIO and some use CFQ. Is there a place I can go to read up on the differences?
xceebeex said:
So what is the difference between the different schedulers? I see some people use SIO and some use CFQ. Is there a place I can go to read up on the differences?
Click to expand...
Click to collapse
From the community rom thread:
http://forum.xda-developers.com/showpost.php?p=13209379&postcount=247
saps said:
From the community rom thread:
http://forum.xda-developers.com/showpost.php?p=13209379&postcount=247
Click to expand...
Click to collapse
Awesome, thanks. It is hard to find information in that thread with it being so long now
So BFQ is "supposed" to be the best, but it is one of those things where YMMV I am assuming.
BFQ Scheduler
1300 -75uv
1200 -50uv
1150 -50uv
800 -75uv
400 -75uv
200 -100uv
100 -150uv
Running good for a day!
Will update as I go.
xceebeex said:
Awesome, thanks. It is hard to find information in that thread with it being so long now
So BFQ is "supposed" to be the best, but it is one of those things where YMMV I am assuming.
Click to expand...
Click to collapse
Yeah YMMV always. In quadrant tests I get the highest IO scores with sio actually. Mind you its just a few dozen points higher which translates into just a few points higher overall. But it is consistently just a tad bit better than bfq and cfq which are dead end on my phone. After using cfq the past week Im currently on bfq since supposedly thats the one to have. In the end I believe it makes little difference
saps said:
Yeah YMMV always. In quadrant tests I get the highest IO scores with sio actually. Mind you its just a few dozen points higher which translates into just a few points higher overall. But it is consistently just a tad bit better than bfq and cfq which are dead end on my phone. After using cfq the past week Im currently on bfq since supposedly thats the one to have. In the end I believe it makes little difference
Click to expand...
Click to collapse
For general purpose phone use CFQ and BFQ are best, SIO is non time critical and only suitable for single purpose imbedded applications such as dedicated flash controllers where latency had much less importance than data throughput.
If audio and video causing hangs or stutters then CFQ or BFQ are absolutely required.
how are the stock settings on this kernel? UV? how much?
if i don't change anything is it a stock kernel or is there some inherent changes already built in?
saps said:
Its kinda weird but when I first flash the OTB I am not able to run voltages as low as I can after a few hours. Makes no sense to me but whatever.
My 100% of the time fail safe settings are:
1300 -75
1200 -25
1000 -50
800 -50
400 -75
200 -75
100 -75
With the above its always been perfect. Now as aforementioned after a short while I can adjust to these following voltages:
1300 -75
1200 -50
1000 -75
800 -75
400 -100
200 -125
100 -125But again oddly if I try testing these right after a fresh kernel install I get some kind of freeze/lock up issue.
As always YMMV and truly you need to find what is stable for your own phone and the only way to do that is thru individual testing.
In terms of the scheduler I was mostly using cfq since OTB came out for voltage control but I have played with SIO and BFQ. IMO there is not a tangible difference
Click to expand...
Click to collapse
I used these settings and have only had one freeze up (when using the camera and clicking on the preview tab). Thing FLIES.
I actually underclocked mine a little to 800. I prefer the battery life I guess.
800-50
600-75
400-75
200-125
100-125
Battery life still wasn't great lol
I switched over to a Peanut Butta Jelly Time kernel though at the moment to test that out.
gevis said:
I actually underclocked mine a little to 800. I prefer the battery life I guess.
800-50
600-75
400-75
200-125
100-125
Battery life still wasn't great lol
I switched over to a Peanut Butta Jelly Time kernel though at the moment to test that out.
Click to expand...
Click to collapse
Make sure after you find the voltage profile you like you reset the batt stats after you fully charge the battery
Sent from my SCH-I500 using XDA Premium App
Since i can not post in the DEV forum yet:
Thanks for this ROM, I upgraded from SC 2.9.2 and i am blown away by this fantastic, well built and fast ROM!
So once again thank all of you for all of your hard work!
saps said:
Make sure after you find the voltage profile you like you reset the batt stats after you fully charge the battery
Sent from my SCH-I500 using XDA Premium App
Click to expand...
Click to collapse
thanks for that... didn't think about that
Anybody have updates with V1.3 they can share?
I use:
800-75
600-75
400-75
200-75
Underclocked, but the phone is still pretty snappy, and the battery life is awesome. My phone doesn't like 100mhz so I only go down to 200. Now what is this about wiping batt stats?
Related
This thread has been created to share Undervolting Settings (UV).
Undervolting makes CPU/GPU/Modem to consume less power, thus extend battery life. This is allowed by flashing modified kernels that allow UV (Thanks to raspdeep's work). One can use Voltage Control to change settings (Thanks to xan).
Setting format is -x mV for a given CPU clock as used in xan's app: [1200Mhz] [1000Mhz] [800Mhz] [400Mhz] [200Mhz] [100Mhz]
What are your settings?
PS: Please edit your very first post with settings instead of reposting. Thank you!
Stable: 50 50 75 100 100 100
1200 max: 50
1000 max: 50
800 max: 75
I am currently running 50 50 50 75 100 100 with no stability problems. It has made 4 back-to-back quadrant runs and a couple days of general usage without any crashes so far.
Undervolting doesn't work well with my phone the same with overclocking. I can't undervolt 1000Mhz and above because it causes much stability issues here. I can only undervolt 100-800Mhz with settings < 100mV.
TheVisitorX said:
Undervolting doesn't work well with my phone the same with overclocking. I can't undervolt 1000Mhz and above because it causes much stability issues here. I can only undervolt 100-800Mhz with settings < 100mV.
Click to expand...
Click to collapse
My system hangs in sleep mode when I have setCPU or Superpower with sidekick on.
I have the max cpu capped at 800mhz using SetCpu.
Undervolted -50 for 800mhz 600 400 200 and 100 each.Phone was at 50% last night and 6 hours later it's dead.Battery was completely discharged.All i did was set everything at 50Mvs less.Correct ? i think i'm missing something.Do help.thanks.
hey guys
im new to oc and uv
im currenlty using ramads gb jvh with hardcores speedmod kernel
ive got tegraks ultimate app and have oc'd it to 1100 as anything above reboots my phone
everything else is the same as standard
i was wondering if anyone else can help me with what i should change
i have no clue,
so far
frequency 1100
core 1275mv
internel 1100
cpu level 1
frequency 800
core 1200
internel 1100
cpu level 2
frequency 400
core 1050
internal 1100
cpu level 3
frequency 200
core 950
internal 1100
cpu level 4
frequency 100
core 950
internal 1000
these values are all stock, i havent touched them
im wanting to know what i should change them to
thanks
forgot to add, my battery life is really bad, i use hsdpa and wifi frequently
i have cm7 #19 with the (latest) glitch v10b-VC kernel..no oc, bu uv
100mhz -50,200mhz -50,400mhz -50, 800mhz -25 and 1000mhz @stock
What is the negative effects of UV?
My current values starting at 1000mhz is:
-75
-100
-100
-125
-175
hackeron said:
What is the negative effects of UV?
My current values starting at 1000mhz is:
-75
-100
-100
-125
-175
Click to expand...
Click to collapse
Negative effects come in the form of stability issues and random reboots. Is doesn't physically damage the processor. By lowering the core voltage supplied to the CPU, you also decrease the noise margin for the CPU to properly differentiate between logic 1 and logic 0. This is why -75, for example, works for some and not for others because processors are not 100% identical. The obvious benefit UV is lower power consumption.
gtda said:
hey guys
im new to oc and uv
im currenlty using ramads gb jvh with hardcores speedmod kernel
ive got tegraks ultimate app and have oc'd it to 1100 as anything above reboots my phone
everything else is the same as standard
i was wondering if anyone else can help me with what i should change
i have no clue,
so far
frequency 1100
core 1275mv
internel 1100
cpu level 1
frequency 800
core 1200
internel 1100
cpu level 2
frequency 400
core 1050
internal 1100
cpu level 3
frequency 200
core 950
internal 1100
cpu level 4
frequency 100
core 950
internal 1000
these values are all stock, i havent touched them
im wanting to know what i should change them to
thanks
forgot to add, my battery life is really bad, i use hsdpa and wifi frequently
Click to expand...
Click to collapse
I'm also using Tegrak's overclock apk for some time now (from beginning) and it's really good!
Just lower the core voltage (start with cpu level 0) until it's unstable (random reboots), then add a few mv (+5) to make it stable again (no reboots). do this for every core frequency (only one at the time, so you know witch one is making the system unstable). I never touch the internal frequency... Undervolting will NOT damage your CPU (overclocking can if you're not carefull)
Don't be stupid testing just a few hours, test (stress test) for days. Only then you are sure it's stable
These are my settings:
(rock stable after a few weeks => playing asphalt6, running quadrant and smartbench hours a day for a few weeks,...)
cpu level 0
frequency 1000
core 1205mv (-70) => could get it stable at 1200 but had one reboot after one week, so I added +5
internel 1100
cpu level 1
frequency 800
core 1105 (-95) => could get it stable at 1100 but had one reboot after one week, so I added +5
internel 1100
cpu level 2
frequency 400
core 950 (-100)
internal 1100
cpu level 3
frequency 200
core 825 (-125)
internal 1100
cpu level 4
frequency 100
core 825 (-125)
internal 1100
Now I know what my lowest core voltage is, I can start overclocking (not for now).
I'm on stock deodexed JVP 2.3.4 with Hardcore (latest) Speedmod (partition EXT4), Tegrack Overclock Ultimate and Voodoo Control Plus (holy combo => Quadrant 2400+ (no OC, just UV) and wow, what a great battery life!
edit: yes, I need to update my signature
SamHaLeKe said:
cpu level 4
frequency 100
core 825 (-125)
internal 1100
Click to expand...
Click to collapse
^ Typo??????????
internal voltage @ 100Mhz is 1000mV by default, so you are overvolting.
kiwijunglist said:
^ Typo??????????
internal voltage @ 100Mhz is 1000mV by default, so you are overvolting.
Click to expand...
Click to collapse
Default value is 950mV on my phone according to pimpmycpu. According to SamHaLeKe's post, he's reducing his by -125 so 825mV is correct
I'm new to UV, and just experimenting. My current values are
1200 = -50mV
800 = -50mV
400 = -100mV
200 = -100mV
100 = -150mV
Seems ok so far, more aggressive cutting gave me reboots
$$$
The most i could get from my phone w/o stability issues
1500 - 50
1400 - 50
1300 - 50
1200 - 50
1000 - 50
800 - 75
400 - 100
200 - 125
100 - 150
Starting from 1000MHz, I'm using these values :
-50 [1000]
-75 [800]
-100 [400]
-125 [200]
-150 [100]
No stability issues since then !
Mine are;
1000 : 50
800 : 50
400 : 75
200 : 75
100 : 100
Works great for me
Sent from my GT-I9000 using Tapatalk
swaakx said:
Starting from 1000MHz, I'm using these values :
-50 [1000]
-75 [800]
-100 [400]
-125 [200]
-150 [100]
No stability issues since then !
Click to expand...
Click to collapse
i have the same!
my phone now cold as ice. and greatly stable
I'm a noob at this UV stuff but I'm quite interesting about that.
I tried with Control Freak, should I set first a low voltage on 100Mhz and try to stress the cpu only with this change on 100MHZ? or should I set all voltages and test?
thx for help
i'm on jvq darkyrom
using tegrak overclock ultimate
1200mhz 1255 (-20)
800mhz 1105 (-95)
400mhz 950 (-100)
200mhz 850 (-100)
100mhz 810 (-140)
So, i know alot of us SG2 user are always on the go with tweaking, OC/UC/OV/UC, all for better battery!
And i noticed there are no such threads about this, therefore i decided to start this one , so we could all share our experience and UV values for comparison.
I'm on CM7 stable? (2.3.7) with the following UV values set on boot for a couple of days now;
1200Mhz - 1175mV
1000Mhz - 1075mV
800Mhz - 975mV
500Mhz - 875mV
200Mhz - 625mV (yes! i know . tried 650mV and my screen washed out!)
like i said, i have been using this for a couple of days now, and everything seems fine; quadrant, Asphalt, golf, maps, everything.
So, what are your values.
everyones values will be diferent mate mine wont undervolt by much before it crashes , where as my old sgs2 could be undervolted loads
to be honest iam using speedmod kernel at the minute and there really isnt any need to undervolt or overclock
iam getting pretty much the same battery i did on my old sgs2 that could be undervolted loads like your one can
iam also getting great scores on benchmark programs
Yes, i know everyone's value will be different, i just think it would be interesting to see what people are doing with their beasts!
oh, and what happened to your old SG2?
What do I need to undervolt my SG2? Another different kernel?
I am on stock KI3 + CF-Root
Any recommended STABLE kernel?
Thank you
Thanks for the update
henrychukx said:
So, i know alot of us SG2 user are always on the go with tweaking, OC/UC/OV/UC, all for better battery!
And i noticed there are no such threads about this, therefore i decided to start this one , so we could all share our experience and UV values for comparison.
I'm on CM7 stable? (2.3.7) with the following UV values set on boot for a couple of days now;
1200Mhz - 1175mV
1000Mhz - 1075mV
800Mhz - 975mV
500Mhz - 875mV
200Mhz - 625mV (yes! i know . tried 650mV and my screen washed out!)
like i said, i have been using this for a couple of days now, and everything seems fine; quadrant, Asphalt, golf, maps, everything.
So, what are your values.
Click to expand...
Click to collapse
From what I've read on xda, you can't go 625.. that's why you can set 650 but can't do that for 625. It will jump to the minimum possible mV. Correct me if I'm wrong.
I don kno abt this uv thing worked the same on my sgs1 so iam not into uv on sgs2....kernel fixs tht prblm....but will try now an c wat the effect is...presently on siyah 2 kernel.....cheeerz
the minimum that i would undervolt at is at 800mv on 100mhz..anything under that would just freeze my phone...so to the OP you must have one damn beastly phone to be able to go that low..anyway i always manage to get 5hours screen on time with my settings so im happy..but please share how you manage to use it that low and not have any problems
I'm on CheckRom Revolution 1.0 and running RAGEmod U1-v1.1b.
These are my stable UV settings.
1200Mhz - 1150mV
1000Mhz - 1050mV
800Mhz - 950mV
500Mhz - 850mV
200Mhz - 825mV
gusoldier said:
From what I've read on xda, you can't go 625.. that's why you can set 650 but can't do that for 625. It will jump to the minimum possible mV. Correct me if I'm wrong.
Click to expand...
Click to collapse
i think each SG2's chip is different in some way.
for e.g, i can't set my 1200Mhz @ 1150mV, would be fine for a min or 2, then freeze. i think i also know some guy on XDA here who has 650mv or so.
what apps are you guys using ? setcpu or tegrak ?
yakyllan said:
What do I need to undervolt my SG2? Another different kernel?
I am on stock KI3 + CF-Root
Any recommended STABLE kernel?
Thank you
Click to expand...
Click to collapse
I don't think CF-root supports OC/UV. you need to flash a kernel that supports that! its amazing how much battery u can save....
i get about 68-75% left after using the for 14hours! wih about 2-3hrs of music, few calls, sms, mobile internet.
last night i forgot to plug in for recharge and i only lost 1% battery in 8hrs!
its awesome!
What kernel are you using for the UV?
Any recommended ?
(I don't want to lose my root)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
henrychukx said:
So, i know alot of us SG2 user are always on the go with tweaking, OC/UC/OV/UC, all for better battery!
And i noticed there are no such threads about this, therefore i decided to start this one , so we could all share our experience and UV values for comparison.
I'm on CM7 stable? (2.3.7) with the following UV values set on boot for a couple of days now;
1200Mhz - 1175mV
1000Mhz - 1075mV
800Mhz - 975mV
500Mhz - 875mV
200Mhz - 625mV (yes! i know . tried 650mV and my screen washed out!)..
Click to expand...
Click to collapse
I'm using roughly similar settings (top is 1252mhz @ 1175mv).. although my 200mhz is at 825mV, can it really go down to 625mV without issues? Anyone else have input on this?
yakyllan said:
What kernel are you using for the UV?
Any recommended ?
(I don't want to lose my root)
Click to expand...
Click to collapse
now im on CM7, using codewokx kernel (cmw 5.0).
a while back when i was on stock ROMs i used, Ninpho and siyah kernels, both were good on battery, i know with siyah 1.7.8 u can UC to 100Mhz (the standard 200mhz).
u should try one of em out, and see which is best for you.
viva.fidel said:
I'm using roughly similar settings (top is 1252mhz @ 1175mv).. although my 200mhz is at 825mV, can it really go down to 625mV without issues? Anyone else have input on this?
Click to expand...
Click to collapse
On 200mhz, i can only set voltage from 875-800, and anything btw 800 and 625 gives me a reboot. right now im doing 1d3h28m and still got 34% left.
Thanks to the OP, didn't think I could get to 625mv on 200hz.
850 mv 200 Mhz was my previous setting (825mv would crash)
Tested 625mv and so far so good. CM7 kernel & SetCPU.
200 Mhz - 625 mV
500 Mhz - 850 mV
800 Mhz - 950 mV
1000 Mhz - 1050 mV
1200 Mhz - 1150 mV
Stable.
Geumbou said:
Tested 625mv and so far so good. CM7 kernel & SetCPU.
200 Mhz - 625 mV
Click to expand...
Click to collapse
That's unbelievable. my phone just freezes at such a low voltage
Most custom kernels now a days comes with undervolting underclocking scripts.
Eg: my galaxy s2 is on Touch X xwki8 based rom, which contains undervolting scripts.
Mhz : mv
1400 : 1275
1200 : 1175
1000 : 1075
800 : 975
500 : 875
200 : 850
100 : 825
All of them installing these roms never complained on hanging or not booting problems.
I installed them and never caused a problem for me either. But when I replaced the siyah 1.8 kernel with siyah 2.1, the same scripts never worked on the same phone. In fact it never booted. I had to change the voltages slightly inorder to make it boot again.
My conclusion is the phone manufacturers are making the phones almost 99.99% alike. The changes in volts must be because of different roms or probably kernels installed on different phones. I believe 2 same phones with the same rom and kernel will work with the same under volt script.
What do you think..?
Sent from my GT-I9100 using xda premium
click on my sig to see the results of mine
LiveOC and Custom Voltage guide by TkGlitch
for Glitch kernel V14
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Warning!
Overclocking is dangerous and is meant only for experienced users!
1- Introduction :
The "normal" overclocking system on SGS til now was the addition of some frequency steps past the stock 1GHz step. V13 kernel was using 7 overclocked steps
to push the maximum selectable speed to 1.7GHz.
In V14, less overclocked steps are present, but you can still overclock to 1.7GHz if you want (and if your phone is able to do it), and even up to 2.25GHz as a maximum.
You will need NSTools to use LiveOC and custom Voltage features in Glitch kernel V14.
To begin with, I'll explain you some basic things you have to know.
2- Clocks :
The CPU speed is the result of a bus speed and a multiplier.
Bus speed is linked to and equal to GPU and RAM speed.
The multiplier is per step and hardcoded by the kernel developer.
It does look like that : CPU speed = bus speed x multiplier.
Here are my values in V14 :
1500 MHz = 200 x 7.5
1400 MHz = 200 x 7
1300 MHz = 200 x 6.5
1200 MHz = 200 x 6
1000 MHz = 200 x 5
800 MHz = 200 x 4
400 MHz = 200 x 2
200 MHz = 200 x 1
100 MHz = 100 x 1
LiveOC gives you the access to direct and on-the-fly bus overclocking by 1% steps (150% being the maximum available). I'll say it again : BUS overclocking !
Though, it'll overclock the bus on all the steps at the same time, for the same percentage.
We'll talk about that later.
So if I want to overclock my 1GHz step to 1.1GHz, I'll have to select 1GHz as max frequency, and push LiveOC to 110%.
My bus speed beeing overclocked by 10% will give the following :
220 x 5 (1GHz multiplier) = 1100 MHz.
If you want to go higher than 1.5GHz, it's the same :
Set 1500 MHz as maximum frequency (for example), and push LiveOC. Let's say to 110%. You will get the following :
220 x 7.5 (1.5GHz multiplier) = 1650 MHz.
Pushing it to 114% will give 1710 MHz (228MHz bus) and so on, up to 150% giving 2250 MHz running an inachievable 300MHz bus.
SINCE V14 BETA 6, 100, 200 and 400 MHz steps won't be affected by LiveOC. It should help to stabilize your overclock in most cases.
3- The limits :
THE MAIN LIMIT AND PHONE KILLER IS HIGH TEMPERATURE. WARM IS OK, HOT IS TOO HOT. DON'T PLAY STUPID.
Obviously, so much control over the bus speed, frozen til now to what the kernel developer set, will also give you the ability to find the limits of your chip.
The main clocking limit is generally the RAM, corrupting itself when the bus speed is too high. And since the GPU uses the RAM as well, it'll become crashy too. That's why I have decided to add some steps with a bigger multiplier, to lower the bus for a higher CPU frequency.
The bus speed limits for you will be anywhere between 240 and 270 Mhz, depending on your device potential (higher and lower exists but rare).
Average is 240 MHz.
The CPU speed limits will be anywhere between 1300 and 1800 MHz (higher and lower exists but rare as well).
Average is 1400 MHz.
With that in mind, I wouldn't go too far past 130% (giving 260MHz bus speed).
4- The sweet spot :
What you want when overclocking is to get the best balance for each part. Since the bus is linked to RAM and GPU, you obviously want it as high as possible for gaming, video playing, web browsing etc. (even more now with GPU acceleration in Android 4.0+). Though, as you know already if you've read this guide til now, all steps in V14 are using the stock 200MHz frequency.
So what to do if I want a lower CPU speed with a higher bus/GPU speed ? Simple ! Just select a lower frequency step as starting point.
Let's say we want 250 MHz bus speed, so we'll use 125% LiveOC :
Using 800MHz step, you'll get 1GHz.
Using 1GHz step, you'll get 1.250GHz.
Using 1.2GHz step, you'll get 1.500GHz.
Using 1.3GHz step, you'll get 1.625GHz.
Using 1.4GHz step, you'll get 1.750GHz.
Using 1.5GHz step, you'll get 1.875GHz.
5- The issues :
With a new overclocking system obviously comes some new problems related to it.
With the ability to fine tune the frequencies, you'll find that some frequencies are buggy somewhat, giving low performances. For example, using 115% Live OC with the 1.3GHz step will give some poor performances, when 114 and 116% won't. It could be a NSTools issue, but I think it has more to do with the hardware. It's well known that on CPUs some frequencies or even frequency ranges can be buggy, unstable, or slow. If you encounter that, try to add or remove a percent to LiveOC.
As said earlier, LiveOC will overclock the bus for all steps at the same time by the same amount of %.
Knowing that, you'll have to adapt your voltages for all the frequencies to stay stable, and this for any sensible change on LiveOC percentage.
6- Custom Voltage :
What would be LiveOC without Custom Voltages ?!
I did add leakage values to Glitch kernel features when I saw that some phones were overclocking much better with the right balance between ARM and Int voltages, depending on the phone, with very different results. The leakage value was basically that : balance between the two.
Well, as you probably know if you did read the changelogs, you have now the capacity to overvolt/undervolt both the ARM voltage (the CPU voltage you know well already), and the Int (internal) voltage. The last one is the voltage going to the GPU/memory controller, and will need to be tweaked accordingly to your phone.
As a starting point, here are the Int voltage values I was using for each leakage, adapted for V14 new frequency table :
HIGH LEAKAGE :
1500 : 1.225
1400 : 1.200
1300 : 1.175
1200 : 1.150
1000 : 1.125
800 : 1.100
400 : 1.100
200 : 1.100
100 : 1.000
MEDIUM LEAKAGE :
1500 : 1.200
1400 : 1.175
1300 : 1.150
1200 : 1.125
1000 : 1.100
800 : 1.100
400 : 1.100
200 : 1.100
100 : 1.000
LOW LEAKAGE :
1500 : 1.175
1400 : 1.150
1300 : 1.125
1200 : 1.100
1000 : 1.100
800 : 1.100
400 : 1.100
200 : 1.100
100 : 1.000
Of course, using LiveOC will force you to change these voltages accordingly.
Here are some advices about this :
- Try to stay around 1.225 - 1.250V for your highest frequencies;
- Try not to ever go past 1.300V if you don't want to kill your phone quickly;
- Be VERY gentle when tweaking it as it is VERY sensitive;
- Try to follow a more or less linear curve for Int voltage on OC frequencies;
- Going below 1.000V on 100MHz step will generally kill stability with no battery gain.
This guide may change depending on my decisions related to the Glitch kernel development, or to polish / add things to it.
Thanks to Ezekeel from Nexus S section for these awesome tools.
LiveOC : http://forum.xda-developers.com/showthread.php?t=1288015
Custom Voltages : http://forum.xda-developers.com/showthread.php?t=1331610
23/01/2012 - UPDATED TO REFLECT V14-B1 CHANGES.
09/02/2012 - UPDATED TO REFLECT V14-B3 CHANGES.
24/03/2012 - UPDATED TO REFLECT V14-B6 CHANGES.
Reserved. Just in case.
Awesome, this new LiveOC system really is something else.
Thanks Glitch. This is a really great and comprehensive guide from which many people will benefit.
Bow to tk-glitch. new year gift by glitch .
My 'love' oc value is 110% with Max over clock to 1320 MHz and min to 110 MHz and governed on on demand.
I didn't touched arm voltages
My int voltages are as follows:-
Max- 1225
1400-1200
1304-1175
1200-1125
1000-1100
800-1075
400-1050
200-1025
100-1000
Phone is pretty damn stable on these frequencies , I was facing some instability earlier but not now. Phone is dancing on my fingers, but will this effect battery a lot. Tk-glitch did I did it correctly or anything else have to be done??
@BHuvan goyal : Looks good to me
Tk-Glitch said:
@BHuvan goyal : Looks good to me
Click to expand...
Click to collapse
Will test at different frequencies from time to time and will report here once build 12 comes out as build 11 has some minor problems. Btw I accidentally went up to 150% and screen started to display weird lines ( horizontal ) and phone rebooted but that's bound to happen as I know that was at maximum.
As said, the bus limits are around 250 MHz for most phones, so with 150% pushing it to 300 MHz (and even more on the 1.3GHz step) your device will instantly freeze or crash
~ 130% is around the hardware limits
So what is the best method to save energy? Lower int and/or arm voltages?
"- Going below 1.000V on 100MHz step will generally kill stability with no battery gain."
Does it makes sense to lower arm voltage on 100mhz if >1V int causes instability?
Underclock and lower ARM voltage (both). If you only lower voltage, or only underclock, the gains will be poorer.
I just want to undervolt (same performance, lower energy consumption), but I'm not sure how to find the lowest arm and int voltages.
Frist int, then arm? I guess balance is the problem^^
just testing, not stable:
100-1000mhz, 100% live OC; int 1000/1000/1000/1000/1050; arm 850/875/1000/1175/1250
100-1000mhz, 100% live OC; int 1000/1000/1000/1000/1050; arm 800/800/950/1125/1200
frist arm, then int.. for tomorrow
reborn90 said:
I just want to undervolt (same performance, lower energy consumption), but I'm not sure how to find the lowest arm and int voltages.
Frist int, then arm? I guess balance is the problem^^
just testing:
100-1000mhz, 100% live OC; int 1000/1000/1000/1000/1050; arm 850/875/1000/1175/1250
100-1000mhz, 100% live OC; int 1000/1000/1000/1000/1050; arm 800/800/950/1125/1200
Click to expand...
Click to collapse
First arm, then int.
Thanks for the amazing kernel and the OC/UV options to puch our silicon to it's limits!
Question...
f.e.
I can change Max CPU freq to 1200 MHz with no other adjustments to voltage or Live OC and system is totally stable (can even go all the way to 1300 MHz without changing voltages, stable)
or
I can change Live OC Value to 115 % with no other adjustments to voltage and Max CPU freq set to 800 and system is totally stable. (CPU will be 920 MHZ and GPU 230 MHz)
but
When I change both to let say Live OC Value to 115 % and CPU freq set to 1000
the system becomes unstable (CPU will be 1150 MHz and GPU 230 MHz)
So I can run my CPU at an even higher freq then 1150 MHz totally stable but not together with Live OC (separately also totally stable). What's the catch? I even tried 114 % 116% 113% but can't get it stable together (separately no problem). Also some suggestions on voltage settings (Int) would be nice to see... Thanks again
-Sam-
@SamHaLeKe :
As you guessed, it's probably the Int voltage causing problems. Push it a bit (let's say 0.050V), and see if it's any better. It's obviously not the CPU freq causing problem, but more probably the bus freq. BTW, stock ARM voltage for 1GHz could be too low for 1150MHz, so pushing it a bit, towards 1.3V, should help too.
Good luck.
Tk-Glitch said:
@SamHaLeKe :
As you guessed, it's probably the Int voltage causing problems. Push it a bit (let's say 0.050V), and see if it's any better. It's obviously not the CPU freq causing problem, but more probably the bus freq. BTW, stock ARM voltage for 1GHz could be too low for 1150MHz, so pushing it a bit, towards 1.3V, should help too.
Good luck.
Click to expand...
Click to collapse
Thanks for the quick answer. The strange thing is that separately it's working perfectly fine without changing any voltages. Like I said, separately I can go all the way to 1200 MHz CPU freq without changing ARM voltage and system is totally stable (I have a good silicon...). So there is no need to push my voltage for 1150 MHz and I already tested that option. Also bus freq is working fine separately but not together with changing CPU freq. Adding voltage for bus freq makes it even unstable, while it is working stable when changing bus freq separately on default Int. voltages. Very strange but will sertainly do more testings and find the sweet spot....
Thanks again
-Sam-
I noticed a strange behavior when I was testing a new frequency. For example 400mhz:
min 100mhz max 400mhz, stock int V; the phone freezes with >1V if I try to wake it from idle, but it passes every stress test (performance gov.) with >1V..
SamHaLeKe said:
Thanks for the quick answer. The strange thing is that separately it's working perfectly fine without changing any voltages. Like I said, separately I can go all the way to 1200 MHz CPU freq without changing ARM voltage and system is totally stable (I have a good silicon...). So there is no need to push my voltage for 1150 MHz and I already tested that option. Also bus freq is working fine separately but not together with changing CPU freq. Adding voltage for bus freq makes it even unstable, while it is working stable when changing bus freq separately on default Int. voltages. Very strange but will sertainly do more testings and find the sweet spot....
Thanks again
-Sam-
Click to expand...
Click to collapse
Default voltage is higher @ 1.2 than @ 1GHz. It won't magically change because you did use LiveOC.
reborn90 said:
I noticed a strange behavior when I was testing a new frequency. For example 400mhz:
min 100mhz max 400mhz, stock int V; the phone freezes with >1V if I try to wake it from idle, but it passes every stress test (performance gov.) with >1V..
Click to expand...
Click to collapse
To get one isolated step stable is one thing, to get it stable with others is another story. Nothing strange in that, it's as old as the world of clocks ^^
please share your settings which is good in performance.... Im already blurred...
Sent from my GT-I9000 using Tapatalk
DaxIΠFIΠITY said:
please share your settings which is good in performance.... Im already blurred...
Sent from my GT-I9000 using Tapatalk
Click to expand...
Click to collapse
Try the once that I use, first page 5 or 6th post. My phone is blazing fast.
Hey everyone, I figured we deserved to have this thread as I hadn't seen one yet. I'm forever trying to tweak and adjust my voltages on my NS4G and I just wanted to see what everyone else was running and with what degree of success.
List your ROM/Kernel combo and your OC/OV/UV settings!
Currently:
CodenameAndroid 1.4.0
Matr1x v17.5 cfs
1300/400 SavagedZen
Deep Idle on.
@1.3GHz - 1430mV
@1.2GHz - 1350mV
@1GHz - 1280mV
@800MHz - 1205mV
@400MHz - 1030mV
...Stability tests are ongoing.
Rom: MIUI 2.3.9 (ICS)
Kernel: Matrix 17.5
Live OC: 105
Min: 210
Max: 1050
Voltage: All stock voltages dropped by 25
Scheduler: Deadline
Deep Idle: On
The voltages being dropped immensely helps battery life. I get at least 12 hours with heavy use and about a day and a half with light use.
Sent from my Nexus S 4G using xda premium
Almost same..
http://forum.xda-developers.com/showthread.php?t=1335429
Undervolting doesn't actually help the battery :$.... Well by much anyways. If it does it will be like a 2% difference... Instability doesn't seem worth it for 2%
Nexus S (GSM i9020a)
AOKP (Milestone 4)
Air Kernel (3.45)
OC 800/100 (Lionheart)
Live OC (100 - Noop)
v6 Supercharged
309041291a said:
Undervolting doesn't actually help the battery :$.... Well by much anyways. If it does it will be like a 2% difference... Instability doesn't seem worth it for 2%
Nexus S (GSM i9020a)
AOKP (Milestone 4)
Air Kernel (3.45)
OC 800/100 (Lionheart)
Live OC (100 - Noop)
v6 Supercharged
Click to expand...
Click to collapse
I always doubted bedalus claims on the matter (and even communicated with him through PM).
Time permitting, I'd like to do some tests myself about undervolting, because I am pretty sure it has an impact.
Anyway, my settings are in my signature.
polobunny said:
For those interested, I spent the night yesterday testing out ARM voltages on my phone that were absolutely stable but hopefully under the stock ones to save more battery.
Had a look at morfic's git for a good idea, so thanks to him.
Might not work on your phone, so use at your own risk.
100MHz 875mv (75mv under stock)
200MHz 875mv (75mv under stock)
400MHz 900mv (150mv under stock)
800MHz 1125mv (75mv under stock)
1000MHz 1225mv (25mv under stock)
Click to expand...
Click to collapse
Some people have a problem with 400MHz at 900, 950mv seems good for anyone though.
AOKP milestone 4
mart1x cfs v18.0
both settings have been run for days without reboot
setting no.1
840/100 smartassv2 noop
selective liveoc 105
freq arm int
840 1075 950
400 950 950
200 850 950
100 850 900
setting no.2
1000/100 smartassv2 noop
freq arm int
1000 1150 1000
800 1050 950
400 950 950
200 850 950
100 850 900
lolokman said:
AOKP milestone 4
mart1x cfs v18.0
both settings have been run for days without reboot
setting no.1
840/100 smartassv2 noop
selective liveoc 105
freq arm int
840 1075 950
400 950 950
200 850 950
100 850 900
setting no.2
1000/100 smartassv2 noop
freq arm int
1000 1150 1000
800 1050 950
400 950 950
200 850 950
100 850 900
Click to expand...
Click to collapse
What's the battery like? And I believe the matrix kernel is already Undervolted by default.
Nexus S (GSM i9020a)
AOKP (Milestone 4)
Air Kernel (3.45)
OC 800/100 (Lionheart)
Live OC (100 - Noop)
v6 Supercharged
Just got over 1 day of battery dropping all stock voltages by 25.
Codename 1.5.5
Matr1x 18.0 cfs
1200/200 lazy
Sent from my GT-P7510 using XDA Premium HD app
gear.h34d.2012 said:
Just got over 1 day of battery dropping all stock voltages by 25.
Codename 1.5.5
Matr1x 18.0 cfs
1200/200 lazy
Sent from my GT-P7510 using XDA Premium HD app
Click to expand...
Click to collapse
On-screen time? With a screen
Nexus S (GSM i9020a)
AOKP (Milestone 4)
Air Kernel (3.45)
OC 800/100 (Lionheart)
Live OC (110 - Noop)
v6 Supercharged
lolokman said:
AOKP milestone 4
mart1x cfs v18.0
both settings have been run for days without reboot
setting no.1
840/100 smartassv2 noop
selective liveoc 105
freq arm int
840 1075 950
400 950 950
200 850 950
100 850 900
setting no.2
1000/100 smartassv2 noop
freq arm int
1000 1150 1000
800 1050 950
400 950 950
200 850 950
100 850 900
Click to expand...
Click to collapse
Interestingly I'm able to undervolt quite a lot more than I've ever been able to using this smartassv2/ noop setup. I'm not sure what it is but anytime I'd try to under volt matrix v18 any below stock I'd get reboots but with this setup I'm close to the values you've set and it's been stable so far. Its not undervolted as heavily and I don't have liveoc enabled at the moment. I'm just enjoying the ability to under volt it to where it is at the moment.
Sent from my Nexus S using Tapatalk
Currently using Franco kernel 1.2 and I dropped the stock voltages by 50(I was feeling a bit adventurous). Getting pretty nice battery life and stable(no reboots yet).
Sent from my Nexus S using Tapatalk 2 Beta-2
polobunny said:
I always doubted bedalus claims on the matter (and even communicated with him through PM).
Time permitting, I'd like to do some tests myself about undervolting, because I am pretty sure it has an impact.
Anyway, my settings are in my signature.
Some people have a problem with 400MHz at 900, 950mv seems good for anyone though.
Click to expand...
Click to collapse
Not sure if lower voltages, would make for less amp/wattage draw,
Sent from my Nexus S 4G using Tapatalk
what exactly is the difference between arm and int voltage? and what should i drop? both?
i have been undervolting with the internal voltage controle of aokp and this only drops int voltages //edit: After taking a second look, it seems like its arm thats changing...
I've dicked around with undervolting since my Evo days, and honestly, it does nothing for battery life. Multiple kernel developers - not to mention bedalus's tests - confirm this.
Undervolting seems useful only for providing an excuse for futzing with your phone. Any power savings are likely anecdotal or psychological.
i start from now the undervolitng , i chek and after i post my expirience .
gear.h34d.2012 said:
Just got over 1 day of battery dropping all stock voltages by 25.
Codename 1.5.5
Matr1x 18.0 cfs
1200/200 lazy
Sent from my GT-P7510 using XDA Premium HD app
Click to expand...
Click to collapse
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
There it is.
gear.h34d.2012 said:
There it is.
Click to expand...
Click to collapse
I bet your phone was on idle most of the time.
currently running with these voltage settings:
freq arm int
1200 1350 1125
1000 1225 1075
800 1075 1000
400 950 1000
200 875 975
Governor:SmartassV2
Scheduler:noop
mix/max:200/1200
Rom:Codename Android 3.6.0
Kernel:AirKernel 65fps+BlueColor HBM #211
no reboots so far, but i feel that i've not reached the down-limit point! especially for 1000mhz freq
i'm default
please give me description about voltages.
Recommendations:
Preferred:
interactiveX governor with sio scheduler (better battery life due to cpu speed limited to lowest value, 600 MHz, when the screen is off)
Acceptable:
smartassV2 governor with sio scheduler (same performance when the display is on, but full processing power still available with display off; risk of high battery usage)
Not advisable:
noop scheduler (no performance gain, but causes major stuttering and lag in user interface and apps)
2013-04-14 update: see post #5 for a battery saving test of those 2 governors, with the display on. The conclusion remains the same, but it also shows the better cpu frequency ramping logic of interactiveX.
Long version:
Thanks to Omar-Avelar kernel, I was able to perform some tests, to find out which governor and scheduler are best for the xt890. I restricted myself to smartassV2 and interactiveX, which are generally considered best governors. Both are based on the interactive governor, which is the default in motorola JB retail kernel (ICS used the less than optimal ondemand governor instead).
smartassV2 scales rapidly to an intermediate frequency, and more slowly to the max frequency. Different optimal frequencies are used for screen on and off, and it scales down rapidly. There is no limit for highest frequency when the screen is off. It aims to provide a good balance between performance and battery.
interactiveX fine tunes the interactive logic to minimize unnecessary cpu spikes, and adds a suspend/wake logic which limits the cpu frequency when the screen is off. It aims to maintain the performance of the interactive governnor, with more stability and better battery life.
For the schedulers, I tested the noop (motorola default in JB and ICS) and sio schedulers.
noop is simple and fast. Its I/O pattern is very suitable for flash drive (performs very badly on normal hard drives though, due to the random nature of its I/O). Battery friendly due to low overhead and few CPU cycles. However, there is no starvation detection, and long requests can lock down the CPU.
sio is similar to noop with starvation detection, which guarantees smoothness. Good ratio of writes to read ensure that all transactions are equal. The downside is that in theory read speeds are not as good as with other schedulers.
Test method:
I think most synthetic tests are a poor benchmark, as they will often highlight a particular flaw or strength, which has little impact in real life usage. Therefore, I did the following:
launching Real Racing 3 game (average of 2)
Epic Citadel benchmark
large file copy (1.38 GB) from external SD to internal storage while playing music (average of 2)
large file copy (1.38 GB) while playing HD movie with HW+ decoding with MX Player (average of 2)
large file copy (1.38 GB) while playing HD movie with SW decoding with MX Player (average of 2)
gameplay Real Racing 3
large file copy (1.38 GB) cancelled after 10%
Test results:
Code:
1 2 3 4 5
interactiveX + noop 52s 56.9fps 98s(a) 124s 84s(b)
interactiveX + sio 52s 55.5fps 97s 129s 96s
smartassV2 + noop 51s 56.3fps 103s(c) 103s 89s
smartassV2 + sio 52s 56.0fps 125s 101s 97s
(a) music stopped 3 times, for approximately 1s each.
(b) movie stopped for 3s.
(c) music stopped 1 time, for 10s.
6: All combinations behaved similarly during Real Racing 3 gameplay: frame rate too low, with (very) occasional stuttering. Epic Citadel gameplay was smooth in all cases.
7: with noop scheduler, cancelling file copy always hangs for a very long time; whereas with sio it is instant. In addition, the android UI and responses to events (eg: adjusting volumes) is very laggy on noop during large file operations.
Conclusion:
For schedulers, the choice is clear: sio is much superior to noop. The noop scheduler does not seem to offer any io speed gain over sio, but adversely affects performance.
For governors, no difference was observed between smartassV2 and interactiveX. However, when the display is off, interactiveX caps the maximum frequency to the low value (600 MHz), while smartassV2 quickly ramps up the frequency; this should result in significant battery savings with interactiveX, especially when affected by bugs like deep sleep prevention due to rx_wake wakelocks.
And for things like that it is why I definetly hate the noop scheduler chaotic response!! :silly:, thanks for the real-life information!
And definetly interactiveX is good for some cases where you get a lot of wakelocks with the screen off as you point out, buth both seem to respond pretty fast. But for sure for our Intel Atom the most deep-sleep (C9) state time we can get is the better, but that depends a lot on people's uses on the phone!
Would love to see some benchmarks with "LAB" (new governor by samsung)
YaPeL said:
Would love to see some benchmarks with "LAB" (new governor by samsung)
Click to expand...
Click to collapse
Does not sound good for our device, our 1C/2T (hyper-threaded) Atom CPU does not need to scale two 'threaded' frequencies, it runs to the same operating frequency for both, I don't see a benefit in using LAB for us.
Screen on battery test
I was interested in comparing how smartassV2 and interactiveX behave in scaling the CPU when running with the display on, since this is when most of the battery is drained. So, I set up to do run a few "real life" tests in identical situations:
display brightness set to manual mode, absolute minimum value
display timeout set to never
i/o scheduler set to sio
I then ran the following tests, switching governor in init.d if needed, after a fresh reboot:
30 mins streaming online radio
30 mins local music playback
4 mins local video playback
titanium backup: redo all backups
bike race: play levels 1,2,3,4
camera: take 5 hdr pictures with no flash
camera: take 1 min hd video with no flash
3 mins online youtube video
I expected smartassV2 to be the most efficient, since it ramps quickly to an intermediate frequency, then more slowly to the maximum frequency.
interactiveX ramps up faster to the maximum frequency. However, while keeping an eye on the frequency graph, I saw something I did not expect:
streaming radio test:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
local music playback test:
interactiveX does and awesome job of not ramping up the cpu frequency unnecessarily! Surprising, isn't it? I had not realised how good IMosey On optimisations are. The smartassV2 intermediate frequencies are also clearly visible, and it does its job well; but it is no match for interactiveX.
CPU states report and battery usage:
... kind of disappointing: despite the clearly better ramping logic in interactiveX, there is no measurable difference in battery usage. Even with the brightness set to the absolute minimum, the display remains the most power hungry component by far, making all other kinds of power saving measures, while the display is on, almost ineffective.
Oh well, at least I know which governor behaves better. And let's not forget my previous test which showed both governors offer very good similar performance in term of responsiveness and fluidity, but more importantly, interactiveX can help prevent high cpu usage with the screen off.
Thanks for your great suggestion InteractiveX is working pretty good for me. Especially when listening to music. While screen is off there is a very low batterydrain. However when I unlock the phone there is sometimes a little bit of lag for me. But I think this can be fixed with a few tweaks. I'm using v1.7.3
Gesendet von meinem XT890 mit Tapatalk 2
Btw, smartassV2 does have a cap logic and it is enabled on the current Kernel you guys are running. No wonder why you can(not) see much difference.
Code:
/*
* The "ideal" frequency to use when suspended.
* When set to 0, the governor will not track the suspended state (meaning
* that practically when sleep_ideal_freq==0 the awake_ideal_freq is used
* also when suspended).
*/
#define DEFAULT_SLEEP_IDEAL_FREQ 600000
static unsigned int sleep_ideal_freq;
:
:
:
Code:
inline static void smartass_update_min_max(struct smartass_info_s *this_smartass, struct cpufreq_policy *policy, int suspend) {
if (suspend) {
this_smartass->ideal_speed = // sleep_ideal_freq; but make sure it obeys the policy min/max
policy->max > sleep_ideal_freq ?
(sleep_ideal_freq > policy->min ? sleep_ideal_freq : policy->min) : policy->max;
} else {
this_smartass->ideal_speed = // awake_ideal_freq; but make sure it obeys the policy min/max
policy->min < awake_ideal_freq ?
(awake_ideal_freq < policy->max ? awake_ideal_freq : policy->max) : policy->min;
}
}
I'm running the cfq scheduler with the interactivex governor, and my battery life performance has been absolutely stellar.
Sent from my XT890 using xda app-developers app
What do you think about activating sched_mc_power_savings? I use since a few days and it seems there are no disadvanteges.