Hy everyone,
This Thread is reserved for sharing information about Scripts in Android and how they Tweak the Android system through the Linux kernel and what are requirements of Running Scripts correctly!
Main Goal of Scripts:
Well,Scripts Has a lot of Goals,Such as optimizing,improving and in Some Lines we can say,Scripts can:
-Improve Performance and GUI Smoothness
-Improve Battery Life
-Tweak and Optimize the Android engine!
Requirements of using Some Scripts:
Since Android is Based on Linux,there is a possibility to use Linux Scripts to attempt the Goals Listed before in the thread,and like any Tweak you want to Apply there is some requirements you need to Use correctly those Scripts and some of the Importants are :
-Custom Kernel that support init.d(Custom Kernel=Modified Linux kernel,for example in GALAXY ACE Forums here we have:CF-Root-All CM kernels,etc...)
-Having ClockWorkMod 5 or above to Flash Scripts
-at Least 2 MB free in /system
-Root Access(BusyBox should be included)
Useful Info About Tweaks:
-LMK(LowMemoryKiller):
The LowMemoryKiller is a constant debate between more free RAM and more multitasking capabilities as free RAM (more than 60MB free) is actually wasted RAM.
The LowMemoryKiller is actually a feature in the Android OS for better memory management.
This is an important feature due to the perennial problem of having low free memory causing lagginess and slowness in launching apps. When you have free memory lingering around the number of 40MB or less, the Android OS just lags like hell.
What this would mean is, you would want to tweak the LMK to not have the situation of it having less than 40MB (or even close to that).
The modern Linux machine in the Android ecosystem relies on a mechanism called Low Memory Killer (LMK) to consistently free up RAM. This is due to Android's internal mechanism of caching apps (and never fully exiting them) when you press the back button. This is to enable faster app switching and provide a seamless experience for apps usage model. Android also, by itself will also constantly look for often used apps to cache them for faster app opening. This will happen even before your system fully boots.
Now, when you mention LMK, the most obvious thoughts that come up are minfrees and Out Of Memory (OOM) groupings. Yes, those two are integral parts when it comes to LMK. The issue here is that no one actually mentioned that there are two LMK systems in Android, that being:
- Linux LMK
- Android Dalvik VM LMK
Journaling/Barriers:
This has been a touchy subject here in XDA for most people who debate about it. Most recently,Some Scripts included a way to disable journaling on these partitions:
/system (System is read only, it's safe to remove journaling. However, you will not see speed increase by removing it as you're not writing onto /system 99.99% of the time unless you're using Titanium backup to remove system apps or copying init.d scripts to it)
/cache (Cache can be rebuilt on the fly. Data corruption on it is not game breaking)
/data (All of your data on your phone is here. Removing journaling can risk data corruption. Read more below)
On whether we need journaling or not, I will pose this situation:
Journaling is required to maintain data consistency in events that could lead to data corruption. Data could get corrupted in a number of situations:
- Misbehaving app that constantly writes without syncing/committing data to the disk
- Power loss due to forced reboots or boot-loops when data is partially written/committed into disk
Memory Leaks
If you found out that your Android is laggy after sometime and a reboot will make it faster, then you're experiencing memory leaks. "free" is a command to show your currently free memory. It will not necessarily be the same value as your phone's free memory.
Busybox
Weel,Busybox is required to perform all of your superuser activities in your android phone. There are some problems associated with this when ROM developers decide to use a certain version of Busybox that are incompatible with the binaries that we use in our phones. When you found out that after changing your kernel/ROM:
- You still have superuser and Titanium Backup still works but, Root Explorer/File Expert can't copy files correctly to the /system after mounting R/W!!
MinFree:
Minfree is part of the Kernel (present on both Gingerbread and Ice Cream Sandwich) and It an Option available in Linux kernel Optimized for Android to Improve MultiTasking and It differs from a Phone to another because of the RAM available in users space.
The Minfree is opefully adjustable Like the LMK to optimize Multitasking to a lot of options(like:aggressive,gaming,balanced,etc...)
The Minfree Option can be Found as a part of Linux Scripts for better RAM management!
Network Tweaks:
Well,in Linux Scripts for Android you can find some Tweaks that increase the speed of you Network Download/Upload and those with various types of Netwoks Like 3G,Wi-Fi,etc...
Build.Prop Tweaks
Well,those Tweaks can generally be found in Build.prop in /system and they are for various improvements Such as allowing Phone to Sleep better,changing wi-fi scan interval,changing window animation delay,some network Tweaks,possibility to change density,etc...
SD Card Speed Fix:
This is a Tweaks that Has the goal of increasing the readahead speed of your SD Card,and that by changing the valories of SD card readahead Like:
-256kb
-512kb
-2048kb
-4096kb
Smoothness Tweaks
Well with the Linux Kernel there is a possibility to add some Tweaks to the Linux scripts and those to optimize the GUI Smoothness and also Lock Home launcher in Memory!!
Credits:
Well,what I can say is that I shared those useful Info after some research and my experience with Linux/Unix,and those some of My main Target that I use to find some of the useful info:
-XDA Forums
-Goolge
Reserved 1
Reserved 2
Sweet
unwritten sentance
Great idea
Sent from my GT-I9100 using xda premium
I still have to learn a lot, thank you, very useful.
Küldve Samsung Galaxy Ace-ről Tapatalk 2 használatával / Sent from Samsung Galaxy Ace using Tapatalk 2
Welcome
kmarci said:
I still have to learn a lot, thank you, very useful.
Küldve Samsung Galaxy Ace-ről Tapatalk 2 használatával / Sent from Samsung Galaxy Ace using Tapatalk 2
Click to expand...
Click to collapse
Your Welcome Dude,I would LIke to share more useful info is the upcomming updates !!
Nice stufff i loved reading it way to go slaid thanks a lot ..
Looking forward to the updates
And will the camera issue be solved in next update?
Plz reply fast
Dragonoid said:
Nice stufff i loved reading it way to go slaid thanks a lot ..
Looking forward to the updates
And will the camera issue be solved in next update?
Plz reply fast
Click to expand...
Click to collapse
Well,About CM7.2 Please I'm waiting I don,'t know If I will get a Cooper of another Device so Please Guys no ETA!
Thnks a lot dude.
Sent from my GT-S5830 using XDA
slaid480 said:
Well,About CM7.2 Please I'm waiting I don,'t know If I will get a Cooper of another Device so Please Guys no ETA!
Click to expand...
Click to collapse
Dude that was a joke...the cm9 camera joke ..take it easy ...i m not asking for eta's
You know you are rooted when you use XDA more than FB
Related
Since Sony Xperia X10 is now running on 2.1, topics related to 1.6 is not mentioned here.
This thread are created based on compilation of other threads related to optimization, and meant as an entry point for user interested in optimization.
Understanding your Android
Just to put something short, so we can understand our Android and some points related to optimization better.
Android is an open source operating system owned by Google that is maintained by Android Open Source Project (AOSP). The operating system is based on modified Linux kernel, where most of the application is written in Java language and running on DalvikJVM.
Android do things differently than old generation OS like Symbian, and below is the explanation related to performance.
Unlike Symbian, Android designed to have as many as application loaded and running in the OS, it maintain list of least used application that will be unloaded when a requests for more memory is made when the free OS memory is already low.
These are the nature of JVM, where allocation and deallocation of memory is managed by garbage collector as doing things in bulk is faster then working with small chunks. So you don't have to be alarmed when you open a memory viewer application and see your Android is running on low memory. Freeing RAM with task killer is only momentarily, as you uses the phone again, the free memory will goes down again.
Android phones stores system application, data and files internally in NAND flash area and stores user data in internal memory storage or external storage such as SD cards. This memory is different than your operating sytem memory.
Operating system memory is memory allocated for the kernel, native application and most application you download from market. Installing a lot of application will not directly reduce free RAM, nor uninstalling or removing files will increase free RAM directly. Action such as removing ringtones, wallpaper and even Sony PC Companion ISO will not free your RAM
In general there are two type of android application. One is a standalone application that only run if you open the application, and the other one is running even you haven't open the application which called service.
By design, guideline and suggested practice, application should not continue to run lengthy processing when it get pushed to background via home button, back button or switching to other application; properly build application will just go idle. Which means you should be less paranoid about application eating you processing power.
But service is meant to run lengthy operation as they don't have user interface and runs in background. Some service meanth for pushing or pulling data from internet, reading your files and do processing like playing songs, or just doing something then update the widget just to make you happy. Unnecessary services are the things that you should be aiming if you want to optimize your Android.
General FAQ about Optimizing Sony Xperia X10 2.1
I just updated to 2.1 and my phone really feel slower than 1.6
Since you had been using 1.6 for quite some time, your SD card should have quite a lot of photo and media. Just after you updated to 2.1, and add your Google and maybe Facebook account, the new Face Recognition service is actually already starting to scans all your photo, then when your Google and Facebook contact arrived, it will try it best to match photo and contact. This new Face Recognition really kicks hard in your processor, then after a while your phone will be as fast and even better than old stock 1.6.
I still feel that the phone is slow, is there any simple and quick way to optimize
The simple and quick to optimize your phone instantly is by changing the 2.1 dalvikvm to JIT capable dalvikjvm. You can read and apply them by reading the thread referred below, but before you do that open the below link in background tab and please do read more first.
Android 2.1 OPTIMISER V002 by Jerpelea
2.1 Customizer v0.99.1 by ttxdragon
Both optimizer contains script that will erase your "junk/unused" application from your phone, be sure to read them first before executing. My suggestion is you apply JIT modification first, before going optimizing by remove your "junk/unused" application.
Please do remember that you have to Root your X10 first.
How to root the phone
You can root the phone using methods below.
OneClick z4root Android Application
SuperOneClick Windows Application
Is [INSERT APP NAME] here is save to remove?
By removing unused application, you will gain certain amount of performance gain. Below are the links with app list.
2.1 Customizer v0.99.1 by ttxdragon
Official List of Apps that Can be Removed from a 2.1 x10 by exekias
And still a lot more in other Sony Ericsson X10 forum section but those two is quite complete
And in case you forgot to make backup you can go to
2.1 System Apps - In Case You've Deleted Them by XperiaX10iUser
After doing all that my Quadrant Benchmark is still low
You should run Quadrant as least two or three time or until you get best score, the first one usually yield low score, because a lot of memory allocation process to Quadrant happening during the first run.
Tuning Utilities
Memory Usage - Application to see how much memory used by your application and services
Advanced Task Manager - Application to see is your application running on foreground, background or idle and its memory usage
Quadrant Standard - General benchmarking tools to see if your changes make improvement
Linpack - Processor benchmarking
Titanium Backup Pro - Back up application, the paid version can freeze your app rather then uninstalling it.
Fine Tuning Guide
About Widget, Application shortcut and Live Wallpaper
Even though widgets looks really good in your phone, some widgets required simple periodic process for updating its display, some have a full blown service running to support it. A very instant example that you can see in your phone is the Power Control widget and the new Status Switch widget.
Power Control widget update triggered by configuration change such as wifi on and off, while Status Switch widget which have a battery level is triggered by a running service. Just put Status Switch widget then go to Settings -> Application -> Running Services. Then you will see there a Status Switch Update service running in background to update the battery level.
By selectively put widgets on your home screen, you can gain extra processing and memory. Timescape widget is even worse, it have three service running to support it.
Application shortcuts also uses extra memory in your home screen app and your home screen app is usually system persistent, reducing number of shortcut will give extra RAM and reducing the required rendering process during scroll.
Live Wallpaper just as the name said looks really nice and require extra memory and process of course.
Tuning via build.prop
Some value can be added and modified into build to increase the performance of X10.
dalvik.vm.heapsize=32m
This will change the maximum memory size per application. If you decrease the value, smaller application starts faster, but big application like games will prone to crash, if you increase the value too much, smaller application takes longer to start, but big application will extra gain benefit from less garbage collecting.
Reference: Test: How changing the max amount of memory per VM Heap can effect your ROM (Cyanogen)
windowsmgr.max_events_per_sec=60
This will change the maximum number of touch screen gesture events per second, the bigger the value, the smoother the scrolling will be
There still some more build.prop tweaks that you can do, but not all of them will be processed by X10 as each device behave differently.
reservation for more article to go
Nice clean guide, should help newcomers. Good work!
synlar said:
Nice clean guide, should help newcomers. Good work!
Click to expand...
Click to collapse
Thanks, but i am quite depressed after reading it my self and found that i make a lot of typo. Had to revise and revise again.. lol.
Nice piece of work there Xeviro..
Can you post your build.prop please i cant find the windowsmgr.max_events_per_sec=60 one in mine.
Wolfbreak said:
Can you post your build.prop please i cant find the windowsmgr.max_events_per_sec=60 one in mine.
Click to expand...
Click to collapse
That one you add by your self to you build.prop. If you look further in google, there still a lot of other build properties that you can set to Android.
There is another way to add and test build.prop instantly by using adb shell command "setprop key value" and "getprop key". Some property will take effect immediately, some require you to reboot.
How do you prove that the windowsmgr.max_events_per_sec=60 actually works? After applying that I tried input benchmark and it still showed 33hz.
ooidort said:
How do you prove that the windowsmgr.max_events_per_sec=60 actually works? After applying that I tried input benchmark and it still showed 33hz.
Click to expand...
Click to collapse
Ok, i just checked, that for this build.prop property to take effect, you need to reboot the device first. I just test on my, giving 10 and 200 in value. With 10, the input benchmark showing less then 20hz most of the time, while with 200 it gives me 40hz+.
Also you can see if you scroll the app list with 10 and 200 value, you can see the difference.
xeviro said:
Ok, i just checked, that for this build.prop property to take effect, you need to reboot the device first. I just test on my, giving 10 and 200 in value. With 10, the input benchmark showing less then 20hz most of the time, while with 200 it gives me 40hz+.
Also you can see if you scroll the app list with 10 and 200 value, you can see the difference.
Click to expand...
Click to collapse
I definitely notice the difference between 10 and 200, but it still doesn't go above 33hz... Maybe it's the framerate cap doing it's thing?
xeviro said:
Thanks, but i am quite depressed after reading it my self and found that i make a lot of typo. Had to revise and revise again.. lol.
Click to expand...
Click to collapse
Good write up! I was actually going to say something about the typos/errors, because I'm a jerk, but, you noticed them too, so I feel satisfied.
I hope people will read your little intro about RAM and realize a task killer's real purpose is to kill rogue services that kill battery.
xeviro said:
That one you add by your self to you build.prop. If you look further in google, there still a lot of other build properties that you can set to Android.
There is another way to add and test build.prop instantly by using adb shell command "setprop key value" and "getprop key". Some property will take effect immediately, some require you to reboot.
Click to expand...
Click to collapse
But where do i need them to add? At Beginning or at End or Middle?
iead1 said:
Good write up! I was actually going to say something about the typos/errors, because I'm a jerk, but, you noticed them too, so I feel satisfied.
I hope people will read your little intro about RAM and realize a task killer's real purpose is to kill rogue services that kill battery.
Click to expand...
Click to collapse
Please forgive my typo and grammars, i life in country where people simplify their way of communication. I cannot talk proper now. hahaha
Wolfbreak said:
But where do i need them to add? At Beginning or at End or Middle?
Click to expand...
Click to collapse
Anywhere
xeviro said:
Please forgive my typo and grammars, i life in country where people simplify their way of communication. I cannot talk proper now. hahaha
Anywhere
Click to expand...
Click to collapse
If i add this to the end of my build.prop my phone does not accept SIM unlock code anymore .... ??
EDIT: Strange, second time it worked ... btw. what is the default value ?
Ive added dalvik.vm.heapsize=32m to see what diff it will make and well..
wow.. it killed my phone.
It will show sony ericsson on the screen when you turn it on and just stay there!
So yeah... how can i fix this?
It's bricked, you'll need to reflash the software!
:-(
OP- Great thread, thank you!
Post on my Rooted 2.1 X10i using Tapatalk Pro and Swype
Yeah i knida noticed...
fixed now but im not trying that heapsize thing again..
Anyone here have the original/untouched nordic build.prop? I'm really appreciate it if you share it here. ^_^
Sent from my Xperia X10i (2.1 and rooted) using XDA app
Seansmit17 said:
Ive added dalvik.vm.heapsize=32m to see what diff it will make and well..
wow.. it killed my phone.
It will show sony ericsson on the screen when you turn it on and just stay there!
So yeah... how can i fix this?
Click to expand...
Click to collapse
Seansmit17 said:
Yeah i knida noticed...
fixed now but im not trying that heapsize thing again..
Click to expand...
Click to collapse
Its working correctly in my phone, and this heapsize settings is the most common one in android modding. you go check google and see the results.
I also attached build.prop from my phone.
Hi,
recently i came upon a thread with someone asking :
how to optimize the archos to be quicker ?
As this is propably a question many people might ask (even I still do ) I thought about creating a thread about. This is not just to answer his question but also for all u nerds out there to corrent me - as I might be wrong in some points AND to gather new options to speed up the device. This is what i have learned yet...
Anyway all of the things I list here require root as far as I know. So get your device rooted or abandon the Thread
ALL THINGS IN THIS THREAD ARE WITHOUT WARRENTY - SO IF YOUR DEVICE STARTS MUTATING INTO A DOG HUNTING YOUR ASS FOR NEW FLESH - BE WARNED
Memory Management:
Introduction: HAVING FREE UNUSED MEMORY ON ANDROID HAS (nearly) NO ADVANTAGE (exception having 0 memory also fu**s up the device -> 1. )
All of those methods wont make your device faster in the meaning of really getting faster in speed... as android already has a quite good memory management.
BUT if u get more space in memory your device can keep more of the apps U LIKE in memory (being inactive according to app lifecycle). This will make them get called faster next time u use them and your device will "feel" faster and more responsive.
1. What should work on all roms are the "minfree" settings -> meaning when android really kills apps - depending on free memory (if u don't know what is mean by - search for the "App Lifecycle" of android)
You can try setting those to the values mentioned by sibere (scroll down) or try finding your own settings. There for u can use any app like "AutoKiller Memory Optimizer" just serach "memory optimizer" in the market.
KEEP IN MIND - you may play a bit with those settings - BUT still u should know what u are doing if u use it!
LOW: If u set the values to low the device will kill apps very late keeping much of them in memory this might make you device get slow. If there is too less Memor fo a "new" app or another process just need more memory while running it has to close down other processes before memory can be allocated.
HIGH: If u set em too high u kill most apps instantly - and your device will get problems and might get unstable as far as i understood.
2. Try gettign more "free" memory by disabeling services - as those got the highest priority they wont get killed that fast by the memory management. For checking u might get an app like "TaskManager" wich lists all running processes.
Just check out what takes your memory and disable those u dont need.U can disaable them by using "Titanium Backup" disable app / uninstall em / or just uncheck their autorun by using a programm like "Autorun Manager". Remember if u just disable the autorun they might (re)start later still.
3. Use a low sceen count in your launcher and keep the widget count low. This is related to 2.) as most widgets run a "background service" to update itself / pulling information (e.g. a waether widget getting latest conditions, a calendar widget keeping connection to your calendar app,...) - each widget took at least 8MB memory when i checked with TaskManager - "greater" widgets like "Fancy Widget (sense like clock and weather widget)" sometimes take up to 25MB
4. DONT USE A LIVE WALLPAPER (live wallpapers use MUCH memory most 20MB-40MB - either they get closed down all the time - or they just reside in memory taking the memory u wanted to use for keeping other apps active)
I also noticed that the App Drawer got "much/noticeable" slower in every Laucher I tested while a live wallpaper was active
5. DO NOT USE A TASK KILLER (remeber the introduction!!! - and think about it yourself - if at least 20 ppl ask why - i write this down here )
6. SWAP / COMPCACHE (can be activated through UD config) - this is a really hard question - those methods extend your memory but the memory u gain is MUCH slower then the internal memory. So again u have to decide and try out if it helps u or it doesn't (I used em long time but never realy felt a big advantage of. Compcache even made my device feel slower and i got more FC's most time - also I tried to figure out how the memory management uses this "memory". But i din't find a clear answer yet - as some ppl mentioned that "inactve apps" wont get swapped - need some clear source... Anway in general those 2 should increase Multitasking capability at cost of speed.
7. FUDGESWAP
- noting yet - its GINGERBREAD only - so we have to wait...
FINALY: u have to decide on your own what u really NEED to run "simultaniously" (I personaly rather have less widgets and run background services like growl, eventghost, tasker) but u can count it yourself by checking back with taskmanager and having in mind your archos (GEN8) just has 256MB of internal memory.
CPU Manaagement:
8. (UD) If u got Urukdroid u can try setting your CPU Governor to another value like:
"Interactive" is more reactive than "on demand" (-> SIBERE)
9. Try an OC (OverClocked) Kernel -> get it in the Urukdroid Dev Thread (I wont link any here as u should know what u do and wich u choose!)
BEWARE not all devices can use an OC Kernel (sadly mine can't) but try it out...
10. Try overclocking your device with the Milestone Overclock Utility. This overclock method is based on a module insert. Again this just works with root.
OVERCLOCKING:
Each CPU is different -> each device is different and can handle different maximum speeds - this is related to the former position of the CPU on its waver while production...
So u have to try out what your CPU can handle safely - so it might happen your device will refuse to boot after u flashed a kernel or set some permanen OC values. Keep a BACKUP or reflash old kernel...
In general u normaly can't brick your device by overclocking as the CPU overheats -> safety function of the CPU stops it -> the device resets itself before the CPU get "burned" (hope this also aplies to ARM processors )
Other:
11. The Launcher: I tested out much lauchers already: ADW, ADW EX, VTL, Laucher PRO, Zeam Laucher, GO Laucher - most of them seem to be eaqual in speed and more differ in features (event Laucher PRO is still the fastest on my Wildfire [but development stopped some time ago], GO seemed to be a bit slower imho) - take any of those but avoid taking some over exagerated 3D'ish laucher like Regina, SPB Shell, Claystone...
12. Apps like "AutoKiller Memory Optimizer" have additionaly features to "optimise" the speed,... u might test those out but I didnt notice a difference most time. Still keep in mind - u should know what u are doing
13. Ok - u may want to hit me for that:
It's more a cosmetic thing - but I recently used UOT Kitchen for theming my framework and used the fly-in animations - and they feel much faster then the default animations just try it out... keep a backup of your original framework for reverting.
All the following Tweaks are mentioned by sibere (credits go to him and propably some other people)
echo "1536,2048,4096,6144,8192,10240" > /sys/module/lowmemorykiller/parameters/minfree
(this is related to 1. ; 1MB = 256 => valueas above are 6MB, 8MB, 16MB, 24MB, 32MB, 40MB)
to enable cgroups cpuacct:
mkdir /acct
mount -t cgroups -o cpuacct none /acct
mkdir /acct/uid
to change ioscheduler:
cd /sys/block/mmcblk1/queue
echo "deadline" > scheduler
cd iosched
echo 1 > fifo_batch
These are lost on reboot so if you wanna keep them, add a script to /etc/init.d
Finaly I also have patched the sqlite library. If you want the file, let me know. It boost a lot SQL database writings. See this thread http://forum.xda-developers.com/showthread.php?t=903507
Click to expand...
Click to collapse
Will ask him to comment on "cgroups, ioscheduler, and sqlite" as im not sure if they work with all rom versions / neither how they work exactly.
THANKS Sibere
EDIT:
aditional threads with tweaks
- Supercharger
- http://forum.xda-developers.com/showthread.php?t=1227269
BEWARE I HAVEN'T HAD THE TIME TO CHECK THEM OUT YET AND DIDN'T TEST THEM
SOME OF THEM MIGHT NOT WORK AND PEOPLEARGUE ABOUT THEM (e.g. the "debug.sf.hw =1" is heavily discussed)
IF ANYONE KNOWS MORE ABOUT THOSE OR CAN HELP TESTING IM HAPPY TO LEARN MORE ABOUT
Hi.
For a full reference to cgroups, you may read the cgroups documentation from the kernel.
Basically, it provides process aggregations in the Linux kernel, mainly for resource tracking purposes.
deadline IO scheduler has been used a lot for SSDs and proven to be quite adapted to flash memory.
The minfree settings set here are pretty much optimised by me for the archos. It gives you a good balance between available cache and free ram . Android starts to complain when the free ram drops below 32Mb. with these settings, the OOM task killer will try to maintain a free ram level above 32Mb. You DON'T need a task killer. It will just use precious ram resources and will mess up with the android integrated task killer.
Those settings are reset on boot, so you may add them in a script added to /etc/init.d/ directory.
SQlite optimisation is of great help and I already posted a lot of information about it when I posted the tweaked file. Please refer to this post. (You'll have to look for it, it's somewhere in the dev thread )
Enjoy your optimised archos!
Thanks guys, learning new tips.
Nice! Good tips. Thanks.
Very usefull reading, thanks!
thanks for the tips ! cheers!
Hello, I am JustLoveJoy, I am an up and coming developer, although I work very hard on my phone right now, my gf has gotten an Archos 8 G2 4GB tablet and I have it rooted but it constantly gives me some issues. Finding this thread, I have to ask, can these or any tweaks be applied to her tablet? is there any source code on github or somewhere else? I mainly wish to get her to be able to do her Farmville on it. I'd like to get on to the development boards with a custom rom for it but I need someone with a little experience to point me in the right direction for that. Thanks So much for starting this thread!
hi i just want to try to root my arnova 7g2 bit i don't find a straight 3d on xda. you clan indicate the right street
Inviato dal mio GT-N7000 con Tapatalk 2
did you notice that crow (CM7) for Gen8 was released ?
still nothing for developing for the Archos 8 G2 4GB? If I can get adb shell I would be happy!
Thanks
thinks man
:good:
Thanks for the great post! I still have one of these!
Just trying my best to help out! These are the things i do to improve performance on my hd2 (tmous) running sense 3.5. Some of these are risky so read before applying
1. Swap.
There is much of debate about using swap on your android device,some say its useless and it wears down the sd card and others say it speeds up your device on a notable level. What i've noticed is that swap behaves according to what else is using the sd on android at the time, remember that android is also accessing the fat32 and your ext4 partitions. Right now im not using my ext4 partition on my sd and and i can notice the little boost from swap , and on the previous rom which ext4 was needed, using swap would more show up on benchmark than actually being experienced.
HOW TO GET SWAP WORKING. Its very easy on the sense 3.5 roms!!!! Just partition your sd using recovery in magldr, download script manager from the market and download swap-hard.sh from Dorimanx's high performance rom.
in script manager go to where u downloaded the script and run it (run as root and run at boot). Thats it!
2. VM heap size.
i set mine to 96m ,using blade buddy from the market. In advanced settings edit the value in dalvik.vm.heapsize press menu save and restart.(dont overdo it 96 already is.
3. Overclock. I just overclock to 1.382Ghz max 576 min with the performance governor. (please read about the dangers of overclocking your hd2 before choosing to do so.)
4. v6 supercharger. Search for it, read the thread!!! use and enjoy!
5. Reduce system traffic. As wonderful as the hd2 is we need to remember that it has its limits no matter the os u put on it (lack of speed, heating up, speedy discharges ect). this is all due to what im calling system traffic, the autosync every 10 minutes, the running 10 apps you dont need just because, things like that. These things unbalance the performance vs the productivity. Set the auto sync to an hour or take it off . close apps when u r done with them. Clean up the temp files regularly (caches ect).
6.Flash the newest radio Leo_RADIO_2.15.50.14
This is it for now if u got anything else to help then please reply as these things can help any rom , also u shall take full responsibility for any future damage to your phone or phones hardware (nothing to be scared about but im putting it up incase.) And it would be great to get a dev's opinion on this and to also correct or guide people to better settings.
i would love to post a video but i have a dell streak 7 and the vid recording is horrid!!! but the average quadrant is in the 1200s.
I chanced upon an app that could enable android users the ability to true multitask. Android is designed to cleverly close apps in the background that it deems unimportant. This feat is brought to fruitation through the assigning of minfree values. The higher the minfree value, the more seceptible the app is in being axed to conserve ram and computing space which inturn conserve battery.
With this in mind, theoretically, if we assign an app with a minfree value of 0, the apps will not be killed even when kingdom come. Pardon my attempt at humour if you aren't chuckling.
Now to the crux of this post. There is an inherent difficulty to assign minfree values and not everyone is a coder. Luckily there is an app on the market which let users assign minfree values and better yet, filters the apps into hidden apps and stuff. Simply download this free application from the market:
https://play.google.com/store/apps/...t=W251bGwsMSwxLDEsImNvbS5ycy5hdXRva2lsbGVyIl0.
Go to settings, enable advanced mode to get access to the first three values. One simply inputs "0,0,0,0,0,0". And voila, theoretically all hidden/background apps will not be killed and true multitasking is achieved.
A quick test of some programs that are designed to close after home button is pressed does not close now. Am happy to report that this trick does not close any background app. Only downside is user has to manually close the apps, which for me is more than ok. Hope this helps!!
[Update] I have changed all fields to 0. So technically what I am telling the GSIII is "do not have coffee breaks,toilet breaks and oh, "I own your sorry ass".
Am excited to report that N.O.V.A. 3 still continued running after opening maps with GPS, XDA, Maps, Internet browser. All of which are running.
[Update 2] Edited the values to "0,0,1,1,1,1" as a failsafe in case all rams have been used up. E.g. NOVA3 and MC3 concurrently running due to carelessness. Will report any drastic behaviour or successfully implementation without much drawbacks.
Sent from my GT-I9300 using xda premium
I'm interested to know how this affects battery life.
jiggytom said:
I'm interested to know how this affects battery life.
Click to expand...
Click to collapse
I am pretty sure this will suck the bejesus out of the battery. : ) Plus we aren't using the software for its intended use.
I did the same
Interesting to try...
sebarkh said:
I did the same
Interesting to try...
Click to expand...
Click to collapse
If in the event u have reached a satisfactory value do share! I was inspired by the "backgrounder" program of jailbroken IOS devices. It does the same thing except our way is different. From my Iphone days I have fetishes of true multi tasking. : )
Sent from my GT-I9300 using xda premium
The Linux/Android kernel WILL run OOM-Killer (Out-of-memory) with SIGKILL (removes the process from RAM and CPU without letting it any chance to save data or report) when the memory is full and it cannot continue operation otherwise.
Dalvik _should_ work around a full memory but by disabling this feature it won't so you might experience some data loss.
Consequently it is necessary to have a sufficiently large Swap-Partition on your SDcard to allow the kernel to get more memory whenever needed. It won't be fast when it hits the limit but at least it still works.
d4fseeker said:
The Linux/Android kernel WILL run OOM-Killer (Out-of-memory) with SIGKILL (removes the process from RAM and CPU without letting it any chance to save data or report) when the memory is full and it cannot continue operation otherwise.
Dalvik _should_ work around a full memory but by disabling this feature it won't so you might experience some data loss.
Consequently it is necessary to have a sufficiently large Swap-Partition on your SDcard to allow the kernel to get more memory whenever needed. It won't be fast when it hits the limit but at least it still works.
Click to expand...
Click to collapse
Well on top of that, the Minfree was programmed so that the CPU doesn't have to overwork and so it can run at lower frequencies.
Interesting app, but I'm going to leave the programming to the experts.
Plus prog is too much of a hassle for too little gains in this case. Hahaha.
I have to say that I miss the way the Palm Pre multitasked the best. I also like how pre handled contacts with multiple numbers/IM/google etc (something that ios6 is finally going to attempt to do). It would incorporate all of them into one message window using icons. If only some of that could be incorporated into Android!
This thread is for the fortunate subset of 5th Gen Fire devices that are rooted and rocking a custom ROM. It should also work on rooted FireOS (5.3.1 and below) that have both ads and OTA updates blocked.
There have been numerous posts regarding uneven performance while multitasking along with sluggish response after waking the device from a long slumber. Most recognize this is due to excessive swapping associated with limited user addressable RAM. While there are a number of incremental 'tweaks' that can marginally improve this behavior my objective was to realize a more substantial improvement with minimal effort, knob turning and side effects. To date I have realized the benefit (minimal lag; responsiveness approaching devices with twice the RAM; woohoo!) but still working on the automation that will make it largely transparent. Lacking the time to work on the latter I thought it best to toss out the high level config and let others, if interested, work through both validation and implementation details.
As an aside, I have used the same technique on a 2nd gen HD running CM 11 that had been shelved for many months due to the same issues. It now hums along at a respectable pace and is once again a joy to use.
The secret sauce is simple: expand zram space allocation and add a small, secondary swap file in a normally unused location in permanent storage.
Tools (or adb/shell/terminal commands for those with furry chests):
- EX Kernel Manager (EXKM) or other tool/technique that can manage zram parameters (note: I find current builds of Kernel Adiutor too unstable for this work)
- Apps2SD Pro or other tool/technique that can create/manage traditional swap files and swap space priorities
- BusyBox Installer (v1.27.2+) or other tool/technique to insure startup scripts are properly executed
- L Speed (optional) - for ease of implementing a few discretionary performance tweaks
- DiskInfo PRO (optional) - visualize partition utilization
- RAM Truth (optional) - simple app to visualize RAM utilization
Technique (highly abbreviated):
- boot device to rooted ROM; install above tools or equivalents
- use EXKM to resize zram to 128 MB (note: zram must be temporarily disabled)
- use Apps2SD to:
* add a static, 128 MB swap file in the cache partition which remains largely unused with custom ROMs
* important: reassign swap file priorities (button at top right): 0 for the static file; 1 for zram
* increase swappiness to 100 if necessary (EXKM can also be used to set swappiness and other VM parameters)
* verify both swap spaces are enabled via sliders
Note to geeks: I understand how swappiness, vcache pressure and other virtual memory tunings really work; let's not debate that here. Same with the merits of running a static swap file in combination with zram or the 'dangers' of placing that file in the volatile cache partition. We're talking a hand held device with very modest resources...not the server room with a 99.9x SLA. Yes, zswap would be better. However ...
Optional tweaks:
- use EXKM or L Speed to set LMK parameters to: 24, 32, 40, 48, 56, 64
- use EXKM or L Speed to set write deferral (aka 'laptop mode') to 5 sec
- toggle KSM off/on in L Speed (sets performance enhancing parameters)
- with zram disabled enable zram tweak in L Speed which will establish a 96 MB space along with other optimizations; I find the smaller size ideal for my workflow; YMMV zRAM size can be set with EXKM or another kernel manager.
Challenges:
While the options exist none of the tools noted above can reestablish custom zram space or automatically create a static swap file on boot. I believe this is a kernel issue but have not ruled out interference by Lineage 12.1 which is the ROM I have been testing with. Unfortunately, I lack the time (and quite frankly motivation) to toss Nexus or another ROM on to a spare device to verify the culprit. I might do a bit more testing my my HD 7 which uses a different kernel and ROM. --> Turns out an old version of BusyBox was the culprit; updating to 1.27.2 solved the problem allowing the suggested configuration to be automatically reestablished on reboot. I added my favorite BusyBox installer to the prerequisite tools.
Another issue is the potential for maintaining 'stale' annon pages in zram for a period of time but that's a left field item that probably won't effect most users. A quick fix is occasionally swiping away all apps.
Provide discussion/feedback in this thread. I may or may not respond depending on available time. I love a deep dive (shared above) but once the goal has been reached my interests move elsewhere.
Edit: struck-out references to L Speed after developer/maintainer acknowledged "cooperation" with Kingo Root team (borderline malware).
Quick follow-up: I continue to enjoy benefits noted in the OP with a dual cache configuration. Device remains responsive after waking and typically returns to 'full' performance within a few seconds. I can easily switch between a handful of apps (browser, mail, Play Store, XDA labs, etc) with minimal lag and context preservation; no reloading web pages after switching away. No notable impact on battery life. Really no disadvantages at all - at least with my work flows.
Regardless of tuning one has to keep in mind the modest hardware resources on Fire 7s. Load up a game or two or a couple heavy Amazon/Google apps and things go south pretty quick. That said, responsiveness far better than any stock config, even when the device is clearly overburdened.
Another quick note. Simply adding a classic swap file (suggest 128 GB) to the largely unused cache partition can yield a decent improvement in multi-tasking performance without the complexity of tinkering with zRAM. All steps can be accomplished with the free tool Apps2SD or equivalent. Happy to document if there is sufficient interest.
Note: Be sure to change zRAM swap priority to "1" so it receives preferential treatment over the classic swap file. zRAM will almost always be faster than classic swap but there is only so much if it. The swap file will be used once zRAM is fully utilized (not entirely accurate but generally true).
FWIW - depreciated references to L Speed app in OP after developer acknowledged "cooperation" with Kingo Root team. While nefarious behavior is unlikely there are other options that avoid any potential conflict of interest.
Davey126 said:
...
Technique (highly abbreviated):
- boot device to rooted ROM; install above tools or equivalents
- use EXKM to resize zram to 128 MB (note: zram must be temporarily disabled)
- use Apps2SD to:
* add a static, 128 MB swap file in the cache partition which remains largely unused with custom ROMs
* important: reassign swap file priorities (button at top right): 0 for the static file; 1 for zram
* increase swappiness to 100 if necessary (EXKM can also be used to set swappiness and other VM parameters)
* verify both swap spaces are enabled via sliders
Note to geeks: I understand how swappiness, vcache pressure and other virtual memory e)
Click to expand...
Click to collapse
When you say Cache partition for the swap file are you referring to "/cache" or the second partition for app2sd?
rjmxtech said:
When you say Cache partition for the swap file are you referring to "/cache" or the second partition for app2sd?
Click to expand...
Click to collapse
"/cache" partition which resides on faster internal storage. Anything on external storage will be significantly slower due to interface limitations.
@Davey126 it has been about a day or two and I can confirm that by following these instructions it has brought new life into my KFFOWI 5th gen. This paired with some L Speed Tweaks (even though you say not to trust them, I opted to use it for a few performance tweaks) and the Lineage ROM from @ggow makes my user experience on the device quite pleasing.
rjmxtech said:
@Davey126 it has been about a day or two and I can confirm that by following these instructions it has brought new life into my KFFOWI 5th gen. This paired with some L Speed Tweaks (even though you say not to trust them, I opted to use it for a few performance tweaks) and the Lineage ROM from @ggow makes my user experience on the device quite pleasing.
Click to expand...
Click to collapse
Thanks for the feedback.
As for L Speed I don't distrust the current developer/maintainer but no longer feel comfortable providing an implicit endorsement. Who you associate with makes a difference IMHO. Each person needs to make their own call. There is no magic in L Speed; it simply offers a convenient UI to various well publicized system 'tweaks' that can be implemented using other tools/techniques.
Davey126 said:
Optional tweaks:
- use EXKM or L Speed to set LKM parameters to: 24, 32, 40, 48, 56, 64
- use EXKM or L Speed to set write deferral (aka 'laptop mode') to 5 sec
- toggle KSM off/on in L Speed (sets performance enhancing parameters)
- with zram disabled enable zram tweak in L Speed which will establish a 96 MB space along with other optimizations; I find the smaller size ideal for my workflow; YMMV zRAM size can be set with EXKM or another kernel manager.
Click to expand...
Click to collapse
Thanks for the guide, it already seems to have helped a lot with smoothness but I wanted to know how to set these options using EXKM.
I'd never heard of the app before today and I've had a good look through the menus but can't seem to find somewhere to set these values. I'm guessing these are the usage % values used by the CPU governor to jump up and down power states?
NeuromancerInc said:
Thanks for the guide, it already seems to have helped a lot with smoothness but I wanted to know how to set these options using EXKM.
I'd never heard of the app before today and I've had a good look through the menus but can't seem to find somewhere to set these values. I'm guessing these are the usage % values used by the CPU governor to jump up and down power states?
Click to expand...
Click to collapse
No, governor tunning is a different beast not addressed in the OP (although I do that on some higher end devices).
With regard to EXKM:
- LMK values can be set under memory -> low memory killer
- KSM toggle can also be found in the memory section
- it appears laptop mode can not be set in EXKM (not that important)
As an alternative to laptop mode you can twiddle 'dirty ratio' and 'dirty background ratio' in EXKM. Suggest setting to 30 and 15, respectfully.
Edit: you may also want to take a peek at Kernel Adiutor (correct spelling). While I find it a bit flaky it exposes more controls vs EKKM and costs less too.
Davey126 said:
No, governor tunning is a different beast not addressed in the OP (although I do that on some higher end devices).
With regard to EXKM:
- LMK values can be set under memory -> low memory killer
- KSM toggle can also be found in the memory section
- it appears laptop mode can not be set in EXKM (not that important)
As an alternative to laptop mode you can twiddle 'dirty ratio' and 'dirty background ratio' in EXKM. Suggest setting to 30 and 15, respectfully.
Edit: you may also want to take a peek at Kernel Adiutor (correct spelling). While I find it a bit flaky it exposes more controls vs EKKM and costs less too.
Click to expand...
Click to collapse
Ah, LMK, not LKM. Thanks again.
Also, just a small suggestion but wouldn't it be better to remove the references to L-Speed and leave an edit message at the bottom rather than having the red, striked through text in the middle?
NeuromancerInc said:
Ah, LMK, not LKM. Thanks again.
Also, just a small suggestion but wouldn't it be better to remove the references to L-Speed and leave an edit message at the bottom rather than having the red, striked through text in the middle?
Click to expand...
Click to collapse
Thanks for noting LKM/LMK typo in OP - fixed that.
I will likely clean-up the OP at some point as there are other refinements (eg: tweaking dirty ratios) that may prove beneficial to a larger community.
Davey126 said:
Thanks for noting LKM/LMK typo in OP - fixed that.
I will likely clean-up the OP at some point as there are other refinements (eg: tweaking dirty ratios) that may prove beneficial to a larger community.
Click to expand...
Click to collapse
I was wondering what differences need to be made for a 7th gen hd 10. I know this guide is written for a 5th gen (1gig RAM, 8 gig drive), but I have a 7th Gen (2gig RAM, 32GIG drive) with 2gig zram (priority 1) and 4 gig swap on the /data partition (priority 2). What would be the best LMK values? Also, is it ok to have the swap on /data vs /cache (my /cache only has 400mb)?
Thanks for any help!
edit: in the OP, it says to set laptop mode using L-speed, and then L-speed is crossed out (I understood why), but no alternative is listed for doing this. I just wanted to add that you can use kernel adiutor to change laptop mode. It's on virtual memory settings.
mistermojorizin said:
I was wondering what differences need to be made for a 7th gen hd 10. I know this guide is written for a 5th gen (1gig RAM, 8 gig drive), but I have a 7th Gen (2gig RAM, 32GIG drive) with 2gig zram (priority 1) and 4 gig swap on the /data partition (priority 2). What would be the best LMK values? Also, is it ok to have the swap on /data vs /cache (my /cache only has 400mb)?
Thanks for any help!
edit: in the OP, it says to set laptop mode using L-speed, and then L-speed is crossed out (I understood why), but no alternative is listed for doing this. I just wanted to add that you can use kernel adiutor to change laptop mode. It's on virtual memory settings.
Click to expand...
Click to collapse
It appears you have priorities reversed. Higher values receive preference. The magnitude of the difference is irrelevant. zRAM is considerably faster than eMMC based storage; the latter should only be used when zRAM is exhausted or momentarily unavailable for whatever reason.
The container sizes also seem excessive. 2 GB of zRAM effectively leaves no uncompressed memory on a HD 10 which is highly inefficient. I wouldn't go over ¼ available RAM or ~½ GB. Toss in a 500 MB of eMMC based (overflow) swap file and you're good to go. If you regularly use more than 1 GB of swap on a relatively low end Android device then something else is amiss.
I am aware Kernel Adiutor can set laptop mode but did not want to introduce another tool into the mix...especially one that has demonstrated inconsistent behavior. FWIW - recent testing suggests 1-2 sec may be a better choice vs the 5 sec mentioned in the OP as the latter may trigger lockouts during sustained writes (eg: large file download on a fast connection). I currently use 1 sec and happy with the results. I will likely update the OP with this info once satisfied that the benefit is worth the effort.
All things being equal I see no reason to change LMK values suggested in the OP. Especially given the availability of zRAM and swap.
Thanks for these instructions, Davey126!
I just tried this process on my 5th Gen Fire 7" which I recently installed with the LineageOS ROM. I was not familiar with the EX Kernel Manager and Apps2D Pro tools, but it was reasonably clear how to make the settings changes you recommend.
I added the 128Mb swap under /cache and increased the zram swap to 128Mb, setting it to priority 1. Maybe it's my imagination but my device does seem a lot snappier when switching between running applications, and better at returning to previously displayed data in applications instead of reloading pages.
Cheers!
Matrey_Moxley said:
Thanks for these instructions, Davey126!
I just tried this process on my 5th Gen Fire 7" which I recently installed with the LineageOS ROM. I was not familiar with the EX Kernel Manager and Apps2D Pro tools, but it was reasonably clear how to make the settings changes you recommend.
I added the 128Mb swap under /cache and increased the zram swap to 128Mb, setting it to priority 1. Maybe it's my imagination but my device does seem a lot snappier when switching between running applications, and better at returning to previously displayed data in applications instead of reloading pages.
Cheers!
Click to expand...
Click to collapse
Thanks for sharing first impressions. Time will tell if the benefits are durable; certainly have been for me with no adverse side-effects.
Another suggestion to reduce wake lag: install Greenify (or similar tool) and add commonly used apps to the action list even if not flagged as background abusers (you may need to override Greenify's sensible defaults via the gear icon). This prevents multiple apps from becoming simultaneously 'active' on wake which is a huge contributor to lag on lower end devices with limited resources (CPU and RAM). Hibernated apps will launch when needed with minimal delay and NO loss of context. Works a treat.
Be sure to add your favoriate browser, mail, messaging and social media apps to the hibernation list as all like to 'check in' after a long slumber.
Although Greenify can auto-hibernate apps on most devices (works best with Xposed Framework) I use an automated approach that invokes Greenify's widget when the screen goes off. There's still some momentary lag on wake but the device remains responsive which is a huge improvement.
Hi Davey126,
thx for the guide, it seems to work awesome.
However, i have the one problem thats the settings in EXKM regarding to "zRAM Size", "dirty ratio" and "dirty background ratio" are lost after rebooting the device. Is there a way to make the settings reboot proof? Interestingly for the "LKM" settings there is an option "Apply at bootime", which does the trick for me, but only for the LKM options.
Kind regards,
Stephan
IronMan1977777 said:
Hi Davey126,
thx for the guide, it seems to work awesome.
However, i have the one problem thats the settings in EXKM regarding to "zRAM Size", "dirty ratio" and "dirty background ratio" are lost after rebooting the device. Is there a way to make the settings reboot proof? Interestingly for the "LKM" settings there is an option "Apply at bootime", which does the trick for me, but only for the LKM options.
Kind regards,
Stephan
Click to expand...
Click to collapse
Likely BusyBox is missing or outdated. Try installing this (I use the pro version).
Davey126 said:
Likely BusyBox is missing or outdated. Try installing this (I use the pro version).
Click to expand...
Click to collapse
Ok. I bought BusyBox Pro and updated to Version 1.28.1-Stericson. Still all settings in EXKM besides LMK get lost after rebooting the device ...
IronMan1977777 said:
Ok. I bought BusyBox Pro and updated to Version 1.28.1-Stericson. Still all settings in EXKM besides LMK get lost after rebooting the device ...
Click to expand...
Click to collapse
- verify BusyBox is property installed w/no conflicting builds
- uninstall/reinstall EXKM
- test if behavior can be duplicated with another (free) kernel manager like KA