Android Memory Usage

The memory of an Android system is managed by several different allocators, in several different pools.

System Memory
You can examine the system's view of the memory on the machine, by examining /proc/meminfo.

If you use 'ddms', you can see a summary of the memory used on the machine, by the system and by the different executing processes. Click on the SysInfo tab, and select "Memory Usage" in the box on the upper left of the pane.

Here's a screenshot:



Note that you can get the numbers for each process by hovering your mouse over a particular pie slice. Numbers are shown in K and percentages.

Process Memory
You can see an individual process' memory usage by examining /proc/ /status

Details about memory usage are in
 * /proc/ /statm
 * /proc/ /maps
 * /proc/ /smaps

The 'top' command will show VSS and RSS.

Also, see ddms info above.

smem tool
You can see very detailed per-process or systemwide memory information with smem.

See Using smem on Android

Dalvik Heap
[how to show dalvik heap info?]