Related
I am fully rooted and running toasted delight beta 2 rom. I like to use a task manager and kill my programs every hour or so. How ever my free memory was about 170 or so. Now its 70mbs. What do I do other than restart my phone?
from my evo son!
In my opinion, I wouldn't worry about it. Task killers do not even seem necessary unless you are getting FC's or very bad performance because of a lack of memory (it would have to be at 30MB or less to reach a critical level)
Android memory management can usually do a pretty good job handling all the applications you have open, if memory runs low it begins a procedure of terminating the app's you have not used in a while, freeing up more space for newly opened apps (you can think about it like a stack really)
Android also performs something along the lines of pre-loading commonly used apps into memory. Even if you are not using the app, if it is commonly used then it can get partially loaded into memory. Thus, if you use an app killer to kill off an app or service, if you commonly use the app then android may still be loading it into memory (and therefore it will bring your total memory down).
anyone with corrections please do
having unused memory = worthless. In fact, I use a memory management prog to set any custom rom back to default memory management settings (off the top of my head something like 24mb of unused memory left is when it goes in to action).
I think this is a windows vs linux type thinking... I've noticed that, ever since I switched to linux I've gotten used to the fact that my OS is prepping things for the future (i.e. preloading stuff into memory that it thinks I will need). In the end it makes the system much snappier.
I notice the phone start lagging when there are less than 100Meg of available RAM on both 2.1 or 2.2 SGS.
Questions....
1. How do i make sure there will always be min 130 available when not in use?
I'm currently using Froyo Task Manager, ATK and SystemPanel together to make that happen manually. A better suggestion or use of them will be appreciated.
I also tried MemoryPlus and Taskkiller (The red android logo)
2. There are so many background service running some of them start with com.samsung.... (what are these?) do we need them?
3. Why some Apps always run without us telling them to run, or ask us to give them to permission to run on background at will?
ATK
In ATK in settings you have auto kill level, which is disabled on default.
jakaka said:
In ATK in settings you have auto kill level, which is disabled on default.
Click to expand...
Click to collapse
I'm using JPC, ATK autokill will not able to kill at a system level like SystemPanel, so after a day of active use, the memory will still continue to reduce as some of the background service start consuming more and more memory or run more background process. E.g. Touchwiz from 17 Meg to 25 Meg.
So at the start with ATK, i will have 130Meg, after a day of active use i left with 80Meg. With Apps killed.
I use autokiller set to aggressive. memory left 152mb
ivanchin99 said:
I use autokiller set to aggressive. memory left 152mb
Click to expand...
Click to collapse
Cool, does that remain for few days? How often do you restart your phone?
free memory is bad memory!
why don't let android do it's job?! this ist linux with a clever memory management, not windows 95!!! deinstall all auto task killer android is handling the memory very well. it uses all it can get and if it's not enough it kills old uses apps from it. why have free memory, there is absolutely no reson for that! ram is fast, let the often used apps be there not on slow sd or nand!
Mykron said:
free memory is bad memory!
why don't let android do it's job?! this ist linux with a clever memory management, not windows 95!!! deinstall all auto task killer android is handling the memory very well. it uses all it can get and if it's not enough it kills old uses apps from it. why have free memory, there is absolutely no reson for that! ram is fast, let the often used apps be there not on slow sd or nand!
Click to expand...
Click to collapse
QFT!
What is the point of having memory if it is constantly empty?
Think about it this way...If you had five friends at your house and you have five chairs, do you make 2 or 3 of your friends stand so there is always empty space or do you let everyone sit down and worry about something worthwhile?
Finguz said:
QFT!
What is the point of having memory if it is constantly empty?
Think about it this way...If you had five friends at your house and you have five chairs, do you make 2 or 3 of your friends stand so there is always empty space or do you let everyone sit down and worry about something worthwhile?
Click to expand...
Click to collapse
True, upto a certain point... I don't think you need to have at least 100 or 150 mb free but it DOES seem to help to not let it get down to like 30mb...
For me:
-JM7
-animations off
-voodoo lag fix
-minfree manager set to preset agressive.
minfree manager customizes the android memory management system.
I love it this way, No lags when starting the Phone (DIALER) or anything else. The dialer annoys me the must, this must be lag free, if i want to dial i want to dial right away.
Btw, I think you have made some wrong assumptions about the Android memory management system, as mentioned, unused ram is wasted ram.
dagrim1 said:
True, upto a certain point... I don't think you need to have at least 100 or 150 mb free but it DOES seem to help to not let it get down to like 30mb...
Click to expand...
Click to collapse
Agreed but I have never seen my Galaxy with free memory that low and I don't use a task killer. Of course I don't often have more than 3 or 4 apps running at the same time
This is not about letting ram do nothing.you surely don't wasn't your ram get used up by programs you don't want while you had no hand in this.All those services running I don't want.badly written programs that are hanging out in memory instead of closing.at least in symbian an app closed when you exited.
Why would you have 100MB free ? Do you have any application that needs 100MB to run ?! The android system already has enough memory to run so even if you could have 200MB of free memory you phone wouldn't run any faster you would just be able to lauch around 20 apps at the same time.
Read this:
http://geekfor.me/faq/you-shouldnt-be-using-a-task-killer-with-android/
Linux however isn’t generally affected by this. While I admit that I don’t know the architecture and reason for this… linux will run the same regardless of if you have 20mb free memory or 200mb.
Click to expand...
Click to collapse
Finguz said:
Agreed but I have never seen my Galaxy with free memory that low and I don't use a task killer. Of course I don't often have more than 3 or 4 apps running at the same time
Click to expand...
Click to collapse
Dunno, I just noticed that one time my phone was VERY sluggish and memory free was around 20mb or so. Cleaning it up did seem to help (unless one of the programs killed was causing the lag of course).
Ah well... Whatever people choose right?
You guys can argue all you want that free RAM is a waste of RAM....
But it is a fact that the SGS runs much slower when the free RAM is low. This is the experience of all the SGS'es I have tried and my own as well. At least this is the case when running 2.1. I have not tested anyone with 2.2 yet.
It s starts to lag when memory is below 40 mb. So when it s low and you start an application it starts to lag. I set it to 50-55-60 and got hardly any lag. No need to keep so much free ram
Sent from my GT-I9000 using XDA App
matty___ said:
It s starts to lag when memory is below 40 mb. So when it s low and you start an application it starts to lag. I set it to 50-55-60 and got hardly any lag. No need to keep so much free ram
Sent from my GT-I9000 using XDA App
Click to expand...
Click to collapse
Which ROM are you using? as the low memory killer level for background apps is set at 40M which means you should have 40M free all the time or it will start killing background apps. This is also why task killers are useless, free ram is wasted ram for android.
I never had the experience that more free RAM is faster, perhaps with the stock rom but JC and upwards are all good by default. Animations off + Oneclick lagfix (or another) and the phone stays totally lag free.
Being an android user for 1,5 years now i'm very confident Taskkillers are useless except when an app is stuck. I've had periods where I used them allot but the phone only gets slower as the killed apps have to be loaded into the memory again.
Finguz said:
QFT!
What is the point of having memory if it is constantly empty?
Think about it this way...If you had five friends at your house and you have five chairs, do you make 2 or 3 of your friends stand so there is always empty space or do you let everyone sit down and worry about something worthwhile?
Click to expand...
Click to collapse
Provided you are not expecting anymore friends. The problem happens if all your 5 friends are happily seated and along comes 2 more friends a-visiting. So you have to now move 2 inactive (for want of a better word) friends out of the seats so that you can accommodate the 2 new ones. This takes time. So why not move these friends out as soon as they become inactive so that the space is readily available when someone comes calling?
Try to have a read about garbage collector before argueing about free memory.
The more you try to have a large amount of memory, the more you will need major GC (and during major GC all activity is frozen).
If you let the system manage memory, it does minor GC as needed when it reaches min memory waterline (seems to be 50Mo on SGS).
Let the system do its job.
Get rid of task killer.
Mykron said:
free memory is bad memory!
why don't let android do it's job?! this ist linux with a clever memory management, not windows 95!!! deinstall all auto task killer android is handling the memory very well. it uses all it can get and if it's not enough it kills old uses apps from it. why have free memory, there is absolutely no reason for that! ram is fast, let the often used apps be there not on slow sd or nand!
Click to expand...
Click to collapse
I completely disagree. OK, it is better to use memory, but the android memory management is extremely inefficient since it does not know which foreground and background processes are important to the user and which are not, even though it tries to figure that out. Since the Galaxy S does not allow the system to use the full 512MB of memory, this can be a critical factor. And the Galaxy S definitely lags massively when less then 70 or so MB of free RAM is available this is definitely a fact.
The biggest problem is that you cannot manually close apps and only have multitasking access to the last 6 apps used. If you use 7 apps simultaneously, the 1st app still consumes memory but you cannot even switch back to it. And there are so many useless background processes, starting up over and over again and consuming hundreds of MB memory if they are not killed in regular fashion.
Who needs gesture search, amazon mp3, layar, and all the samsung crap running in the background all the time. If you only have 10 such applications and each of them only consumes 15MB of ram, 150MB are wasted for nothing.
Every second market application registers itself as autostart on every boot, so to use a autostart manager is also mandatory.
Since everybody can easily develop for Android the application quality and resource efficiency is not always perfect. So in my opinion Android needs a task manager, this is why even Samsung integrates such a application.
Using a well configured ATK (set to ignore system applications, widgets and apps frequently used for multitasking and killing every else on screen off) and autokiller (strict setting) in addition to Autostart Manager (had to remove 40!!! useless apps from automatic startup) and lagfix, the SGS runs perfectly smooth.
I think many of us are using some kind of task killer. BUT, I find task killer sometimes cause more problem than it solves. And sometimes it doesnt really increase free RAM.
What I did was create a simple app to force Android memory manager to free RAM (by unloading tasks based on its own logic). This way you eliminate 3rd party task killer wrongful termination of tasks such as those active ones required by widgets etc.
This app just basically starts and creates a huge heap (forcing Android to free RAM) and then closes.
(You may still see this task linger in memory after you run it, but it will be unloaded the next time you start other app. You will see your free RAM increased a lot)
====Edit
You May not see free RAM increase immediately after running. You will see RAM increase a lot a bit later after you have started other app (which forces BfreeMem to be unloaded from memory)
Tip: Just put a shortcut on desktop. Click it when your RAM is low (<50-60Mb) and it will do its job. Dont run it when your free RAM is above 90Mb.
I'm trying it
Sent from my GT-I9000 using XDA App
This app should be tested by more Samsung Galaxy S owners to see if is working as it should be or not.
Try already.... No diff.... What's the difference?
Sent from my GT-I9000 using XDA App
cosmoboi said:
Try already.... No diff.... What's the difference?
Sent from my GT-I9000 using XDA App
Click to expand...
Click to collapse
mib1800 already had got ur all private data, no more diffs.
cosmoboi said:
Try already.... No diff.... What's the difference?
Sent from my GT-I9000 using XDA App
Click to expand...
Click to collapse
You have to wait for BfreeMem to be unloaded. (If you are impatient use a Task killer to unload it and you see it frees up lots of RAM.
Basically BFreeMem is a very bloated. When it starts it force Android memory manager to unload other tasks to cater to its RAM requirement. After that if you start other app, Android mem mgr will unload Bfreemem thus freeing huge chunks.
I tweak it to works best if your free RAM is around 50-60Mb. When I run it and when BfreeMem is unloaded later, free RAM goes up to about 100Mb.
btw: this app requires no permission so your data is safe
AutoKiller is a much better alternative.
The concept sounds correct. Not entire sure if it will work in practice.
psychedelic'd said:
AutoKiller is a much better alternative.
Click to expand...
Click to collapse
My purpose is to have something that does not circumvent Android memory manager which keeps track of tasks and their stats. It knows better what tasks are best to kill based on their usage/last access/active state/priority. Furthermore, if Android memory manager kill a task due to low memory, it will save the state for that task so that the next time that task is used the saved state is restored.
3rd party task killers sometimes mess this up by killing tasks which are actively use (resulting in those tasks being restarted just after being killed leading to wasted power and more lag) or killing dependent tasks such as those used by widgets without saved state causing widgets to malfunction.
snapper.fishes said:
The concept sounds correct. Not entire sure if it will work in practice.
Click to expand...
Click to collapse
I am using it. It does free up RAM. Is it useful? Depends. If you have lots of active apps (widgets/service etc), those freed RAM is filled up soon as Android restore back those "killed" tasks. Not much gain here. On the other hand, if you have lots of zombie apps lingering in memory then yes. The extra RAM does give a boost to the next app you open
AutoKiller is less of a task killer and more of a memory manager. Sort of like what your app is trying to do, but much better. More information: http://andrs.w3pla.net/autokiller/details
Your concept is good, but having an app that continually increases ram usage will waste battery. Then having to kill that app manually in order to free up ram is tedious. Just my 2 cents.
The new task manager in Touchwiz has a function to manually clear ram any way, which works great.
psychedelic'd said:
AutoKiller is less of a task killer and more of a memory manager. Sort of like what your app is trying to do, but much better. More information: http://andrs.w3pla.net/autokiller/details
Your concept is good, but having an app that continually increases ram usage will waste battery. Then having to kill that app manually in order to free up ram is tedious. Just my 2 cents.
The new task manager in Touchwiz has a function to manually clear ram any way, which works great.
Click to expand...
Click to collapse
OK. AutoKiller is changing Linux configuration. Unfortunately, it needs root.
I have used the TouchWiz TaskMgr clean Ram at safe level - it still messed up my widgets (Beautiful widgets, weather & toggle)
Bfreemem app does not continually run or increase RAM usage. You just run it when the free RAM is low (or close to threshold). At this low RAM level it just knocks other tasks out of RAM. btw: You should NOT run it when you have huge amount of free RAM. You should run it when RAM is low like <50Mb.
You dont really have to kill Bfreemem task manually since it will be quickly unloaded by the Android memory manager when RAM is required since its state is finished.
JUst put a shortcut on the desktop and click it when you feel RAM level is low and it will do its job.
Can it be used with autokiller?
It could be also automated to check if memory is low, and automatically kill applications. Battery drain would be present in that case tho..
Never has the default task killer from samsung messed up my widgets including Beautiful weather, I tried using task killer and never saw the benefits of it since andriod automatically keeps 40MB of free ram...
EarlZ said:
Never has the default task killer from samsung messed up my widgets including Beautiful weather, I tried using task killer and never saw the benefits of it since andriod automatically keeps 40MB of free ram...
Click to expand...
Click to collapse
When I try the option Level 1 - Clear Memory (in Samsung task killer), my beautiful widget clock stop working.
Soniboy84 said:
Can it be used with autokiller?
It could be also automated to check if memory is low, and automatically kill applications. Battery drain would be present in that case tho..
Click to expand...
Click to collapse
Personally, I dont use task killer. Not sure whether Autokiller kills tasks physically or just adjust some running config. Just have a feeling task killers (those that kill tasks physically) cause RAM leak. For example when my phone reboot, I can see at least 12 tasks (in Advanced Task Killer) and free RAM is about 95Mb. If I physically kill those tasks, my RAM may temporarily goes up to 130Mb but sometime later free RAM drops to 50-60Mb and there were no more tasks to kill.
When I use Bfreemem, my free RAM fluctuates betw. 60-100 Mb and I can still see all/most of those tasks that were there just after boot-up.
If you have one of those scheduler/timer app, you can just use those to schedule Bfreemem to run regularly. (I can build another timer app to schedule)
Is there a particular rom which offers better ram management to allow for apps to stay in the memory longer, and cached apps get less priority?
I'm getting annoyed of apps that are suppose to be running all the time in the notification bar, but they are constantly restarting because the ram gets too low, but in fact, there is enough ram, but it's being taken up by cached apps instead!
Maybe I'm asking too much. Are there ROMS which:
1) offer more ram by being "trim"
2) manage memory better for multitasking
I really wanted to keep this phone stock, but this is pathetic! I feel that my old phone, with a "huge" 256mb ram chip was able to run more software in the background than my GN is! I've stripped all the useful apps off this phone and memory management is still an issue.
isn't the kernel responsible for that and not the rom?
zephiK said:
isn't the kernel responsible for that and not the rom?
Click to expand...
Click to collapse
Good question. I figured some roms are made lighter by removing stuff on it you don't need, and when it's done on a system level, I assumed that less ram would be needed for the os to operate.
Maybe someone can explain this?
Sent from my Galaxy Nexus using Tapatalk
I mean yeah, to a extent.. I'd believe that ROM and Kernel both contributes to it but kernel is the bigger player when it comes to optimizing "RAM."
I use AOKP + Franco Kernel if that helps. No lag problems, never even had it when it came to stock ICS. You'd might want to check your apps and see if there's a bad app causing memory leaks.
EP2008 said:
Is there a particular rom which offers better ram management to allow for apps to stay in the memory longer, and cached apps get less priority?
I'm getting annoyed of apps that are suppose to be running all the time in the notification bar, but they are constantly restarting because the ram gets too low, but in fact, there is enough ram, but it's being taken up by cached apps instead!
Maybe I'm asking too much. Are there ROMS which:
1) offer more ram by being "trim"
2) manage memory better for multitasking
I really wanted to keep this phone stock, but this is pathetic! I feel that my old phone, with a "huge" 256mb ram chip was able to run more software in the background than my GN is! I've stripped all the useful apps off this phone and memory management is still an issue.
Click to expand...
Click to collapse
AOKP and a few other roms have the option to change the minimum ram before android os starts killing background apps. The default is about 80MB I believe. You can decrease it (do not forget to check set on boot), but I do not think it is recommended to go too low.
If you are having low memory issues its probably because of a rogue app. Install System Tuner and check for background apps that use more than ~10-20MB of memory.
My phone is running 70-80% of ram all the time. When it boots is 35% and then is growing to 70-80. I have tried to delete all recent apps and then greenify them but still 70%(4gb/5.7gb).
yes. it is just how it should be. the phone is filling its memory. keeps apps in memory for quick access.
That's totally normal. Android is based on Linux, and linux is a good example of "free ram is wasted ram"
Most of the ram is used for cache. If you start an app that needs a fair amount of ram the phone will make its best to make it available. If you have 10 apps open they will all have their share and I you open on big app, it will kill some of the other ones if it is short of ram.
When you close all the apps they are in some sort hibernated and part of the ram is still their until others apps need the ram. It is for quick access as mentioned above. You have a setting for that in the advanced menu, but I recommend to don't change it.
Using an app like "terminal emulator" and the command "free -m" I see that on my 8GB variant I have as of now 6.7GB used and 1GB free. Out of the 6.7GB used, 6.3 is used as buffer/cache. Phone was booted not long ago and I have almost not open any app.
Every good operating system will work like this and it is in fact a very good sign to see a high ram usage. Ram access is WAY faster than doing I/O on the disk.
There is a well know Korean phone company starting with an S that has phones that don't do that really well
Google "linux ram management" if you want more info.
raptor2003 said:
That's totally normal. Android is based on Linux, and linux is a good example of "free ram is wasted ram"
Most of the ram is used for cache. If you start an app that needs a fair amount of ram the phone will make its best to make it available. If you have 10 apps open they will all have their share and I you open on big app, it will kill some of the other ones if it is short of ram.
When you close all the apps they are in some sort hibernated and part of the ram is still their until others apps need the ram. It is for quick access as mentioned above. You have a setting for that in the advanced menu, but I recommend to don't change it.
Using an app like "terminal emulator" and the command "free -m" I see that on my 8GB variant I have as of now 6.7GB used and 1GB free. Out of the 6.7GB used, 6.3 is used as buffer/cache. Phone was booted not long ago and I have almost not open any app.
Every good operating system will work like this and it is in fact a very good sign to see a high ram usage. Ram access is WAY faster than doing I/O on the disk.
There is a well know Korean phone company starting with an S that has phones that don't do that really well
Google "linux ram management" if you want more info.
Click to expand...
Click to collapse
Nice post man. Thank you.