Related
Hey guys, in search of tips to speeding up Android on our phones, I stumbled across this article, which was written about an XDAer's script that helps fix the problem of our phones taking FOREVER to come out of sleep to answer incoming calls. Lately, I've simply just been UNABLE to answer calls and have had to just call the person back as soon as my screen came fully alive.
http://www.techalps.com/android/app...our-phone’s-response-to-an-incoming-call.html
I tried this out today and it does indeed help. Also, apparently turning off vibration helps too.
I believe this is the same thing as the renice script we already have implemented. It's in the initrd (part of the nbh) and runs at every boot. It pretty much does the same thing as that app, sets the priority of the phone higher.
phone prioritiser (app) helps only on heavy cpu.
thanks for the replies guys! Good info for us non-devs to know!
Actually, my phone is having the acore force close problem now, after installing this, so it looks like I'll have to reflash
so I DON'T RECOMMEND INSTALLING THIS everyone!!
the thing is though, I noticed that after installing it, it was indeed helping my phone come out of sleep a lot quicker!! any explanations?
The things it does is this:
Code:
busybox renice 5 `pidof com.google.process.gapps`
busybox renice -18 `pidof com.android.phone`
busybox renice -18 `pidof mediaserver`
busybox renice -18 `pidof mediaserver`
busybox renice -16 `pidof com.android.launcher`
busybox renice -15 `pidof com.htc.music`
busybox renice -15 `pidof com.android.music`
First of all one line above is reduntant but basicly what it does is that it gives the phone and the mediaserver process high priority (low is high when we're talking about process priorities). I assume that the mediaserver plays the ringtone otherwise it wouldn't make sense.
Then it puts the launcher and then the music player.
At least increasing the priority for the phone and mediaserver makes sense, the rest I do not know, maybe just a personal preference by the one who wrote the script.
I can't see why this would cause a force closing phone app though.
kallt_kaffe said:
I can't see why this would cause a force closing phone app though.
Click to expand...
Click to collapse
i just tried the super E rls3/2 from incubus because its 5.0.8. his build is already pretty slow so the upgrade to rls3 that had the phone priority script in it was necessary for me to be able to pick up a call.
i did notice that other programs suffered in response. i never got force closes but i got a few close/wait
my opinion is that if a build is too slow to pick up...change. myns eclair and vaniljeclair and aquatrans are all fast enough for me to pick up. (some with slight lag, but only slight)
also keep tasks closed and use rogue tools to over clock to around 500
But the idea is still interesting... I wouldn't use this app though but rather make a script and set it up as a service. However I did a quick test just bumping the phone and mediaserver to -18 and then calling my phone and I noticed no difference (with VaniljEclair RLS5 on NAND, compcache enabled and fully odex:ed).
LATEST UPDATE: 02.02.2013
A question that I'm often asked is:
"Can I have your permission to use your script in my ROM etc...?"
That answer to that is:
"Yes it is ok to use the code. I don't really believe it's useful anymore, but if you can find a use, and possibly improve the code to make it work better, go for it."
Version 1.0.2
Download available for ClockworkMod: requires Root (Superuser/Busybox), and a kernel that supports "init.d" scripts (script files that are stored in /system/etc/init.d/).
Always have a backup before installing any modification. Even though this script is rather simple, I can't guarantee it will work on every ROM! It appears to freeze custom ROMs such as CM, I don't know why. Maybe someone else knows.
NOTE: This script appears to be less and less useful as newer ROMs and phones become more sophisticated in dealing with any sort of lag. Tested on I9000XWJW9 and it doesn't seem to help. This ROM is quite smooth anyway.
What this script hopes to achieve:
- Entering your PIN with minimal/no delay/lag
- Minimising delay with lock screen pattern/unlock (not the time it takes to wakeup, but the touchscreen response lag)
- Having smoother notifications on the status bar, and smoother pulldown menu response
- Minimising Launcher lag while Media Scanner is running (can scroll through screens without heavy pauses)
- Minimising lag when scrolling through the market while icons are still loading
- Installing/Uninstalling apps while continuing other tasks
- Minimising/eliminating intermittent lag spikes in gaming
- No delay in being able to answer phone calls
... you get the idea
#!/system/bin/sh
#
# Loopy Smoothness Tweak v1.0.2 - 02/02/2013 (http://forum.xda-developers.com/showthread.php?t=1137554).
#
# An attempt at keeping the UI running a little smoother.
# Optimised for Galaxy S1 stock ROM, but can be modded for other Android devices. Backup recommended before running scripts.
# Not recommended for custom ROMs, such as CM. The "sleep" command appears to halt the OS, rendering the script useless.
# Feel free to edit how you wish, but please leave at least the first comment above as is.
# Any editing must be saved in UNIX (LF) format. Google "text editor unix lf" to read more.
#
Click to expand...
Click to collapse
However, as phones get faster, this script will probably have less of an effect.
Even with 2.3.6 and ext4, RAM scripts, governor tweaks, other tweaks, etc. the occasional lag still appears to be there, especially noticable when installing/unistalling, gaming, or even just scrolling through the launcher screens and menus. I decided to investigate. Being a linux newbie, I had to also source the appropriate commands.
The following has been discussed a little here and there on other Android forums, but surprisingly I couldn't find anything about it in the I9000 section...
Thinking of how processes in Windows can be run with six different priorities (Low, Below Normal, Normal, Above Normal, High, Realtime), I investigated to see what the deal was with Linux/Android. Turns out there are forty settings, ranging from -20 (Highest) to 0 (Default) to 19 (Lowest).
The next step was to see which process was causing the CPU bottleneck as it was happening. The top command is handy for this. I used this in adb shell (these tests were performed quite some time after reboot when there was craploads of stuff in the memory - the impact is not very noticeable after a fresh boot, or with very few apps installed/running.
UPDATE: The reason behind the majority of the kswapd0 issue was due to modified code of a custom kernel I was once using. I do however still find the script of benefit to me, and maybe you will too. You can still read below if you wish, but it may be irreverent.
Code:
adb shell
top -n 1
At the top of the list was:
18 16% R 1 0K 0K fg root kswapd0
Click to expand...
Click to collapse
kswapd0 is a kernel thread responsible for managing the memory.
I know Angry Birds can show a little lag from time to time, so I performed a little testing while playing that.
To change the priority of a running process, I used the renice command as such:
Code:
su
renice -20 `pidof kswapd0`
where -20 equals highest priority and `pidof kswapd0` returns the PID of the process, which is required by renice. In this case, 18.
To confirm the change, the ps command will give you what you need to know. Interesting to note "krfcommd" with a value of -10, and "mediaserver", -8.
Code:
ps -p kswapd0
If you enter "ps -p" all processes in memory are shown, along with their "nice" value.
It shouldn't take long before the game becomes barely playable at times (for a split second), as kswapd0 completely takes over the CPU until it performs its task. Setting the priority to
Code:
renice 0 `pidof kswapd0`
returns kswapd0 back to its default, and Angry Birds with the seldom lag. Let's go the other way now with
Code:
renice 19 `pidof kswapd0`
setting kswapd0 to its lowest priority, it should now have barely any impact on the game, if at all. Will this have negative impact on Android, though? Not sure yet.
We can even go one better and give Angry Birds all the CPU it needs via
Code:
renice -20 `pidof com.rovio.angrybirds`
With these settings in place, you could virtually play this all day, and your battery would probably be flat way before any lag becomes noticeable.
One problem though, when you close and reopen the game - assuming it's left the memory - it will have a new PID and the priority is set back to 0 (default).
Now, with my very limited knowledge of Linux/Android/Busybox, I'm not sure if there's a way to tell an app to open with a priority other than 0. Well, there is the nice command, but I couldn't get that working.
A common problem is the phone dialer app taking too long to popup when someone calls. Luckily, processes such as this one enter the memory from boot and seem to remain there. Setting its priority to -20 will basically tell the CPU to hold everything with less priority and open the phone dialer ASAP so you can take that call. And it works. I was on Angry Birds when a call came in, and was able to answer it on the first ring. I tried then calling myself without the -20 phone or the 19 kswapd0 settings, and there was an extra 2-3 second delay before I was able to answer. A few other apps that usually never leave the memory are default launcher (in my case, ADW Launcher EX), SMS/MMS app, Swype, Status Bar, and some others.
Even with apps launching at the default priority, with kswapd0 at 19, it still allows them more CPU, and may just be enough to combat this lag that people have tried to rid of with RAM scripts, Overclocking, and what not.
The script shown below is not the current init.d download script.
And the result (still a work in progress):
Code:
#!/system/bin/sh
###### Loopy Smoothness Tweak for Galaxy S (Experimental) #######
sleep 3
renice 18 `pidof kswapd0` # please give credit and thanks to loopy for this line if it works
##### Set nice levels for smoothness loop BEGIN #####
### Let's loop this in the background for a bit
for i in {1..20}
do
sleep 5
### Phone dialer app ###
renice -20 `pidof com.android.phone`
### Launcher apps ###
renice -19 `pidof com.sec.android.app.twlauncher` # TouchWiz Launcher
renice -19 `pidof org.adwfreak.launcher` # ADW Launcher Ex
renice -19 `pidof org.zeam.core` # Zeam launcher
### System apps ###
renice -19 `pidof com.android.mms` # Text message app
renice -19 `pidof com.swype.android.inputmethod` # Swype keyboard
renice -15 `pidof com.sec.android.app.controlpanel` # Task manager
renice -15 `pidof com.android.systemui` # Status bar
renice -9 `pidof com.android.settings` # Settings menu
renice -9 `pidof com.android.browser` # Browser app
renice -9 `pidof com.android.vending` # Market app
renice -6 `pidof com.sec.android.app.camera` # Camera app
renice -6 `pidof com.sec.android.app.fm` # FM Radio app
renice -6 `pidof com.google.android.youtube` # YouTube app
renice -6 `pidof com.google.android.apps.maps` # Maps
renice -3 `pidof android.process.acore`
renice -3 `pidof android.process.media`
### Memory management kernel thread ###
renice 19 `pidof kswapd0` # please give credit and thanks to loopy for this line if it works
done
##### Set nice levels for smoothness loop END #####
What would be ideal is if programs such as launchers (TouchWiz Launcher etc..) had the ability to set its "nice" level upon launch, and have kswapd0 set real low, assuming it's safe to do so. If Android isn't doing this, why not? This isn't a good idea? Maybe it's only Samsung? If so, then... well, I won't ask why not...
NOTE: These commands/parameters vary depending on the su/busybox version installed.
Common SGS1 apk's:
com.android.phone # Phone
com.sec.android.app.dialertab # Dialer
com.sec.android.app.twlauncher # TouchWiz Launcher
com.android.mms # Messaging
com.swype.android.inputmethod # Swype keyboard
com.sec.android.app.controlpanel # Task manager
com.android.systemui # Status bar
com.android.settings # Settings menu
com.android.browser # Internet Browser
com.android.vending # Google Play
com.sec.android.app.camera # Camera
com.sec.android.app.fm # FM Radio
com.google.android.youtube # YouTube
com.google.android.apps.maps # Google Maps
com.android.phone # Phone
Common SGS3 apk's:
com.android.phone
com.android.contacts
com.sec.android.app.controlpanel
com.android.browser
com.android.mms
com.android.vending
com.android.settings
mediaserver
com.sec.android.app.camera
com.sec.android.app.videoplayer
com.sec.android.app.myfiles
com.android.browser
com.sec.android.app.camera
Click to expand...
Click to collapse
Quick FAQ:
I wanna see how it works without it again, how do I remove the script?
To remove, delete the file /system/etc/init.d/S00loopyst. If using Root Explorer, use Mount R/W before you attempt to delete. For adb, use the commands at the DOS prompt:
Code:
C:\>adb root
restarting adbd as root
C:\>adb remount
remount succeeded
Code:
[SIZE=2][SIZE=2]C:\>adb shell rm /system/etc/init.d/[/SIZE][/SIZE][SIZE=2]S00loopyst
[/SIZE][SIZE=2]
[/SIZE][SIZE=2]C:\>
[/SIZE]
For the Test versions (prior to v1.0.0):
Code:
[SIZE=2][SIZE=2]C:\>adb shell rm /system/etc/init.d/S_loopy_smoothness_tweak[/SIZE][/SIZE][SIZE=2]
[/SIZE][SIZE=2]
[/SIZE][SIZE=2]C:\>
[/SIZE]
How can I make this script run first/last?
Scripts in the init.d are run in alphabetical/numerical order, following the letter "S". For example, script "S_ramboost" would run AFTER "S00loopyst", because "r" is after "l". Renaming it to "S_1ramboost" will now run that script BEFORE "S00loopyst".
How do I edit the script and add apps I use?
Open the .zip file and extract the file S00loopyst from /system/etc/init.d/. Alternatively, if installed, you can edit the file directly from the phone's init.d folder. File must be saved in UNIX format.
So I can just edit the script and add apps I use?
You can, but there is no guarantee this will actually work. Very few processes remain in memory...there is a lot of chopping and changing going on in the background. You could alter the script's timing variables, but even then results are unpredictable with anything other than what I call the resident system processes. If you're able to improve the script in any way, let us know.
Will this work on a custom ROM such as CM/MIUI?
Probably not. The "sleep" command within the screen appears to run in the foreground as opposed to the background in a stock ROM, hence making the script useless. Not to mention it may prevent anything else loading.
Are the settings permanant?
Usually. Most apps remain in the memory, although some do come and go. If you use the Task Manager to clear apps from the memory, or use the "Clear memory" option, the apps will have lose their priority when removed from the memory.
Changelog:
v1.0.2a:
Added option for "low priority" tasks.
Early script finish if 2nd loop is complete before "number of checks" is complete.
More detailed log file.
v1.0.1:
Cleaned up some invalid code.
Tested OK on rooted Samsung GT-I9000 2.3.6 ROM.
Tested OK on rooted Samsung GT-I9305T 4.1.1 ROM.
Tested NOT OK on CM 9.1 GT-I9000 ROM. Phone freezes on boot until loop is complete.
v1.0.0:
User friendly - a lot easier to configure.
Total number of processes automatically calculated (used to shorten 1st loop if all apps are in memory).
Debug file created for troubleshooting (includes "renice" pass or fail test) - can be saved to /data partition or sdcard.
Simple "Aggressive" option to increase priority of resident and other apps.
In addition to kswapd0 checking before continuing, launcher app is also checked in a loop before continuing (usually no more than ~15 seconds after start-up).
oom_adj & oom_score settings for launcher to remain resident (doesn't seem to work too well... settings don't appear to "stick").
T2:
"Smarter" script.
Checks for kswapd0 every 3 seconds until found, and then 'nice' level is set.
1st loop: checks for apps 60 times, at an interval of 3 seconds. Once an app is found in memory, 'nice' level is set, and it is not checked again during the loop. (Some apps enter and then leave the memory, which ain't helpful.)
2nd loop: checks again 6 times at an interval of 5 seconds and sets 'nice' level.
Settings are a little more user-friendly.
Debug option (if kernel stores a log file).
T1:
Sets kswapd0 'nice' level after 3 seconds.
Pauses for 15 seconds, sets 'nice' levels for other apps (many of which don't remain in memory).
Download:
Download file and transfer to SD card
Enter ClockworkMod Recovery via Vol+Up/Menu/Power button combo
Select zip and install (remove any "Test" versions before using Version 1 or above)
I'm not a Linux/Android master myself, but this actually is food for thought. I'll try and do some reading, and i would really like to hear more experienced users's opinion about it.
Thanks for the explanatory post.
Very interesting idea
Sent from my GT-I9000 using XDA Premium App
Thanks for the feedback so far. I too would like to hear what more experienced users have to say, as I've only been using linux for a few days now and have quite a lot to learn.
The other good thing about this is, if it turns out to be a good idea, I'm guessing it can be used on basically any Android device.
this is something to be looked at
interesting
I'd personally like to see more discussion on this and input from more experienced people as well so...
BUMP
A good place to start from...
Will take a look more....i am very interested on this and if u need help in scripts i can help u....
Sent from my GT-I9000 using XDA Premium App
interesting approach lpy !
FYI:
looping should be fine since it is also done, e.g. on the Galaxy Spica and CM7
but with different parameters
I have some ideas back in the back of my mind that might help with this issue (kernel-patches and other stuff)
Thanks !
edit:
related:
On Saturday, May 07, 2011 09:35:48 PM Ali Ahsan wrote:
> Hi All
>
> I have xeon server with 16 Gb Ram and no Swap memory.I am running
> cassandra server on two node in cluster.When there is high load on
> server kswapd0 kicks inn and take 100% cpu and make machine very slow
> and we need to restart out cassandra server.I have latest kernel
> 2.6.18-238.9.1.el5.Please let me know how can i fix this issue .Its
> hurting us badly this our production server any quick help will be
> appreciated.
There is more than one bug that causes this behaviour. A few related memory
managent situations (possibly responsible) may actually be avoided if you add
some swap (even if it's not used). My suggestion would be to add some swap,
set swappiness to 0 and see what happens.
/Peter
_______________
Click to expand...
Click to collapse
http://www.linux-archive.org/centos/523508-kswapd-taking-100-cpu-no-swap-system.html
Tried the script with go contacts,go sms, go launcher (edited ofcourse)
it seems to make them open instantly even when they aren't running in the background..
if some1 could make an app which make the app you use as -20 or something and if you close it or move to another one make it back to 0..
It would be really interesting to see this being controlled at Kernel level (if possible.)
I know that it contains the govenors to control the CPU and UV settings (smartass, conservative, etc.), but wouldn't it be awesome if you could determine a priority level for apps installed on your phone so that it removed a load of junk from memory?
I mean I know app developers would all start setting their apps "attention level" to -20, but if there could be an intelligent manager for this, it would make things alot faster I would think.
lttldvl said:
It would be really interesting to see this being controlled at Kernel level (if possible.)
I know that it contains the govenors to control the CPU and UV settings (smartass, conservative, etc.), but wouldn't it be awesome if you could determine a priority level for apps installed on your phone so that it removed a load of junk from memory?
I mean I know app developers would all start setting their apps "attention level" to -20, but if there could be an intelligent manager for this, it would make things alot faster I would think.
Click to expand...
Click to collapse
that s the goal , ultimately all these task killers try to achieve problem as of today is it usually creates more problems then it solves ..
having a script in init.d folder or using gsript (market app ) to run script manually on a regular basis to ensure your apk have the proper level ..
@ OP : good thread
that's really interesting approach but it has also some drawbacks. With nice you give a process more CPU time and in case that the application is not written properly you could end up with frozen system.
looping this script will eat my battery? i see it like a permament recursive process running in background.
phone will sleep properly after? cpu usage?
Indeed there is a speedup if I use parts of your script. This is an interresting approach to gain your most important task faster. I often recognized a large latency if I opened phone or sms/mms. Is their a way to preload this apps and prevent its swapping out of ram?
Edit: recognized a reliable process when updating a lot of apps at once -> no update failed message any more
using scripts should be fine and the resource consumption should not be a problem, if it is used properly
while using nice/renice will gain some benefits in controlling the priorities (i use nice too in some cases), i doubt the effectiveness if all thoese processes are set to low priorities
also, on my phone, the kswapd0 only consumes very little resources and it's not even in the top 10 in the top results but somewhere near 20
All good responses so far, and definitely making a lot of sense.
@simone201 many thanks re the script offer. There is no doubt this script can be improved, for example, having an 'if ... then' condition where once an app enters the memory, the "`pidof" changes from 0 (false) to a PID (true), and then the nice value can be set.
matematic said:
that's really interesting approach but it has also some drawbacks. With nice you give a process more CPU time and in case that the application is not written properly you could end up with frozen system.
Click to expand...
Click to collapse
Very true. -20 can be quite a dangerous setting if an app decides to play up.
lttldvl said:
I mean I know app developers would all start setting their apps "attention level" to -20, but if there could be an intelligent manager for this, it would make things alot faster I would think.
Click to expand...
Click to collapse
haha. I can see "priority wars" happening between developers and apps.
If Android doesn't take advantage of nice, I don't see why we can't. It's possible that in 12 months from now when many phones are dual core (or more?), this may have little impact, but for now this should prove very handy.
ykk_five said:
using scripts should be fine and the resource consumption should not be a problem, if it is used properly
while using nice/renice will gain some benefits in controlling the priorities (i use nice too in some cases), i doubt the effectiveness if all thoese processes are set to low priorities
also, on my phone, the kswapd0 only consumes very little resources and it's not even in the top 10 in the top results but somewhere near 20
Click to expand...
Click to collapse
I agree with all that, however, I don't really see it as a matter of "how much" it uses in terms of resources, but rather "when". My example with Angry Birds and a stock ROM, you will notice little glitches here and there, due to the work kswapd0 does. Lowering its priority still enables it to complete its task/s, but without interfering with real-time action.
Here are examples of some improvements I've noticed:
- Entering your PIN minimal/no delay
- Minimising delay with lock screen pattern/unlock (not the time it takes to wakeup, but the touchscreen response lag)
- Having smoother notifications on the status bar, and smoother pulldown menu response
- Minimising Launcher lag while Media Scanner is running (can scroll through screens without heavy pauses)
- Minimising lag when scrolling through the market while icons are still loading
- Installing/Uninstalling apps while continuing other tasks
- Minimising/eliminating intermittent lagging in gaming
- you get the idea..
The way I see it, at the very least, lowering the priority of kswapd0 already helps with the way everything runs. Setting an app's nice/renice value (if managed in a practical way) will be a bonus.
Just a quick note (uncertain if this is even related):
A couple of kernels ago (yes, i switch a lot) i noticed a large battery consumption by "Android System". This was running JVP, and DarkCore 2.7.3 i think... But it wasn't until I read this thread that I remembered that the reason I switched kernels was because of a "laggy" system. After a while the phone seemed a lot slower, and I had to reboot to get the initial speed.
Now with Galaxian kernel I have an extremely snappy phone, and the "Android System" drain is gone aswell....
How do you get the process name of an application (to edit the script)?
Edit\\ open app in app manager (astro)
I think this is an important topic, but don't see much feedback from developers.
My question as a non developer is:
is there a way for me to use this? seems like the script is already there, so it could be possible to have a flashable zip or a tutorial because different apps/versions require a different script.
Cool thing. I remember something very similar to this when I was having HTC Dream. There was scheduling app which runs similar script like this Will try it and post my opinion
I have a small question regarding setting a CPU Governor. I searched for a while but couldn't find any answer.
I am running AcesMod007-Lite, which has the cpu governor set to smartass. It seems to be okay, but especially when playing music it has some trouble, because it is trying to save too much battery. The music has a small click now and then. And i'm hoping changing the governor will help (if it won't please say so, then I can stop trying ).
So I want to change it to Interactive. This should be possible according to the ROM description (- Available Freqs: CPU interactive, smartass, powersave, ondemand, performance - by snq-)
What I tried to change it:
In recovery (after mounting system):
adb shell echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
(Here I got an error: The system can't find the specified path)
adb echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
(Same error)
adb pull /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor G:\
(This wrote a file with userspace? I changed it to interactive, then pushed it)
adb push G:\scaling_governor /sys/devices/system/cpu/cpu0/cpufreq/
(Upon reboot I checked it, and it was set back to smartass)
When the phone was on:
I tried thesame as in recovery, and got the same errors, only when using adb pull, the content of the file was "smartass".
Does anybody have an idea how to make this work?
I don't have Ace on my phone at the minute, but from what I remember I'm pretty sure there's a scaling script in the system/etc/init.d folder. Use root explorer or similar and long press, open with text editor, then change smartass to the governor you want.
Reboot the phone and it should now be using the one you selected, I hope
Use ondemand governor. Also had problems with music playing with smartass governor in other roms. After switching to ondemand they never occurred again.
Swyped from Oxygen with Transparent XDA App
@mick
Thanks! You were right. Now it automatically switches to ondemand (thanks MatDrOiD).
But for some reason the music still clicks . Should I increase the processor max freq for screen off, or does anybody know any other solutions?
I dont really know any other solution other than to ask, did you change both governors, screen on and screen off?
btw the screen off I use "min 128000" and "max 384000"
yes, try upping the max til the clicking stops
Yes I did changed them both.
My frequencies are for screenoff (in that same file):
SLEEP_GOVERNOR_FREQUENCY_MIN="245000"
SLEEP_GOVERNOR_FREQUENCY_MAX="384000"
So I think that should be okay.
Somewhere I read that it was an possible issue with every Sense HD ROM, because there was an error in the HTC code. Then it would be unsolvable.
I am going to try setting the min to 128, maybe that magically helps.
PerfectLight said:
Somewhere I read that it was an possible issue with every Sense HD ROM, because there was an error in the HTC code. Then it would be unsolvable.
Click to expand...
Click to collapse
I use insertcoin at the moment and don't notice it.
It might not be the cpu settings, I don't know what else is tweaked in the rom, but if there are other things then it could possibly be that, memory etc.
I'm pretty sure I read in the thread when I used Aces that installing setcpu would disable the scaling script. Maybe install it and see if your problem clears, nothing to lose
It has been solved! I now use a different build.prop, which seems optimized in some way.
The clicking is gone, and the entire phone seems more responsive .
Thanks for the great help!
Help the other users: What are your settings?
CM11 & Aero Kernel by Quarx and Blechd0se is getting the new standard system for our old Defy.
With it came so many new settings that it is hard to keep track which settings are best for...
#performance (smooth system)
#battery (long battery life)
#heavyuse (intensive tasks like games)
Please share your settings here, maybe use the hashtags for your personal use case so people can find easily what they are looking for.
If you have other use scenarios than the three mentioned above: Tell me, I'll add them.
A list of possible tweaking points:
Code:
[LIST]
[*]CPU clock
(Aero Control app or Settings/Performance/Processor)
[*]VSEL settings
(Aero Control app or Settings/Performance/Processor)
[*]GPU clock
(Aero Control app)
[*]I/O Scheduler
(Aero Control app or Settings/Performance/IO Scheduler)
[*]Governor
(Aero Control app or Settings/Performance/Processor)
[*]Dynamic FSync
(Aero Control app)
[*]zCache
(Aero Control app)
[*]zRAM
(Settings/Performance/Memory)
[*]Low Memory Option
(Aero Control app)
[*]Swappiness
(Aero Control app)
[*]Trim
(Aero Control app)
[*]16-Bit-Transparancy
(Settings/Performance)
[*]KSM
(Settings/Performance/Memory)
[*]Purge Assets
(Settings/Performance/Memory)
[*]Background processes
(Settings/Developer options)
[*]USB Debugging on/off
(Settings/Developer Options)
[*]HWA
(app)
[*]Greenify
(app)
[/LIST]
#performance / #battery
My settings (very very unimpressive so far):
Greenified apps like Google Maps, My Tracks, Dropbox, Pocket
I still got problems with Google Maps and Navigations, I got freezes and slow responsiveness.
Battery life is about 24 h with about 10 h in flight mode.
Battery Monitor Widget says I got 0.4 - 1.5 % battery loss in flight mode.
I still don't get all the settings that are out there!
My CPU frequency
Vsel 300/17,600/32,900/47,1445/68
You really want to use your Defy as a frying pan, right?
My setup is for #battery
I get 22-24 hrs with 2&1/2-3 hr screen on. This is actually the worst ever. I've managed 1 and a half day with 4 hours screen but I wanted a taste of KitKat.
All I did is keep governor on On demand and greenify a lot of apps which just suck battery.
The main being hangouts. I don't tweak anything else n m happy with my setup.
Sent from my MB526 using Tapatalk
SetVsel 18/300, 28/600, 38/800, 58/1000. Governer: Smartass or Interactive. I/O scheduler: SIO or Deadline. Currently on Quarx 4.4 KitKat. On previous build I had 0,75% p/h battery usage. No Data, Wifi off when screen off, BT off. Minimum brightness setting.
PimpMyRom
Regarding CPU settings, I just increase to 1200MHz, down its vsel to 58, 900/54 and let the rest alone. I also usually enable a lot on PimpMyRom, specially hardware acceleration and network tweaks. Will post more details when have more time.
Anyone using PimpMyRom to share what tweaks?
neonod said:
My CPU frequency
Vsel 300/17,600/32,900/47,1445/68
Click to expand...
Click to collapse
Holy crap, really? What Defy do you have? mb525 or mb526?
HWA settings
While deactivating HWA for most of my apps I realized:
- leave HWA on for Camera!
How to change VSEL?
Could you please point me as to how to change de VSEL?
I'm trying to test the workaraound posted here http://forum.xda-developers.com/showpost.php?p=50482478&postcount=2754 for callui delay.
I've looked in Aero control and Performance/Settings/Processor but I can't find where to change the VSEL values!
Thank you!
fede_arg said:
Could you please point me as to how to change de VSEL?
I'm trying to test the workaraound posted here http://forum.xda-developers.com/showpost.php?p=50482478&postcount=2754 for callui delay.
I've looked in Aero control and Performance/Settings/Processor but I can't find where to change the VSEL values!
Thank you!
Click to expand...
Click to collapse
CPU performance>Live OC/UC
I'm using something between performance and battery setting which is still under testing and tweaking.
Governor: interactive
1200/61
900/53
600/43
300/30
+ suspend off and hifreq 1200 to decrease well known delay on KitKat.
The battery can stand for around 15hrs of intensive use (my ex Milestone would work 2x longer with similar usage)
BTW. Does "set at boot" in aero control must be on or can I turn it off?
Stoku said:
CPU performance>Live OC/UC
I'm using something between performance and battery setting which is still under testing and tweaking.
Governor: interactive
1200/61
900/53
600/43
300/30
+ suspend off and hifreq 1200 to decrease well known delay on KitKat.
The battery can stand for around 15hrs of intensive use (my ex Milestone would work 2x longer with similar usage)
BTW. Does "set at boot" in aero control must be on or can I turn it off?
Click to expand...
Click to collapse
all i see in CPU performance is frequencies and governor settings
maybe i need to turn something on?
learns a lot from this thread.
erezmil said:
all i see in CPU performance is frequencies and governor settings
maybe i need to turn something on?
Click to expand...
Click to collapse
Which rom are you using?
The same thing happened to me while I was using an older Quarx's rom which had overclocking disabled. I switched to the 23Feb nightly and now I do have the Live OC/UC option (plus my Defy is faster and snappier than ever!).
Codeseven said:
Holy crap, really? What Defy do you have? mb525 or mb526?
Click to expand...
Click to collapse
mb526 cm 11
#performance
- There's also the property [persist.sys.force_highendgfx] if your build has [ro.config.low_ram] set to [true]. This will toggle features intended for more powerful phones, especially since HWA introduces a memory overhead per app. i'm running [ro.config.low_ram] with disabled highendgfx, but customized statusbar (just for the transparency there) and recently used viewer (stopped the thumbnailing)
- Also HWA disabled for a lot of stuff (Keep HWA on for camera and games/3d apps!)
- Pretty standard clocking with 1000MHz max on my defy
- I'm not using Greenify (anymore). Didn't make that big a difference.
- Using service disabler and CM11's privacy guard to hinder starting of unwanted apps
- Also remember, that each app that monitors phone calls has an activity of it triggered on beginning/end of calls. Thus the delay gets even longer. For example, VLC's native lib is loaded on each incoming call
#heavy-usage
- userinit-mounting /data/dalvik-cache on /cache/dalvik-cache to save space on /data and don't waste it on /cache
- sshd is also a must-have
- stripping /system/{priv-}app
Anyhow... as always you mileage may vary...
Reporting in with a different approach. I'm using a combination of Aero Control and the V6 Supercharger. Wanted to share my configuration, in case it's useful to someone else.
Aero Control
CPU Settings
Governor: Performance - Max freq: 1200MHz - Min freq: 400MHz.
OC Settings:
1200MHz/61
900MHz/53
600MHz/43
400MHz/30 (These lower two speeds I haven't played around with to see how low the vsel can go, will experiment in future, somewhat irrelevant on the Performance governor anyway)
Memory Settings
Dynamic FSync is ON
Writeback Control is ON
Low Memory Option is ON
Swappiness is 30
IO Scheduler is Deadline
(I actually want to set the IO Scheduler to "noop", however, it tells me there are no settings available and reverts to Deadline automatically.)
Greenify (Get it here)
Basically all non-essential apps are greenified. Location apps (such as Foursquare and Maps), and anything that doesn't require push notifications has been set to hibernate. Not sure whether this is having any effect, but it certainly cuts down on multitasking time between apps as they hibernate.
V6 Supercharger (Get it here)
Only at 50% Supercharged, so it can be optimised further if required. I'm getting pretty good performance out of the phone as it is, though, but will see how it goes.
Configured with option 10, "Quick V6 Cust-OOMizer". Minfree values are 8, 12, 52, 62, 71, 81 MB.
Configured the following options, all else are set to "OFF":
Kernel and Virtual Memory tricks were ignored (status: Disco Dance), didn't want to interfere with Aero Control in any way.
Misc & SD Card tweaks are ON.
3G TurboCharger is ON.
Engine Flush-O-Matic is configured to run every 6 hours.
Auto zipalign ("Fix Alignment on Boot") is ON.
Services.jar has not been patched, the app can only auto-patch on ICS/JB.
Others
HWA is OFF for all apps except SystemUI, Launcher, Camera, com.android.incallui (but not phone or dialer) and a handful of personal apps that lose performance without HWA.
Will report in with battery life at the end of the day, so far it has been off charge since 7:30 AM (It is now 11:15AM) and I've lost 40% battery -- however this is with 1hr+ of screen-on time while training (I use a workout logging app) along with playing music over bluetooth headphones.
(O.T. On a side note, I'm finding that using Apollo + BT headphones is somewhat sketchy (stuttering music), can anybody recommend a light-weight music app?)
EDIT: Battery Results
Note: I'll be posting new battery stats at the end of the day. I realised this morning that I had the screen brightness set to maximum yesterday, set it to auto today and only lost 15% during my training session (instead of 40% like yesterday).
After being on battery from about 7:30am (and an accidental 20 minutes or so charging in the car when I forgot I was supposed to *not* be charging it) I was down to 6% at 5:30pm.
{
"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"
}
To be fair though, the phone saw pretty heavy use (i.e. compass for work, much moreso than usual), and the battery performance is just about on par with my Droid 4. The performance gains are noticeable, and I have ample opportunity to plug the phone in through the day in most cases, so I find this acceptable. I'll configure a low power profile at a later date I think, for those times where I need it to just be a basic phone for an extended period of time.
InCallUI - incoming call delay
Hi there. I'm using SlimKat 4.0, with greenify, seeder and some aero control tweaks. The phone is smooth and responsive with average battery life, however I can't get rid of the 2-3 sec delay when receiving incoming call, and the wake-up delay. I tried to lock com.android.incallui in memory, without success. Also tried modify flip settings during incoming calls, but the delay stays on. Do you guys have any idea?
Thanks.
sutee89 said:
Hi there. I'm using SlimKat 4.0, with greenify, seeder and some aero control tweaks. The phone is smooth and responsive with average battery life, however I can't get rid of the 2-3 sec delay when receiving incoming call, and the wake-up delay. I tried to lock com.android.incallui in memory, without success. Also tried modify flip settings during incoming calls, but the delay stays on. Do you guys have any idea?
Thanks.
Click to expand...
Click to collapse
There are still no fixes for that issue.
My new settings:
OC/vsel - defaults, no Aero Kernel Control/bootmenu
low_memory = true
HWA enabled (+comments/tips):
- all games,
- com.android.systemui // Interface - is it really needed? Disabling now and testing
- mobi.mgeek.TunnyBrowser // Dolphin Browser - flickering GUI when HWA disabled
- com.android.mms // SMS/MMS - flickering GUI when HWA disabled
- com.android.camera2 // Camera
- com.android.gallery3d // Gallery - some users of SK 4.0 posted to disable HWA to solve some issues, for me it works great as it is
- com.teslacoilsw.launcher // Nova Launcher - any launcher should be enabled (theoretically)
- com.android.musicvis // Music Live wallpappers?
No Greenify.
XPosed + BootManager (yay!)
Smooth, stable and good settings for daily use. Battery ~ 53% ~ 1d 5h.
Stoku said:
There are still no fixes for that issue.
My new settings:
OC/vsel - defaults, no Aero Kernel Control/bootmenu
low_memory = true
HWA enabled (+comments/tips):
- all games,
- com.android.systemui // Interface - is it really needed? Disabling now and testing
- mobi.mgeek.TunnyBrowser // Dolphin Browser - flickering GUI when HWA disabled
- com.android.mms // SMS/MMS - flickering GUI when HWA disabled
- com.android.camera2 // Camera
- com.android.gallery3d // Gallery - some users of SK 4.0 posted to disable HWA to solve some issues, for me it works great as it is
- com.teslacoilsw.launcher // Nova Launcher - any launcher should be enabled (theoretically)
- com.android.musicvis // Music Live wallpappers?
No Greenify.
XPosed + BootManager (yay!)
Smooth, stable and good settings for daily use. Battery ~ 53% ~ 1d 5h.
Click to expand...
Click to collapse
Thanks for the info! :good:
However I use some UC in Aero Control ([email protected], [email protected], [email protected], [email protected]), because I found the original Vsels a bit high. It's still stable and fast. I also modified "hispeed_freq" to 110000 and "suspend_enabled" to 0 in advanced CPU settings. I think it makes the phone wake up a little faster.
I use the HWA settings default on, no issues, not in gallery either.
I use Greenify and Seeder apps, but it can be true, that they are just placebo.
Never used BootManager, will try!
Not sure if this is the right thread to talk about it, but recently I flashed the 5.4 version of this kernel http://forum.xda-developers.com/showthread.php?t=2775998 and so far so good, it fixed the 4.4.2 S Pen problem. However, I've noticed that, when I use multitask mode (2 apps open at the same time stacked on top of each other), there is some light stuttering(?). Not laggy, but when I scroll it kinda stutters a bit. Strangely enough, this only happens during multitask mode, not if I have a lot of apps open in the background. This isn't the real problem though, the real problem is that the kernel seems to cause the S Note app to lag so much that it's almost unusable. Another problem i've found was that SOMETIMES when listening to music when the screen is off, the music lags so much that it's inaudible. Not often, though, and I dorn know what specifically causes it, other than the low GPU speed. The kernel specifically states this:
"GPU settings are:
Step0 54MHz = new Idle step = when in browser mode and no gaming this low GPU speed will help save power
Step1 266MHz
Step2 350MHz
Step3 533MHz = new speed foe step3 for better performance in drawing
Step4 700MHz = New OC speed for the better gaming performance
GPU settings are not editable and hard set in the kernel"
I'm taking a guess here but I think that the low, non editable GPU settings are causing the slowdowns.
Is there any way to somehow increase the GPU, even though it says that it's uneditable? Has anyone used this kernel before and found out how to fix it? Would downgrading to a lower version of the kernel fix the slowdowns? This is the only kernel I found that fixed the slowdown for my device, I can't really install a different one, but I can downgrade this specific kernel, which I think could fix it but I'm not sure. Are there any other fixes?