I/O Scheduler - A quick test - Galaxy S I9000 General

After trying to decide which I/O scheduler to use, I decided to try running the Androbench storage performance benchmark tool for the I/O schedulers,
cfq, deadline, noop,vr and sio to find out.
All tests run on deodexed JVQ on Galaxian [email protected]
The file system used was /data (ext4)
I used standard buffer sizes (256Kb for sequential I/O) and (4kb for random I/O) To speed the tests up, I used a read file size of 16Mb and a write file size of 1Mb
I did test using the recommended sizes of 32MB and 2MB) but the rates were the same so I kept the smaller sizes to speed up the tests
I know its not very scientific but provides a rough estimate of the relative performance.
MBRS =MB/s sequential reads
MBWS =MB/s sequential writes
RRIOPS =random reads IO's/sec
RWIOPS=random writes IO's/sec
Test #1
MBRS MBWS RRIOPS RW IOPS
cfq 19.40 4.8 1014 35
deadline 19.39 6.1 1119 42
noop 19.47 9.0 1098 43
vr 17.76 7.7 1105 45
sio 18.30 6.9 1152 49
Test #2
MBRS MBWS RRIOPS RWIOPS
cfq 19.18 3.3 1057 33
deadline 26.27 5.5 1151 43
noop 19.08 8.6 1059 41
vr 19.55 6.4 1120 50
sio 19.16 6.3 1122 45
Test #3
MBRS MBWS RRIOPS RWIOPS
cfq 19.25 3.8 1120 34
deadline 18.97 7.8 1146 43
noop 19.59 9.3 1161 45
vr 19.14 6.6 1227 53
sio 19.46 7.5 1172 50
my conclusion - use NOOP or SIO(if stable)
As you can see, sequential reads (MB/s) and sequential IOPS are very high so I don't think we need to worry about these too much, as you know (from Quadrant) it's writes that are VERY slow
Unsurprisingly, we can see that the slowest scheduler is the default CFQ.
The noop scheduler produced the fastest sequential write rate on all runs.
the VR and SIO schedulers produce the greatest number of IOPS for random writes.
Think I will use the noop scheduler as it uses little CPU and is fairly well established and its not far off the random write IOPS rate.
Is someone can be arsed, I think we should test with all background processes off, using a 1Ghz speed, and run say 10 sets of tests and order the results using a spreadsheet.
Would be good to see these results run against a RFS file system too!!!
Would also be good to test I/O against say a /cache file system with journalling switched off to unserstand the actual improvement.
I am surprised at the read speed, the IO rate is equivalent to 5 or 6 15K SA/FC physical disks - Whahoo!!!!!

Hi,
Last evening I updated my kernel to Galaxian 2.0 and after reading your test results I set my I/O scheduler to noop and this morning... I found my phone hot, checked the battery status and had the nasty surprise of finding that Android OS has taken 41% of my battery and the phone didn't sleep almost all night. Did you have this problem? I'm trying to figure out whether the Android OS bug returned because of the kernel update or the I/O scheduler change.
Thanks.

Hmm, used system panel to check android and overhead for me was very low, I use juice defender and lose about 2 or 3% battery overnight, phone is cool, try wiping cache, dalvik and fix permissions and reboot once or twice, if the same change to deadline and observe difference
Sent using geek power

I am getting quite different values
Seq read 12,75 MB/s
Seq write 4.0 MB/s
Random read 1596 IOPS(4k), 6,23MB/s
Random write 41,74 IOPS(4k), 0,16 MB/s

Brotuck said:
I am getting quite different values
Seq read 12,75 MB/s
Seq write 4.0 MB/s
Random read 1596 IOPS(4k), 6,23MB/s
Random write 41,74 IOPS(4k), 0,16 MB/s
Click to expand...
Click to collapse
which scheduler you got that results?
Im going to test noop with semaphore 1.3.3

My benchmark results!
Hey, I read countless threads on I/O schedulers, but most of them were based on opinions or feelings... except this one! I want to contribute, so I decided to run my set of benchmarks too.
I used the latest AndroBench 2.0 from the market, default/recommended settings. Each I/O scheduler was tested three times, and the numbers below are the averages of the results.
Samsung Galaxy S GT-I9000
Firmware: stock 2.3.3 w/root (RSJV3, latest official firmware in Italy)
Kernel: Galaxian 2.4
File system: RFS
No overclock
Cpu governor set to "performance" to make sure frequency doesn't fluctuate during test runs.
I created a couple of simple comparison indexes:
Read Index = SeqRead * RndReadMB * RndReadIOPS
Write Index = SeqWrite * RndWriteMB * RndWriteIOPS * 100
Here are the averages. You can download the spreadsheet with all the results, it's attached to my post.
--------------noop-----vr-------sio------cfq------deadline
Read Index....57750....57305....54328....58849....60013
Write Index...31339....24051....27602....23233....18628
{
"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"
}
My conclusion: I agree with gsw5700, NOOP is definetely the most interesting I/O scheduler for our SGS even on RFS file system. Satisfactory read speed and best-of-the-class write speed!

Here are my results (average of 3 runs)
seq.read seq.write r-read r-write
VR: 12.5 - 4.22 - 5.82 - 0.21
SIO: 12.61 - 3.86 - 6,07 - 0.207
BFQ: 12.8 - 3.93 - 6,01 - 0,18
Noop:12.6 - 4,05 - 6,03 - 0,208
(seq= sequential; r-= random; all values in MB/s)

I've heard BFS is supposedly very good, but can't find any data. Could someone run a test of it against Noop etc. so we can all see...
Thanks
Mike
Garbled meaning induced by swype when posting from XDA app on SGS I9000.

Uhm... never heard of BFS before, which kernel do you have?

ZioGTS said:
Uhm... never heard of BFS before, which kernel do you have?
Click to expand...
Click to collapse
BFS is most likely brain **** scheduler.

TalonDEV 0.4.2 0.4.3
added BFQv2-r1 I/O Scheduler (SIO default)

BFS is a CPU scheduler which has nothing to do with Noop,sio,vr,cfq which are i/o schedulers
A BFQ test is a few posts up....

.:Crack:. said:
Here are my results (average of 3 runs)
seq.read seq.write r-read r-write
VR: 12.5 - 4.22 - 5.82 - 0.21
SIO: 12.61 - 3.86 - 6,07 - 0.207
BFQ: 12.8 - 3.93 - 6,01 - 0,18
Noop:12.6 - 4,05 - 6,03 - 0,208
(seq= sequential; r-= random; all values in MB/s)
Click to expand...
Click to collapse
I did another test with BFQ and noop (5 runs each) and noop won.
(BTW i was a V(R) fanboy before )

.:Crack:. said:
BFS is a CPU scheduler which has nothing to do with Noop,sio,vr,cfq which are i/o schedulers
A BFQ test is a few posts up....
Click to expand...
Click to collapse
Whoops! Sometimes a little bit of knowledge makes me dangerous!... But this time I got away with just looking silly!!!
Thanks for correcting me... making mistakes its often the best way to learn!
Mike
Garbled meaning induced by swype when posting from XDA app on SGS I9000.

Interesting test, however I am troubled with my results. I tried running this Androbench software and it seems that I have a lot of fluctuations.
For example during one test I get 4.92mb/s write speed @ noop and then during second test I get 1.52mb/s write speed @ noop test and last one was 2.02mb/s. I mean write speed is write speed you can have minor fluctuations say 4.92mb/s on the first run and 4.90 on the second run. This is of course while the device was not used.
If I run a benchmark software on my pc, I will get almost all the time identical results.
So either there is something wrong with teh software or something else is at play.
Also this guy from over here: http://www.team-continuum.net/home/index.php?topic=290.0 claims that operating on different CPU governors also has impact on benchmark results.

Theoretically, SIO is the best.
Benchmark can't represent real life situations as I/O transactions are mostly spurious rather than 1 big chunk of data to and fro (on which this is what benchmarks are doing).
More info at my sig (Android Optimization Tips). CTRL-F for scheduler.

What does the phone do most of, i guess it reads much more than it writes so wouldn't it be better to use a fast reading with satisfactory write speeds scheduler?

bobdoblo said:
What does the phone do most of, i guess it reads much more than it writes so wouldn't it be better to use a fast reading with satisfactory write speeds scheduler?
Click to expand...
Click to collapse
+1
and what about the row sceduler
row supposed to be the best fro read, its designed for read or im mistaken?

herc2k said:
+1
and what about the row sceduler
row supposed to be the best fro read, its designed for read or im mistaken?
Click to expand...
Click to collapse
...I ran some tests for schedulers, including row and for the test the row seems to be the best, I'm using it on JB 4.2...

What about the Zen and Row I/O schedulers?

Related

RFS is faster than ext4 (or is it?)

Please refer to my post yesterday when comparing I/O schedulers on Galaxian V1.8 running at 1Ghz using the Androbench storage benchmark tool.
I came to the conclusion that there is actually not much in it and that I would use the noop I/O scheduler.
I decided (whilst on the train) to compare these results to RFS mountred file systems using the Androbench storage benchmarking tool.
Androbench runs sequential reads, sequential writes, random reads and random writes and displays MB/s throughput for sequential I/O operations, and IOPS for random IO opertions.
Typical average I/O benchmark results using /data mounted as EXT4 (noop)
Sequential Reads: 19 MB/s
Sequential Writes: 9 MB/s
Random Reads: 1161 IOPS
Random writes: 45 IOPS
I then converted all file systems to rfs and re-ran Androbench @1Ghz
Typical average I/O benchmark results using /data mounted as RFS (noop)
Sequential Reads: 19 MB/s
Sequential Writes: 9 MB/s
Random Reads: 1150 IOPS
Random writes: 91 IOPS
The results are the same except random writes are at least twice as fast on RFS than they are on EXT4 - WTF!!!
I then ran some Quadrant tests and guess what, I got a score of approx
1750 on RFS against a score of 2200+ on EXT4 - WTF!
Hang on, the only thing I have changed is the file system and I've changed it for a faster file system, yet Quadrant returns a lower score??????
Guess I could run the tests using a different benchmark but I've stuck with Quadrant as this is the standard test everyone uses....
If RFS is faster, why does quadrant return lower scores?
Is ext4 only needed to get a reasonable quadrant score?
Comments Folks !!!!!
Try a benchmark for database operations - as quadrant also measures this and they depend on the filesystem too - maybe the difference pops up there ...
Sent from my GT-I9000 using XDA App
RFS IS Faster then EXT4 !!
Used RL benchmark which uses SQLite database to perform :-
1000 inserts
25000 inserts within transaction
25000 inserts into indexed table in a transaction
100 selects with no index
1000 selects on string comparison
create index
5000 selecsts with index
1000 updates without index
drop table
This obviously uses CPU and RAM but the greatest influence will be I/O.
Note that RFS and EXT4 tests were both performed after a fresh file system conversion.
RFS RESULTS (1Ghz CFQ I/O scheduler)
=============================
Run #1 42.171 secs
Run #2 55.54 secs
Run #3 53.417 secs
EXT4 RESULTS (1Ghz CFQ I/O scheduler)
===============================
1Ghz CFQ scheduler
Run #1 64.981
Run #2 74.136
Run #3 73.441
Well, there we have it, RFS is faster than EXT4 (at least after a fresh install), I did find an article stating that Quadrant doesn't cope very well with Samsung RFS file system which is why Quadrant results look lower than what they really are.
I think the logical thing to do is simply run with the RFS file system, and check the results of Androbench say weekly so see if results get worse as the FS fragments. Beats having to convert to EXT4 and proves that Quadrant is producing dodgy results when running on the Samsung RFS file system.
amazing but I had the stock firmware with RFS and now I have the lagfix with ext4, now is much faster... that's just a benchmark I think...
Would be very interesting if someone checked it after being on rfs for a while. I'm always on ext4 since i thought rfs would be slower after some time. And i think most people are on ext4 for this reason
Sent from my GT-I9000 using XDA App
Why not use both fs? I have my system partition on rfs (as is should be read only anyway) and have data/dbdata on ext4 and cache on ext4nj. Latest speedmod here. Absolutely smooth.
Bavaria85 said:
Would be very interesting if someone checked it after being on rfs for a while. I'm always on ext4 since i thought rfs would be slower after some time. And i think most people are on ext4 for this reason
Sent from my GT-I9000 using XDA App
Click to expand...
Click to collapse
even i thought et4 is fast but i saw afta installin plenty apps its the same as stock ,no diff....so i am on rfs ,no lagfix anything,only rooted thts it...well the benchmark is less compard to et4 but i think rfs works fine for me on gb....
I don't know if it's just me but I do find RFS faster than EXT4.
Used to be on speedmod ext4 but I found apps such as worms, PvsZ ran considerably laggy on EXT4.
Converted back to RFS and lagging seems to be gone.
(sometimes still lags a bit but not as bad as on EXT4)
In my experience, RFS has come a long way and it is just as good as EXT4 now.
From now I'm going to stay with stock RFS.
Will check out speed in a week to see how well rfs is running to see if fragmentation slows it down. Perhaps we need to look at a new file system like btrfs which ubuntu are thinking about using as new default!
Sent using geek power
gsw5700 said:
Will check out speed in a week to see how well rfs is running to see if fragmentation slows it down. Perhaps we need to look at a new file system like btrfs which ubuntu are thinking about using as new default!
Click to expand...
Click to collapse
RFS is a FAT based filesystem, right? Fragmentation will definitely slow it down with the time. And that is something that does not happen with more advanced filesystems like xfs, ext4 or btrfs.
Using btrfs is a very good idea. This is especially true, as it also has some enhancements for flash based storage. But not as long as it is still not considered stable by kernel developers....
BTW. don't trust any benchmark that you have not falsified yourself
Try damiens latest ext4 and no jounals. I'm getting quadrant score 3300+.
Sent via ET and he phoned it in
me_ashman said:
Try damiens latest ext4 and no jounals. I'm getting quadrant score 3300+.
Sent via ET and he phoned it in
Click to expand...
Click to collapse
This thread is actually exactly NOT about quadrant scores because they don't tell anything. I hear people getting 5000+ by just setting up things that quadrant likes. This doesn't tell you anything about the actual performance of your phone.
The only reason I use quadrant or other benchmarks is to see 2d/3d performance. Although this doesn't tell you everything since framerate is often capped at 56/67 hz.
Is this possible with SGS stock-based ROMs?
http://www.xda-developers.com/android/enter-godmode/
No idea if it is possible but i think it is since partition is not that much device related.
Would be cool if some Dev took a look at this...
Sent from my GT-I9000 using XDA App
Hybrid Core said:
amazing but I had the stock firmware with RFS and now I have the lagfix with ext4, now is much faster... that's just a benchmark I think...
Click to expand...
Click to collapse
+1 my sgs is definitely faster with ext4 than with stock RFS.
Inviato dal mio GT-I9000 usando Tapatalk
Been using rfs for a while now and can't really feel any difference.
Sent using geek power
Bavaria85 said:
This thread is actually exactly NOT about quadrant scores because they don't tell anything. I hear people getting 5000+ by just setting up things that quadrant likes. This doesn't tell you anything about the actual performance of your phone.
The only reason I use quadrant or other benchmarks is to see 2d/3d performance. Although this doesn't tell you everything since framerate is often capped at 56/67 hz.
Click to expand...
Click to collapse
Cool no probs
Sent via ET and he phoned it in
Found it!
Usefull thread...thanks!!
Subscribing
Posted you some questions on the Galaxian thread
You can answer them here if you like
Thanks again!
elhennig said:
.............knip............
BTW. don't trust any benchmark that you have not falsified yourself
Click to expand...
Click to collapse
RIGHT! :
{
"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"
}
My quadrant is bigger than yours:::
http://androidspin.com/2010/08/23/my-quadrant-is-bigger-than-your-quadrant/
The only filesystem that I've felt significantly faster than rfs is ext2. ext 4 feels a tad SLOWER than rfs and can fragmentation affect flash devices? I believe fragmentation is only an issue with magnetic drives...
Anyway, ext2 should be great since you rarely have a power outage (even if the battery runs out, the phone shuts down...) I used all ext2 with damian's kernel (back a while ago when I used it) and you could tell apps were snappier and started much faster, while on ext4 I even felt that the phone slowed down. I blame journaling (which imho isn't really needed)

[GUIDE] Galaxy S3 CPU/GPU overclocking/undervolting (Updated 12/08/2012)

Only for international s3 variant ​Disclaimer: Im not responsible if something funny happens to your device Read the guide as much as you want before proceeding with overclocking
Overclocking and undervolting is highly debatable, some say its good and some say its bad... so its upto you to proceed further
First rule of overclocking.. Your Mileage May Vary​
Most of the people here in xda do know about overclocking and stuffs but still there are many who are so eager to overclock their beast . Hence this guide.
I have given some good info below about these stuffs as far as i can , you can always use google to get further details.
What is overclocking?
Overclocking is the process of making a computer or component operate faster than the specified clock frequency by the manufacturer by modifying system parameters. One of the most important techniques is running at a higher clock rate (more clock cycles per second; hence the name "overclocking")
Operating voltages may also be changed (increased), which can increase the speed at which operation remains stable.
Advantage:
You can get more performance from your chipset, though s3 is already fast you can see the visible changes in application execution time and much more like instant response time.
Disadvantage:
* Overclocking is always risky if something is configured improperly and may also result in permanent damage of your hardware. As long as it is done safely you are good to go.
* You may see some increased power consumption.
* Extreme overclocking might kill your hardware.
Undervolting :
The process where you provide less voltage to your cpu rather than the stock voltage.
Advantage:
* Reduced heat from your device.
* Good battery life.
Disadvantage:
* Extreme undervolting will make your device unstable and some times even end up with a boot loop.
Dividing the guide into 2 parts CPU and GPU
CPU
The max clock that can be used on our s3 is 1800mhz and the minimum is 100 mhz. Below given is the stock voltage for all clocks for your reference.
1800mhz : 1450mv
1700mhz : 1400mv
1600mhz : 1350mv
1500mhz : 1325mv
1400mhz : 1275mv
1300mhz : 1238mv
1200mhz : 1175mv
1100mhz : 1125mv
1000mhz : 1088mv
900mhz : 1050mv
800mhz : 1000mv
700mhz : 975mv
600mhz : 963mv
500mhz : 938mv
400mhz : 925mv
300mhz : 900mv
200mhz : 900mv
100mhz : 900mv
Requirements:
1. Kernel with overclocking support.
2. ns tools to change frequency/voltage.(you can use the app of your choice here).
3. set cpu and stability test to test the stability of CPU.
4. Some patience.
Step 1:
Set the current clock you want to test via ns tools. (Select max frequency in cpu tab).
Step 2:
Open set cpu's cpu stress test and run it for atleast 10 minutes. If you didnt get any errors on those 10 minutes and the test completed successfully then the clock is ready for daily use
Step 3:
Now for undervolting use the same ns tools and reduce the voltage by -25mv.
Repeat step 2.
you can reduce the voltage further by -25 mv after the completion of stress test until the app become unstable. (Advanced users can try reducing -50mv )
Step 4:
Repeat step 1,2 and 3 for every possible cpu clock you see in ns tools.
Note the stable cpu voltage for every clock, once you finish testing all your clock values save it as a profile in nstools and set it on boot.
Voila !!! now you have finished overclocking/ under voting your beast The very same guide can be used to underclock you cpu.
Notes:
1. Not all chips are capable of running at higher speeds like 1800 mhz. Those speeds are highly experimental.
2. Recomended max overclocking is 1600 mhz.
3. If your device gets hotter allow the device to cool for few minutes before starting the test.
4. Combining the overclocking and undervolting will give you the best of both the worlds
In case of emergency:
1. If your device becomes unstable and not responsive either press the power button until your device restarts or pull out your battery.
2. If you end up with the boot loop due to extreme undervoltage below is the cwm flashable to reset your voltage.
http://www.mediafire.com/?e7rk8cu3gw8usqj
Though quadrant is comletely outdated and is not recommended am just adding this screenshot to show the potential of overclocking the below screenshot is tested with 1600mhz(checkrom 3.5 +siyah)
{
"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"
}
*********************Do note me if any information is incomplete or wrong ill change it.*******************************
Credits :
* wikipedia
* xda and its amazing developers for their work on the kernels.
* ultimate kernel cleaning script (@buster041284 ).... have edited the cwm zip to wipe init.d
GPU OVERCLOCKING
DIsclaimer :
*** I dunno if any other kernels support the very same overclocking , if it is possible kindly inform me ill update it in the post.
*** Using custom kernel or siyah kernel is purely of your choice, im not held responsible if something goes wrong​
I would say GPU is by far the weakest hardware in s3, its weak in the sense that its using the very same architecture used for galaxy s2 with some additional improvements to clock it higher. Thanks to the head room given, though the maximum clock for our GPU is 440 Mhz we can over clock it to around 700 Mhz which is roughly 70% more than the stock. Yes it is possible. Thanks to our developer "gokhanmoral" who made it possible.
Advantage:
* Games can be made to run more smoother.
* Much smoother UI.
By default stock mali 400 GPU has 4 steppings , its clock frequencies are as follows
160 Mhz - 875 mv
266 Mhz - 900 mv
350 Mhz - 950 mv
440 Mhz - 1025 mv
Once you install siyah you will be having an additional GPU stepping(totally 5) along with the following available frequencies to choose from.
54 Mhz
108 Mhz
160 Mhz
266 Mhz
275 Mhz
300 Mhz
333 Mhz
350 Mhz
440 Mhz
533 Mhz - 1025 mv
600 Mhz - 1050 mv
640 Mhz - 1050 mv
666 Mhz - 1075 mv
700 Mhz - 1100 mv
800 Mhz - xxxx mv
The voltages for the above additional clocks are purely approximated values. So you can either undervolt or overvolt it as per your need.
Sample screenshot of stweaks gpu interface
REQUIREMENTS:
1. Siyah Kernel 1.5 beta 6 or higher
2. Stweaks
3. GLbenchmark 2.5(Egypt Classic and Egypt HD)
4. Basemark ES 2.0 Taiji
5. Nenamark
Testing methods and procedure:
Step 1:
Install siyah kernel and other mentioned apps and get used to stweaks.
Step 2:
Select the gpu frequency in stweaks along with the recommended voltage and apply the settings.
Step 3:
Open the above mentioned benchmark suits and run it.. if you feel any stuttering or artifacts when running the benchmark then you need some more voltage. Exit the suite and increase the voltage in stweaks by + 25 and restart the benchmark.
(** Egypt HD benchmark does stutters with currently all the mobile available in this world as the test is designed to stress the GPU to its maximum.)
Step 4:
Repeat step 2 and 3 if you need underclock/undervolt your GPU.
Notes :
* Though there are many available frequencies to choose from i would recommend not to use 54 and 800 mhz.
* Make your GPU steppings gradual (Eg : 1xx-2xx-3xx-4xx-5xx)
* If you feel your device warm let the device cool before testing.
* You can monitor your gpu frequencies in real time by using a tool called mali gpu status(caution: do not use these apps when benchmarking as it will degrade your result)
* Dont use any onscreen overlay apps like cool tool as it will degrade your benchmark scores.
Some benchmark results :
Below is the result comparison of basemark 2.0 (mobile with hd screens). Stock s3 gpu scores around 38 fps.
Here is the result achieved with max gpu clock of 700 mhz. It simply smashes all the records.
Nice work mate :thumbup::thumbup:
Interesting
Thanks, Bala - though I have tried doing this for my S before, I havent seen the need yet to do this for S3.
Having said that, if you have the right OC, UV combinatons that worked for you - do you mind sharing them. That will be the best use of this thread.
araje said:
Thanks, Bala - though I have tried doing this for my S before, I havent seen the need yet to do this for S3.
Having said that, if you have the right OC, UV combinatons that worked for you - do you mind sharing them. That will be the best use of this thread.
Click to expand...
Click to collapse
My settings is always there in my sig mate
《tapatalked from galaxy s3》
bala_gamer said:
My settings is always there in my sig mate
《tapatalked from galaxy s3》
Click to expand...
Click to collapse
This kind of thread was really needed for beginners.
Thanks for good work
Hmmm if 100,200,300mhz have same voltage so better to keep 300mhz as minimum? Talking about battery consumption/performance?
EdgaBimbam said:
Hmmm if 100,200,300mhz have same voltage so better to keep 300mhz as minimum? Talking about battery consumption/performance?
Click to expand...
Click to collapse
300mhz and 400mhz are not utilized by many kernels so its more or less useless. either 200 or 100 can be used for minimum
bala_gamer said:
My settings is always there in my sig mate
《tapatalked from galaxy s3》
Click to expand...
Click to collapse
Good work mate...now i will try to do it again..up until now i haven't seen any noticeable improvements..
thanks.
Good info...well done mate
Sent from my GT-I9300 using xda app-developers app
We are waiting forse gpu guide
Unfortunately my cpu is unstable with high undervolt, i set it to -50 and works great w/o overclock i think it's useless
Omega 11.1 and siyah kernel 1.5beta6
Sent from my GT-I9300 using xda app-developers app
RazielSasy said:
We are waiting forse gpu guide
Unfortunately my cpu is unstable with high undervolt, i set it to -50 and works great w/o overclock i think it's useless
Omega 11.1 and siyah kernel 1.5beta6
Sent from my GT-I9300 using xda app-developers app
Click to expand...
Click to collapse
Give the cpu voltage settings in my sig a try, to be in the safer side always start with +25mv from my signature
《tapatalked from galaxy s3》
Glad to see someone done a guide like this fro the S3 as well.
Good luck with the thread mate.
Sent from my HTC One X
whenever I opens an app cpu reaches its Max frequency stage then come down,
is cpu acts like this normal??
kachrukamble said:
whenever I opens an app cpu reaches its Max frequency stage then come down,
is cpu acts like this normal??
Click to expand...
Click to collapse
It depends on the type of app and the initial load required, it's normal afaik
《tapatalked from galaxy s3》
kachrukamble said:
whenever I opens an app cpu reaches its Max frequency stage then come down,
is cpu acts like this normal??
Click to expand...
Click to collapse
It depends on the app its not an strange act, if the app requires a lot of cpu usage it will stay longer on the max frequency, if you dont like that you can always try an lazy cpu scaling governor (controls the behaviour of the cpu)
Edit: lol bala gamer was earlier np xd
Sent from my GT-I9300 using xda app-developers app
bala_gamer said:
It depends on the type of app and the initial load required, it's normal afaik
《tapatalked from galaxy s3》
Click to expand...
Click to collapse
Ohk. In my case it reaches for every app.
What about threshhold setting???
Sent from my GT-I9300
GPU overclocking guide added.
I try CPU : 1500mhz -50mV
GPU : 266 - 350 - 440 - 533 - 600 with mv 875 - 925 - 975 - 1025 - 1075
Nenamark2 : 54,2
Basemark Taiji : 40,48
It's a little low... ?
Geo1997 said:
I try CPU : 1500mhz -50mV
GPU : 266 - 350 - 440 - 533 - 600 with mv 875 - 925 - 975 - 1025 - 1075
Nenamark2 : 54,2
Basemark Taiji : 40,48
It's a little low... ?
Click to expand...
Click to collapse
Is 600 kicking in? I've never tried this benchmark but maybe you could try lowering your threshold frequencies.

[REF][SuperFriendly] Explanation of Governors, I/O Schedulers and Kernels [23-Nov]

Introduction
"It takes few hours to make a thread but it doesn't even take few seconds to say Thanks"- arpith.fbi
Click to expand...
Click to collapse
Code:
Don't be afraid to ask me anything.
I won't bite, but I might lick you.
Just thank me for this super brief thread.
Give credits to this thread by linking it if you're using any of my info.
Thank you to you too
Have you unlocked your bootloader of your current device ? If so, read it ! If not, learn the benifits ! :victory:
What is this thread about ? It is a very brief explanation of every governors and schedulers to let you find the best combo for your device.
I've been searching a lot about informations about Kernels, Governors, I/O Schedulers and also Android Optimization Tips. No matter its Google or XDA or other android forums. I will go into it and try the best I can to find these infos. So I thought of sharing it to here for the XPlay users.
My main reason to share this is to benefit users for better knowledge about Kernels, Governors, I/O Schedulers and Tips on Android Optimization. I'm not aware of whether where this should be posted, its related to kernels, governors and schedulers so I think it would be best if I share it to here. Yes, I wrote it word by word with references.Happy learning. :angel:
After months on XDA, no matter its in a development forum or Off Topic forum. Users kept on asking what's this what's that. And I'm sure that not all members will understand what is it until they bump into my thread
FAQs regarding on :-
-I/O Schedulers
-Kernel Governers
-Better RAM
-Better Battery
-FAQs
*Will add more when I found something useful.
Click to expand...
Click to collapse
I do a lot of asking by PM, to learn, it doesn't matter whether its a stupid one. (People who know me understands)
With my experience and lots of asking. I managed to find a lot of infos that we can use to optimize our phone.
I will try to explain as clear as I can.
Governors :-
-Smoothass
-Smartass
-SmartassV2
-SavagedZen
-Interactivex
-Lagfree
-Minmax
-Ondemand
-Conservative
-Brazilianwax
-Userspacce
-Powersave
-Performance
-Scary
-Lulzactive *
-Intellidemand *
-Badass *
-Lionheart *
-Lionheartx *
-Virtuous *
* Haven't gathered much needed information. Will add it later.
Explanation
OnDemand
Brief
Available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point, OnDemand will rapidly scale the CPU up to meet the demand, then gradually scale the CPU down when it isn't needed.
Click to expand...
Click to collapse
Review
Brief says all. By a simple explantion, OnDemand scales up to the required frequency to undergo the action you are doing and rapidly scales down after use.
Conservative
Brief
It is similar to the OnDemand governor, but will scale the CPU up more gradually to better fit demand. Conservative governor provides a less responsive experience than OnDemand, but it does save batter
Click to expand...
Click to collapse
Review
Conservative is the opposite of Interactive; it will slowly ramp up the frequency, then quickly drops the frequency once the CPU is no longer under a certain usage.
Interactive
Brief
Available in latest kernels, it is the default scaling option in some stock kernels. Interactive governor is similar to the OnDemand governor with an even greater focus on responsiveness.
Click to expand...
Click to collapse
Review
Interactive is the opposite of Conservative; it quickly scales up to the maximum allowed frequency, then slowly drops the frequency once no longer in use.
Performance
Brief
Performance governer locks the phone's CPU at maximum frequency. While this may sound like an ugly idea, there is growing evidence to suggest that running a phone at its maximum frequency at all times will allow a faster race-to-idle. Race-to-idle is the process by which a phone completes a given task. After that it returns the CPU to extremely efficient low-power state.
Click to expand...
Click to collapse
Review
Good at gaming, Really good. Disadvantages are it may damage your phone if too much usage.
Powersave
Brief
The opposite of the Performance governor, the Powersave governor locks the CPU frequency at the lowest frequency set by the user.
Click to expand...
Click to collapse
Review
Set it to your desired minimum frequency and you won't have to look for your charger for once in a while.
Scary
Brief
A new governor wrote based on Conservative with some Smartass features, it scales accordingly to Conservative's way. It will start from the bottom. It spends most of its time at lower frequencies. The goal of this is to get the best battery life with decent performance. It will give the same performance as Conservative right now.
Click to expand...
Click to collapse
Review
Hmm.. Overall I don't see any difference. After I understand its main objective. I was very curious and decided to use it again. Results are the same.. No difference. Report to me if anyone has tested this.
Userspace
Brief
Userspace is not a governor pre-set, but instead allows for non-kernel daemons or apps with root permissions to control the frequency. Commonly seen as a redundant and not useful since SetCPU and NoFrills exist.
Click to expand...
Click to collapse
Review
Highly not recommended for use.
Smartass
Brief
It is based on the concept of the Interactive governor.
Smartass is a complete rewrite of the code of Interactive. Performance is on par with the “old” minmax and Smartass is a bit more responsive. Battery life is hard to quantify precisely but it does spend much more time at the lower frequencies.
Click to expand...
Click to collapse
Review
Smartass is rather the governer that will save your battery and make use of your processor for daily use. Like the brief explantion said " Smartass will spend much more time on lower frequencies." So logically you don't need for sleep profiles anymore.
SmartassV2
Brief
Theoretically a merge of the best properties of Interactive and OnDemand; automatically reduces the maximum CPU frequency when phone is idle or asleep, and attempts to balance performance with efficiency by focusing on an "ideal" frequency.
Click to expand...
Click to collapse
Review
This is a much favourite to everybody. I believe almost everyone here is using SmartassV2. Yes, it is better than Smartass because of its speed no scaling frequencies from min to max at a short period of time.
Smoothass
Brief
A much more aggressive version of Smartass that is very quick to ramp up and down, and keeps the idle/asleep maximum frequency even lower.
Click to expand...
Click to collapse
Review
In my personal experience, this is really useful for daily use. And yes, I'm using it all the time. It may decrease your battery life. I saw it OC itself to 1.4 gHz when I set it to 1.2. Good use. Recommended.
Brazilianwax
Brief
Similar to SmartassV2. More aggressive scaling, so more performance, but less battery.
Click to expand...
Click to collapse
Review
Based on SmartassV2. But its advantage is a much more performance wise governor.
SavagedZen
Brief
Another SmartassV2 based governor. Achieves good balance between performance & battery as compared to Brazilianwax.
Click to expand...
Click to collapse
Review
Not much difference compared to SmartassV2. But it is a optimized version of it.
Lagfree
Brief
Again, similar to Smartass but based on Conservative rather than Interactive, instantly jumps to a certain CPU frequency after the device wakes, then operates similar to Conservative. However, it has been noted as being very slow when down-scaling, taking up to a second to switch frequencies.
Click to expand...
Click to collapse
Review
Used it before. Like the name of the governor, I didn't experience any lag whatsoever. Another governor based on performance, but not battery efficient.
MinMax
Brief
MinMax is just a normal governor. No scaling intermediate frequency scaling is used.
Click to expand...
Click to collapse
Review
Well.. it's too normal that I can't really say anything about it..
Interactivex
Brief
InteractiveX governor is based heavily on the Interactive governor, enhanced with tuned timer parameters to optimize the balance of battery vs performance. InteractiveX governor's defining feature, however, is that it locks the CPU frequency to the user's lowest defined speed when the screen is off.
Click to expand...
Click to collapse
Review
A better understanding from the brief to you users, this is an Interactive governor with a wake profile. More battery friendly than Interactive.
Due to current kernels doesn't have these governors. I will be delaying the explanation, its very interesting. If you want it ASAP, post below
-Lulzactive *
-Intellidemand *
-Badass *
-Lionheart *
-Lionheartx *
-Virtuous *
**********************************************************************************************************************************************************************
I/O Schedulers(thanks to droidphile)
Deadline
Goal is to minimize I/O latency or starvation of a request. The same is achieved by round robin policy to be fair among multiple I/O requests. Five queues are aggressively used to reorder incoming requests.
Advantages:
Nearly a real time scheduler.
Excels in reducing latency of any given single I/O.
Best scheduler for database access and queries.
Bandwidth requirement of a process - what percentage of CPU it needs, is easily calculated.
Like noop, a good scheduler for solid state/flash drives.
Disadvantages:
When system is overloaded, set of processes that may miss deadline is largely unpredictable.
Click to expand...
Click to collapse
Noop
Inserts all the incoming I/O requests to a First In First Out queue and implements request merging. Best used with storage devices that does not depend on mechanical movement to access data. Advantage here is that flash drives does not require reordering of multiple I/O requests unlike in normal hard drives.
Advantages:
Serves I/O requests with least number of cpu cycles. (Battery friendly?)
Best for flash drives since there is no seeking penalty.
Good throughput on db systems.
Disadvantages:
Reduction in number of cpu cycles used is proportional to drop in performance.
Click to expand...
Click to collapse
Anticipatory
Based on two facts
i) Disk seeks are really slow.
ii) Write operations can happen whenever, but there is always some process waiting for read operation.
So anticipatory prioritize read operations over write. It anticipates synchronous read operations.
Advantages:
Read requests from processes are never starved.
As good as noop for read-performance on flash drives.
Disadvantages:
'Guess works' might not be always reliable.
Reduced write-performance on high performance disks.
Click to expand...
Click to collapse
BFQ
nstead of time slices allocation by CFQ, BFQ assigns budgets. Disk is granted to an active process until it's budget (number of sectors) expires. BFQ assigns high budgets to non-read tasks. Budget assigned to a process varies over time as a function of it's behavior.
Advantages:
Believed to be very good for usb data transfer rate.
Believed to be the best scheduler for HD video recording and video streaming. (because of less jitter as compared to CFQ and others)
Considered an accurate i/o scheduler.
Achieves about 30% more throughput than CFQ on most workloads.
Disadvantages:
Not the best scheduler for benchmarking.
Higher budget assigned to a process can affect interactivity and increased latency.
Click to expand...
Click to collapse
CFQ
Completely Fair Queuing scheduler maintains a scalable per-process I/O queue and attempts to distribute the available I/O bandwidth equally among all I/O requests. Each per-process queue contains synchronous requests from processes. Time slice allocated for each queue depends on the priority of the 'parent' process. V2 of CFQ has some fixes which solves process' i/o starvation and some small backward seeks in the hope of improving responsiveness.
Advantages:
Considered to deliver a balanced i/o performance.
Easiest to tune.
Excels on multiprocessor systems.
Best database system performance after deadline.
Disadvantages:
Some users report media scanning takes longest to complete using CFQ. This could be because of the property that since the bandwidth is equally distributed to all i/o operations during boot-up, media scanning is not given any special priority.
Jitter (worst-case-delay) exhibited can sometimes be high, because of the number of tasks competing for the disk.
Click to expand...
Click to collapse
SIO
Simple I/O scheduler aims to keep minimum overhead to achieve low latency to serve I/O requests. No priority quesues concepts, but only basic merging. Sio is a mix between noop & deadline. No reordering or sorting of requests.
Advantages:
Simple, so reliable.
Minimized starvation of requests.
Disadvantages:
Slow random-read speeds on flash drives, compared to other schedulers.
Sequential-read speeds on flash drives also not so good.
Click to expand...
Click to collapse
VR
Unlike other schedulers, synchronous and asynchronous requests are not treated separately, instead a deadline is imposed for fairness. The next request to be served is based on it's distance from last request.
Advantages:
May be best for benchmarking because at the peak of it's 'form' VR performs best.
Disadvantages:
Performance fluctuation results in below-average performance at times.
Least reliable/most unstable.
Click to expand...
Click to collapse
Credits
-droidphile
-kokzhanjia
Reserved for kernel infos
Sent from my WT19i
Yes, we do have kernels with Lionheart, lulzactive and intellidemand.
Nice reference cheers.
Sent from Xperia Play (R800a) with Tapatalk
CosmicDan said:
Yes, we do have kernels with Lionheart, lulzactive and intellidemand.
Nice reference cheers.
Sent from Xperia Play (R800a) with Tapatalk
Click to expand...
Click to collapse
Really ? Okay will add it in later
Sent from my WT19i
kokzhanjia said:
Really ? Okay will add it in later
Sent from my WT19i
Click to expand...
Click to collapse
Yeah LuPuS has Lulzactive, Virtuous, Intellidemand, Lazy, Ondemandx, Lionheart and Badass added (but no mention of LionheartX).
Turbo kernel also has intellidemand but the parameters have been modified quite a bit (by me) to suit our snapdragon SOC's better. I think wedgess also put these changes into LuPuS too (at least one of the ICS/JB kernels he builds he said he did). The browser mode still has no effect AFAIK but in my experience it's more battery-friendly and better performance than on-demand (thanks mainly to dbus_input ramping). But many users have reported slightly better gaming experience with SmartAssv2.
Great reference, this will be of much help to new comers, thanks for the hard work you put into this.
CosmicDan said:
Yeah LuPuS has Lulzactive, Virtuous, Intellidemand, Lazy, Ondemandx, Lionheart and Badass added (but no mention of LionheartX).
Turbo kernel also has intellidemand but the parameters have been modified quite a bit (by me) to suit our snapdragon SOC's better. I think wedgess also put these changes into LuPuS too (at least one of the ICS/JB kernels he builds he said he did). The browser mode still has no effect AFAIK but in my experience it's more battery-friendly and better performance than on-demand (thanks mainly to dbus_input ramping). But many users have reported slightly better gaming experience with SmartAssv2.
Click to expand...
Click to collapse
Yeah. Saw your work Nice one.. anymore in depth infos about kernels at here ? I want to add a bonus one for this..
paragroth said:
Great reference, this will be of much help to new comers, thanks for the hard work you put into this.
Click to expand...
Click to collapse
Thanks
Coloured signatures are nice
Nah that's pretty much it
Sent from Xperia Play (R800a) with Tapatalk
Throughout my experience(mainly from observing CPU speeds during music playback), I found that:
Scary:
Ramps up to max after reaching a threshold (50/60% CPU load) then slow scales down to match as 50-80% CPU Load @ X MHz. After a while if load lowers (30-40%), it will clock down to match the 50-80% load. You will see a lot of 100% @ low MHz with this governor.
SavagedZen:
It maintains a 80-90% CPU Load @ X MHz for a fairly constant load. This one also scales based on the Max CPU Freq. settings. So the lower your Max CPU Freq, the better it is at maintaining the CPU Load/MHz balance (for music playback at least).
I didn't look at the source, so these are just from observations only. So I might be talking out of my ass.
Also, having good CPU Load at appropriate CPU Speeds may or may not contribute to battery life. No experiments showed that yet iirc.
Monitoring done via "Diagnosis - System Information" an app that generates an overlay with whatever information your want ie cpu load, speed, memory free, used, disk io, network io, etc.
Refresh rate kept at 5 seconds to keep CPU Load interference minimal (lower than ICS/JB CPU Info overlay from Development, Settings tab).
Great thread, this should be sticky!
jabberwocky_one said:
Throughout my experience(mainly from observing CPU speeds during music playback), I found that:
Scary:
Ramps up to max after reaching a threshold (50/60% CPU load) then slow scales down to match as 50-80% CPU Load @ X MHz. After a while if load lowers (30-40%), it will clock down to match the 50-80% load. You will see a lot of 100% @ low MHz with this governor.
SavagedZen:
It maintains a 80-90% CPU Load @ X MHz for a fairly constant load. This one also scales based on the Max CPU Freq. settings. So the lower your Max CPU Freq, the better it is at maintaining the CPU Load/MHz balance (for music playback at least).
I didn't look at the source, so these are just from observations only. So I might be talking out of my ass.
Also, having good CPU Load at appropriate CPU Speeds may or may not contribute to battery life. No experiments showed that yet iirc.
Monitoring done via "Diagnosis - System Information" an app that generates an overlay with whatever information your want ie cpu load, speed, memory free, used, disk io, network io, etc.
Refresh rate kept at 5 seconds to keep CPU Load interference minimal (lower than ICS/JB CPU Info overlay from Development, Settings tab).
Click to expand...
Click to collapse
Nono you are right. I read these before and your observation is just about it, thanks for the info
chabbe11 said:
Great thread, this should be sticky!
Click to expand...
Click to collapse
Thank you
Sent from my WT19i with Real Xperia r1
Am I setting it up the right way?
{
"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"
}
I prefer using that minimum and maximum.
And would this screen off profile work, even if I have configured the main minimum? The 100mhz for screen off really saves a lot of my battery.
Sent from my R800i using Tapatalk 2
Gr8 helped me a lot in understanding alll of this .....
bhavei said:
Am I setting it up the right way?
I prefer using that minimum and maximum.
And would this screen off profile work, even if I have configured the main minimum? The 100mhz for screen off really saves a lot of my battery.
Sent from my R800i using Tapatalk 2
Click to expand...
Click to collapse
Yes it is right. I didnt really tried the other way that you mentioned, because i have No-Frills pre-installed in my settings..but i see it worked. Of course it will save battery.. Nice
piku2008 said:
Gr8 helped me a lot in understanding alll of this .....
Click to expand...
Click to collapse
Will add more soon About kernels, Is there any BFS kernels around here ? Most kernels are CFS..
Sent from my WT19i with Real Xperia r1
kokzhanjia said:
About kernels, Is there any BFS kernels around here ? Most kernels are CFS..
Click to expand...
Click to collapse
There was, I ported it over a few months ago. But I removed it because it was causing priority issues. The latest BFS patch for our kernel has some critical bugs, so I ditched it. When I get ext# fixed in .60 kernel up and going I will probably take another crack at it, backporting one of the more recent 3.x BFS versions.
One of the LuPuS kernels might still have na laternative BFS version, but I think wedgess stopped building it for the same reason as me.
CosmicDan said:
There was, I ported it over a few months ago. But I removed it because it was causing priority issues. The latest BFS patch for our kernel has some critical bugs, so I ditched it. When I get ext# fixed in .60 kernel up and going I will probably take another crack at it, backporting one of the more recent 3.x BFS versions.
One of the LuPuS kernels might still have na laternative BFS version, but I think wedgess stopped building it for the same reason as me.
Click to expand...
Click to collapse
I see, there are really few BFS based kernels out there. BFS is better in my opinion so i would like to elaborate more about BFS to attract more users.
Btw, one guy in Xperia Mini, Mini Pro and Active forums had already successfully making it up and running for stock and CM ROMs. Its already hitted version 2.3
Maybe you could get some help from him ? Name is Mesa Kernel.
Sent from my WT19i with Real Xperia r1
kokzhanjia said:
I see, there are really few BFS based kernels out there. BFS is better in my opinion so i would like to elaborate more about BFS to attract more users.
Btw, one guy in Xperia Mini, Mini Pro and Active forums had already successfully making it up and running for stock and CM ROMs. Its already hitted version 2.3
Maybe you could get some help from him ? Name is Mesa Kernel.
Sent from my WT19i with Real Xperia r1
Click to expand...
Click to collapse
I was using v0.313 of BFS, it wasn't that hard - just had to adapt the patch for the Xperia's stupid kernel. That version is so unstable and buggy, in fact all 2.6.x BFS patches were so problematic that the official page has removed them.
I'll check it out, if he back-ported BFS for Linux kernel 3.0 and has them on GitHub, otherwise it would be easier just to do it myself. But I have other more important concerns for Zeus development right now, BFS doesn't really bring any significant performance boost (which is why it is continually rejected from AOSP inclusion).
CosmicDan said:
I was using v0.313 of BFS, it wasn't that hard - just had to adapt the patch for the Xperia's stupid kernel. That version is so unstable and buggy, in fact all 2.6.x BFS patches were so problematic that the official page has removed them.
I'll check it out, if he back-ported BFS for Linux kernel 3.0 and has them on GitHub, otherwise it would be easier just to do it myself. But I have other more important concerns for Zeus development right now, BFS doesn't really bring any significant performance boost (which is why it is continually rejected from AOSP inclusion).
Click to expand...
Click to collapse
Oh... i didnt know that.. anyway, I don't think he has his github set up. I didnt saw a link to his github on his thread. And isnt BFS aimed for forward looking(like only performing on a task that is given without any concerns) ? I read about it at google docs about it. And i don't really know how to explain it clearly..
Good luck in your development my frirend. And this thread has been moved to General section. Hope you can find it and Nice to have another friend
Sent from my WT19i with Real Xperia r1
This is nice info,
Thanks
Thanks man. This is awesome. Much appreciated

My S3 ideal setup: ROM, Kernel, Mods, Apps & Games

In 2015, Galaxy S3 is a quite old device. It was introduced in 2012, with a lot of supporters around the world. I think it is the best smartphone of Samsung ever. And in 2015, it is still a good phone with latest software update from other developers
These are my combinations of roms, kernels, mods and tweaks of my Galaxy S3 (i9300). I think it is the best combination ever, with good performance and experience. Remember that this is my own opinion, so maybe it won't appropriate with somebody. Anyway, let's get start!!!
ROM
Cyanogenmod is undoubtedly the most popular and best-performance rom ever. It is based on Stock Android, so it runs very smooth and has brilliant performance, especially in Benchmark Test. Android 5.0 Lollipop is released, then our S3 has a very good CM12 rom with latest software version. I have used this rom for 4 months, and I do not expect anything more about my phone because it runs PERFECTLY.
Link for Cyanogenmod 12 rom: http://forum.xda-developers.com/galaxy-s3/development/wip-cyanogenmod-12-t2936990
{
"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"
}
​ KERNEL
Since Siyah kernel is end-of-development, Boeffla Kernel is a perfect alternative. This kernel brings us a lot of things : change CPU governers, overclock CPU (up to 1600 Mhz) and GPU (640 Mhz), sound tweaks, undervolt CPU and GPU, etc. It lets us to control our devices freely and effectively. It also gives us brilliant battery performance.
Links for Boeffla Kernel i9300: http://forum.xda-developers.com/gal...rnel-boeffla-kernel-2-2-stable-27-03-t2449408
MODS
When I bought my Galaxy S3, I soon realized that is had a poor sound experience. So I looked for a sound mods that it improves my phone speaker. And fortunately, I have found a thread that had an amazing work: ACID Audio Engine. It gives me many positive improvements with i9300 sounds, and I have the best sound experience ever.
Link for ACID Audio Engine mod: http://forum.xda-developers.com/galaxy-s3/development/mod-acid-audio-engine-v5-0-samsung-t2002197
APPS & GAMES
I am a student, so I do not have much working or business apps. These app below are mostly entertaining apps : music, games,…
Google Camera: easy, simple and functional interface
https://play.google.com/store/apps/details?id=com.google.android.GoogleCamera
Inbox by Google: a beautiful Material Design email app, and officially published by Google
https://play.google.com/store/apps/details?id=com.google.android.apps.inbox
Google Keep: easy for taking notes with texts, images and many cute symbols…
https://play.google.com/store/apps/details?id=com.google.android.keep
Zedge: up-to-date beautiful wallpapers, ringtones and other stuffs.
https://play.google.com/store/apps/details?id=net.zedge.android
Wolfram Alpha: as a student, I have to do a lot of calculating exercises. This app is my perfect assistant at school, especially in Maths lessons.
https://play.google.com/store/apps/details?id=com.wolfram.android.alpha
Fenix: my daily Twitter app
https://play.google.com/store/apps/details?id=it.mvilla.android.fenix
Seeder: it is undeniable that many Android devices become slower and slower after long time using them. Seeder helps us to prevent this problem. It gives us a smooth experience with no lags and FC’s.
http://forum.xda-developers.com/showthread.php?t=1987032
Xposed Installer + Gravity Box(LP) : best apps for interface editing, mods, and tweaks
http://forum.xda-developers.com/showthread.php?t=3034811
Ram Manager Pro: a lot of RAM options, swap RAM (up to 2GB), friendly interface.
https://play.google.com/store/apps/details?id=com.smartprojects.RAMOptimizationFree
FIFA 15: Since FIFA 16, in my opinion, is not as good as FIFA 15 (graphics problems, worse user interface,…), I am still playing with my own Ultimate Team. Best Sport app ever.
https://play.google.com/store/apps/details?id=com.ea.game.fifa15_row
Asphalt 8: Racing games with a lot of cars, roads and game modes, brilliant graphics.
https://play.google.com/store/apps/details?id=com.gameloft.android.ANMP.GloftA8HM
Leo’s Fortune: This is the best graphics games ever…
https://play.google.com/store/apps/details?id=com.leosfortune
TWEAKS & SELF-EXPERIENCE
CPU governer: ondemand
I/O Scheduler: deadline
Max freq: 1400 Mhz
Min freg: 200 Mhz
Undervolt CPU: -75mV​
GPU freq: 160/266/350/440/533
GPU undervolt: -75mV​
Build.prop tweaks:
Fast Reboot
persist.sys.purgeable_assets=1
Render UI with GPU
debug.sf.hw=1​
Increasing It Will Make Mobile Smoother
windowsmgr.maxevents_per_sec=150​
Video Acceleration Enabled
video.accelerate.hw=1​
Increase Performance
debug.performance.tuning=1​
Disable Sending Usage Data
ro.config.nocheckin=1​
Deeper Sleep / Better Battery Life
ro.ril.disable.power.collapse=1
pm.sleep_mode=1​
Disable BootAnimation
debug.sf.nobootanimation=1​
Faster Scrolling
ro.max.flingvelocity=12000​ro.min.fling_velocity=8000​
sorry for this,but,either u are not informed on whats going on these days,or just lack of knowledge.
this version you chose as your rom is EOL state,and its much worse than any rom IMO (memory leaks,stagefright not patched etc). the best rom right now is AD latest or B19 from archi as well.
kernel-wise,boeffla is EOL state again,he only update ramdisk,so this is just for campatibility still active.while things starting to end for this phone,archi wow us every single time,and archikernel latest is the most "optimized" for this phone along with his roms...
I/O sheduler-wise, deadline and noop is known to low speeds and performance crippling..best shedulers for our phone are BFQ latest,and CFQ.
ROW is better generally but not for I9300.it sucks.
You should never undervolt processor especially -75!! GPU as well. games will lag.
But this guide is,from my point of view,battery life driven.
but i would not get crazy for battery life anymore because anyways battery is fcked up so many years,especially stock.the only thing u will achieve is at best half an hour screen on time.not worth it for me
as for build prop tweaks,dont even touch it anymore,its not worth it,plus archi have better build prop tweaks and generally well made Roms.
*flies away*
My best setup is Archidroid + ArchiKernel
Cpu voltages table:
1400 1.1375V
1300 1.1V
1200 1.075V
1100 1.025V
1000 0.95V
900 0.925V
800 0.9V
700 0.875V
600 0.85V
500 0.825V
400 0.8V
300 0.8V
200 0.8V
GPU:
700 - 1.175V
600 - 1.0625V
440 - 0.9375V
300 - 0.8375V
150 - 0.7375V
CPU Governor: lulzactiveQ
CPU States: IDLE + LPA + AFTR
eMMC/SD Governor row/cfq
I think, that we can undervolt our SoC much lower, but not by setting same '-xx mV' value for all profiles, i spend about 2 hours for testing voltages on every profile. I descended to 0.8V on CPU, lower values were giving me a lot of freezes and lags. On GPU i set 0.7V (Boeffla kernel) and image went away. My ASV level is 3. I also tried it on other i9300 @ 2LVL ASV, GPU was working with same voltages. But CPU wanted extra 25mV for every profile from my table.
I also saw one more thing, ArchiKernel requies higher voltages, but it's harder to freeze phone (especially GPU) than on Boeffla.
Sorry for my bad english, i'll improve that - i promise
i wish i didnt sold my s3 :/
How to undervolt?
Sent from my Be_Pure using XDA Free mobile app
The Funky Pear said:
sorry for this,but,either u are not informed on whats going on these days,or just lack of knowledge.
this version you chose as your rom is EOL state,and its much worse than any rom IMO (memory leaks,stagefright not patched etc). the best rom right now is AD latest or B19 from archi as well.
kernel-wise,boeffla is EOL state again,he only update ramdisk,so this is just for campatibility still active.while things starting to end for this phone,archi wow us every single time,and archikernel latest is the most "optimized" for this phone along with his roms...
I/O sheduler-wise, deadline and noop is known to low speeds and performance crippling..best shedulers for our phone are BFQ latest,and CFQ.
ROW is better generally but not for I9300.it sucks.
You should never undervolt processor especially -75!! GPU as well. games will lag.
But this guide is,from my point of view,battery life driven.
but i would not get crazy for battery life anymore because anyways battery is fcked up so many years,especially stock.the only thing u will achieve is at best half an hour screen on time.not worth it for me
as for build prop tweaks,dont even touch it anymore,its not worth it,plus archi have better build prop tweaks and generally well made Roms.
*flies away*
Click to expand...
Click to collapse
Hi The Funky Pear!!
Can you post here your complete kernel config on synapse?
Thanks in advance
_nEoN_ said:
Hi The Funky Pear!!
Can you post here your complete kernel config on synapse?
Thanks in advance
Click to expand...
Click to collapse
of course! feel free to ask anything!! will post screenshots because its easier
what is "ad latest" rom?
mkdr said:
what is "ad latest" rom?
Click to expand...
Click to collapse
here u go: http://forum.xda-developers.com/galaxy-s3/development/rom-archidroid-v2-4-6-power-hands-t2354859

Consolidated tweaks for the redmi 3

Consolidation of tweaks for redmi 3 (my usage). If you have a tweak you think is useful and want added, just comment in this thread below and I'll add it to OP when possible. Take note, if you use this thread, you are expected to have at least some working knowledge of android and the system. This is not for novices because there is the potential of messing up big time. I will not answer questions like "where can i find buildprop"or "how do I enter this code". This thread is only for discussing tweaks, research, effect/affect and performance.
Rooted users only
CPU hotplugging(only works for miui) - with this, for the most part, BIG will have only 1 CPU online when idle, and so will LITTLE
Big - add this to buildprop
Code:
ro.core_ctl_min_cpu=0
little - use terminal or add to init post boot script
Code:
echo 60 85 95 95 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres
echo 30 50 75 75 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres
I use this in conjunction with the advanced interactive tweaks for insane battery life(up to 1 hour screen on for 10%)
http://forum.xda-developers.com/mi-4i/general/guide-advanced-interactive-governor-t3280391
Code:
CPU #1 (aka "Big", aka "has 4 cores", aka "maxes out at 1665Mhz")
target_loads - 1 960000:80 1113600:85 1344000:90
timer_slack - 80000
hispeed_freq - 1113600
timer_rate - 20000
above_hispeed_delay - 20000 1113600:50000
go_hispeed_load - 85
min_sample_time - 50000
CPU #2 (aka "little", aka "has 4 cores", aka "maxes out at 1113Mhz")
target_loads - 1 800000:80
timer_slack - 80000
hispeed_freq - 998400
timer_rate - 40000
above_hispeed_delay - 10000
go_hispeed_load - 90
min_sample_time - 40000
Fast dormancy - MIUI only, use only if your network supports it
Code:
persist.env.fastdorm.enabled true
persist.fd.scroff.timer 1000
persist.fd.scron.timer 5000
Not to ask to many questions.
But which software do you use to make it smooth like a baby's butt.
Currently I'm using KA and/or EX Kernel Editor, disabled thermal engine but BIG sometimes have no (tunable) governor
atiprusma said:
Not to ask to many questions.
But which software do you use to make it smooth like a baby's butt.
Currently I'm using KA and/or EX Kernel Editor, disabled thermal engine but BIG sometimes have no (tunable) governor
Click to expand...
Click to collapse
KA is fine. I'm using it as well. These questions are welcome, just not questions that can be answered via a general search on google or the forums.
As for your tunable governor, sometimes you might need to reload the governor in KA, meaning you change it to another governor. It does it sometimes.
Thanks for this, very helpful. My main issue with my redmi 3 is the heat (although it's not really hot, I'd rather no heat at all over higher performance).
So I've set
ro.core_ctl_min_cpu=0
ro.core_ctl_max_cpu=0
Meaning no big cores.
I've also set
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus
So little only has 2 cores running ordinarily. I didn't use your threshold settings above, left those at default and just reduced the number of minimum cores on little.
The biggest boost to performance I've found is just setting:
echo deadline > /sys/block/mmcblk0/queue/scheduler
echo deadline > /sys/block/mmcblk1/queue/scheduler
So overall, happy with these settings. 2 min little cpus, 4 max (default) and no big cores (so doesn't get hot at all) and deadline improves performance so you don't notice the big cores being off for most uses.
FYI
Geekbench 3, single core = 724, 2400ish with (2 big enabled, 4 little, default i/o scheduler)
Geekbench 3, single core = 603, 1800ish with (0 big enabled, 4 little, deadline i/o scheduler)
Not tested the battery life yet, but I'd imagine it would be better.
sc754 said:
Thanks for this, very helpful. My main issue with my redmi 3 is the heat (although it's not really hot, I'd rather no heat at all over higher performance).
So I've set
ro.core_ctl_min_cpu=0
ro.core_ctl_max_cpu=0
Meaning no big cores.
I've also set
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus
So little only has 2 cores running ordinarily. I didn't use your threshold settings above, left those at default and just reduced the number of minimum cores on little.
The biggest boost to performance I've found is just setting:
echo deadline > /sys/block/mmcblk0/queue/scheduler
echo deadline > /sys/block/mmcblk1/queue/scheduler
So overall, happy with these settings. 2 min little cpus, 4 max (default) and no big cores (so doesn't get hot at all) and deadline improves performance so you don't notice the big cores being off for most uses.
FYI
Geekbench 3, single core = 724, 2400ish with (2 big enabled, 4 little, default i/o scheduler)
Geekbench 3, single core = 603, 1800ish with (0 big enabled, 4 little, deadline i/o scheduler)
Not tested the battery life yet, but I'd imagine it would be better.
Click to expand...
Click to collapse
But disabling all the big cores will essentially meant that you're really, REALLY crippling the phone. In all fairness, the phone handles heat better than the snapdragon 615 by quite a bit. I find that hotplugging generally helps with the heat alot. In Kernel adiutor, why not go to thermal and enable core control instead so that the native thermal engine can do its work? otherwise I would rather disable the small cores, that way you still have that little extra boost of power where you need it with the big ones. the 616 is using all a53 cores i believe, just clocked slightly differently.
davtse said:
But disabling all the big cores will essentially meant that you're really, REALLY crippling the phone. In all fairness, the phone handles heat better than the snapdragon 615 by quite a bit. I find that hotplugging generally helps with the heat alot. In Kernel adiutor, why not go to thermal and enable core control instead so that the native thermal engine can do its work? otherwise I would rather disable the small cores, that way you still have that little extra boost of power where you need it with the big ones. the 616 is using all a53 cores i believe, just clocked slightly differently.
Click to expand...
Click to collapse
True, but I'm not a heavy user in anyway, so this works perfect for me. I'd imagine others would leave the bigger cores on for the slightly better performance. The deadline scheduler gives it great performance for the non heavy multi tasking user like me.
davtse said:
KA is fine. I'm using it as well. These questions are welcome, just not questions that can be answered via a general search on google or the forums.
As for your tunable governor, sometimes you might need to reload the governor in KA, meaning you change it to another governor. It does it sometimes.
Click to expand...
Click to collapse
I can't change my governor after modified the governor it self because no option to change it.
And btw, did you disabled your thermal engine?
atiprusma said:
I can't change my governor after modified the governor it self because no option to change it.
And btw, did you disabled your thermal engine?
Click to expand...
Click to collapse
No my thermal engine is still on. What do you mean you cant change your governor?
davtse said:
No my thermal engine is still on. What do you mean you cant change your governor?
Click to expand...
Click to collapse
After going to cpu governor tunable it happen like this
{
"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"
}
Click to expand...
Click to collapse
And back to cpu option the governor has no option
Click to expand...
Click to collapse
Sent from my Redmi 3 using Tapatalk
atiprusma said:
After going to cpu governor tunable it happen like this
And back to cpu option the governor has no option
Sent from my Redmi 3 using Tapatalk
Click to expand...
Click to collapse
no clue.. you could try the typical fixes first and see if they help, update supersu to beta 2.72, update busybox etc. other than that I don't have this problem so I dont know how to help with this
davtse said:
no clue.. you could try the typical fixes first and see if they help, update supersu to beta 2.72, update busybox etc. other than that I don't have this problem so I dont know how to help with this
Click to expand...
Click to collapse
I'm using bb v13 and supersu 72 already.
Should i modify the thermal engine ?
Sent from my Redmi 3 using Tapatalk
atiprusma said:
I'm using bb v13 and supersu 72 already.
Should i modify the thermal engine ?
Click to expand...
Click to collapse
Up to you.. I generally leave mine lone
what version of MIUI are you guys running? I am having trouble getting the governor changes to stick. I am using MIUI EU ROM 6.5.19. I have found Lollipop to be a real headache for making system level changes.
It is not possible to get it to stick at all.
I have tried using KA and Ex kernel but it is not working properly. I tried writing the little core mod into a a script but it didn't work. I have root and TWRP. My busy box version is new. I moved KA to the system partition and I think it is working better now but still it often tells me the governor is not tune-able or gives me a blank list in the governor selection list.
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus
Or
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpu
Or
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpu2
I got all that to work finally after plowing around for a while and updating and moving apps to the system partition and adjusting power nap. The only thing I'm still not sure about is how to set the little cpu to two on. But I have been getting about 10% per hour screen on time with 1-2 percent drain through the night. Thank you guys.
Supermatt01 said:
I got all that to work finally after plowing around for a while and updating and moving apps to the system partition and adjusting power nap. The only thing I'm still not sure about is how to set the little cpu to two on. But I have been getting about 10% per hour screen on time with 1-2 percent drain through the night. Thank you guys.
Click to expand...
Click to collapse
the min for little CPU doesnt seem to respect the terminal command for it, only the up threshold and down threhold.
you can try insmod the core_ctrl.ko and see if that helps
Okay, thanks, I will have to learn about that first
after applying the cpu tweak should i have to turn on "apply on boot"??
Riyad_ said:
after applying the cpu tweak should i have to turn on "apply on boot"??
Click to expand...
Click to collapse
If you use KA, then you should turn it on.
Sent from my ASUS_Z00A using XDA Labs

Categories

Resources