Introducing XDA:DevCon – A Conference For Developers By Developers
XDA Developers Android and Mobile Development Forum
Forgot your password?
 
Post Reply+
Tip us?
 
balazer
Old
(Last edited by balazer; 8th March 2010 at 12:48 AM.)
#1  
Member - OP
Thanks Meter 1
Posts: 30
Join Date: Apr 2008
Default reducing memory usage in Android

I'd like to share tips and get help on how to reduce memory usage in Android. Maybe we can start a wiki page somewhere for this.

I've found that getting more free memory on my Android phone (G1) makes the phone much faster, especially when switching between apps.

I'd tried CompCache, but found it made little difference. I tried a swap partition, but found it made my phone unstable.

So here's my process for identifying memory hogs under CyanogenMod: connect the phone via USB, run 'adb shell', and then 'top -m 15 -s rss -d 10'. I then use the phone for a while, switching between some large apps like the browser and Google Maps, and observe which processes are staying in memory. Note that the USB debugger itself uses some memory.


I was able to get rid of some apps that were staying in memory for no apparent reason: Callbook.

I was able to get rid of some apps that were staying in memory and I didn't really need: 3G Watchdog, NetCounter

I was able to change settings in some apps so that they wouldn't stay in memory all the time: disable notifications in CyanogenMod Updater; disable 'start service on power on' in Quick Calendar

I was able to find some alternative apps that don't stay in memory all the time: now using Mode Scheduler and Timeriffic instead of Sound Manager

I'm still experimenting with different calendar widgets to see which one uses the least memory.

I noticed that the Calendar app was staying in memory. I'm not sure, but I think that disabling gmail/contacts/calendar sync fixed that. Disabling sync makes the phone faster anyway, though I then want some alternative mechanism to make sure that the phone syncs at least once a day. I've been using WiSyncPlus, set to turn on WiFi on charging, and force sync on WiFi connection. That works, though WiSyncPlus uses 15 MB or so itself. If Timeriffic or some other timer-based program that doesn't stay in memory had the ability to do a force sync, I'd prefer that.


After all that, things were greatly improved: I could keep a couple of large apps like eBuddy and the Browser in memory at the same time.

Since then I've wiped my phone and upgraded from CyanogenMod 4.2.13 to 4.2.15.1, and replicated my apps and settings as best I could remember.

I still have some large apps that seem to stay in memory:
* system_server
* android.process.acore
* com.android.phone
* com.android.inputmethod.latin
* zygote
* com.google.process.gapps

I don't recall if all of these apps were staying in memory under 4.2.13. No doubt at least some of these are necessary. (acore)

Are there any settings I can change or apps I can uninstall to stop these processes from staying in memory all the time? I don't use my phone as a phone very much; I'd be happy to get the phone app out of memory. What does gapps do? I don't need my gmail, contacts, and calendar to sync constantly. I've tried disabled the wireless network location service, but that doesn't seem to have made any difference.

Under which process does the memory usage for a widget go? I'm not seeing a separate process for some of my widgets.
 
rdrrlabs
Old
#2  
rdrrlabs's Avatar
Member
Thanks Meter 4
Posts: 52
Join Date: Aug 2011
Location: @rdrrlabs

 
DONATE TO ME
Quote:
Originally Posted by balazer View Post
I'd like to share tips and get help on how to reduce memory usage in Android. Maybe we can start a wiki page somewhere for this.

I've found that getting more free memory on my Android phone (G1) makes the phone much faster, especially when switching between apps.

I'd tried CompCache, but found it made little difference. I tried a swap partition, but found it made my phone unstable.

So here's my process for identifying memory hogs under CyanogenMod: connect the phone via USB, run 'adb shell', and then 'top -m 15 -s rss -d 10'. I then use the phone for a while, switching between some large apps like the browser and Google Maps, and observe which processes are staying in memory. Note that the USB debugger itself uses some memory.


I was able to get rid of some apps that were staying in memory for no apparent reason: Callbook.

I was able to get rid of some apps that were staying in memory and I didn't really need: 3G Watchdog, NetCounter

I was able to change settings in some apps so that they wouldn't stay in memory all the time: disable notifications in CyanogenMod Updater; disable 'start service on power on' in Quick Calendar

I was able to find some alternative apps that don't stay in memory all the time: now using Mode Scheduler and Timeriffic instead of Sound Manager

I'm still experimenting with different calendar widgets to see which one uses the least memory.

I noticed that the Calendar app was staying in memory. I'm not sure, but I think that disabling gmail/contacts/calendar sync fixed that. Disabling sync makes the phone faster anyway, though I then want some alternative mechanism to make sure that the phone syncs at least once a day. I've been using WiSyncPlus, set to turn on WiFi on charging, and force sync on WiFi connection. That works, though WiSyncPlus uses 15 MB or so itself. If Timeriffic or some other timer-based program that doesn't stay in memory had the ability to do a force sync, I'd prefer that.


After all that, things were greatly improved: I could keep a couple of large apps like eBuddy and the Browser in memory at the same time.

Since then I've wiped my phone and upgraded from CyanogenMod 4.2.13 to 4.2.15.1, and replicated my apps and settings as best I could remember.

I still have some large apps that seem to stay in memory:
* system_server
* android.process.acore
* com.android.phone
* com.android.inputmethod.latin
* zygote
* com.google.process.gapps

I don't recall if all of these apps were staying in memory under 4.2.13. No doubt at least some of these are necessary. (acore)

Are there any settings I can change or apps I can uninstall to stop these processes from staying in memory all the time? I don't use my phone as a phone very much; I'd be happy to get the phone app out of memory. What does gapps do? I don't need my gmail, contacts, and calendar to sync constantly. I've tried disabled the wireless network location service, but that doesn't seem to have made any difference.

Under which process does the memory usage for a widget go? I'm not seeing a separate process for some of my widgets.
I realize this is a little late to the party, but thank you for using and suggesting Timeriffic. We work hard on it and it's nice to know that people use it and love it.
 
Post Reply+
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Go to top of page...