I just rooted and installed MIUI custom ROM. It says. I have only 200 MB left. I have tried to add up all the memory listed in the apps section used by each app. And it is just <400MB. So I want to know what is using up my memory?
You usually don't need any RAM manager on Android, the system does its job fine.
Android is based on Linux. And the Linux/Unix concept says, "Unused RAM is a wasted resource": RAM is the fastest "storage" available on a device. So as soon as there is "free RAM", it will be put to use. E.g. to cache slower storage devices (such as SDCards) for faster access, etc. As soon as an app requires more RAM and there is none anymore, space from those caches gets dropped without any issues.
In case all caches are already dropped, and there's still more RAM needed, there's the OOM killer: using a sophisticated concept, it decides which app is no longer needed, and frees up its RAM (for details, see this article on LWN). It is possible to adjust this helper to optimize it for your device; some of the corresponding apps can be found in this list. In the past, I've made quite good experiences with AutoKiller Memory Optimizer. Adjusting these "OOM values" might be helpful on devices coming with little RAM (512 MB and less), but is not strictly necessary on devices shipping with 1 GB RAM and more. Also note that this concept is not to be confused with "Task killers", which are a completely different thing and much too often used wrongly (those are not for "freeing up RAM", but for getting rid of rogue processes).
Above screenshots show how AMO basically works: It allows you to adjust the values for when to kill what. It even comes with several useful presets to experiment with (second screenshot), ordered by "aggressiveness", which makes it easier to test out what might fit you best. Both ends of the scale might not be best: too aggressive, and the system might unnecessarily start killing processes you still need. Too "lazy" might slow it down. So when giving this a try, start with "Moderate", see how it behaves (at least for several hours, to get a real feeling), then switch up to the next. Switch back to the previous as soon as you see it gets too aggressive for you; then have the app applying these settings at boot, and you are done.
The third screenshot answers your "additional question" from the comment: AMO also provides you with a list of running processes, and how much RAM they use.
If you're rather after long-time monitoring in the background, you can take a look at these candidates, with SystemPanel being the probably best candidate (use this free version to get a feeling for the app; for real good background monitoring, you will need the paid version):
Historical Consumption even allows you to compare values from a "previous run" (only available in the paid version). The tool also features lists for "top consumers", and more. Note: It's not specifically for RAM usage (though it includes that), but is rather a complete system monitor.
Find out more on our sister Site:
- Are there guidelines on how much free RAM a phone should have?
- 0 ram free on ICS
- Why is my device not utilizing all of its available RAM?
are some good starting points, more can be found in the most frequented questions using the
ram tag and, for the "monitoring" part, the most frequented questions using the
resource-monitoring tag. If you need more details which are not covered yet, Android Enthusiasts is the place to ask (as long as it's not about "is there an app for X", for which you're welcome here on SR :)