One of the worst things on certain budget-friendly smartphones is not having quite enough RAM. This normally isn’t a big deal for many users who use their phone for the practical purposes of calling people, sending texts, and checking email. However for people who do a lot more with their devices such as gaming and heavy app usage, the shortage of RAM may be a bit more limiting. Running out of RAM can cause a lot of problems such as app crashes and large-scale lag.
While you would have a hard time physically soldering on more RAM, users of the Samsung Galaxy Y , Y duos , or lower end devices can enable a swap file and partition thanks to a method written up by XDA Senior Member CarlDeanCatabay. This is similar to the pagefile used in windows, and while it isn’t nearly as fast as RAM, it may help certain apps that require a bit more breathing room .
The method is a little complicated, and requires you to repartition your SD Card. This method will also potentially lower the lifespan of your SD Card due to the higher number of write cycles.
What is SWAP : Swap is, in short, virtual RAM. With swap, a small portion of the hard drive is set aside and used like RAM. The computer will attempt to keep as much information as possible in RAM until the RAM is full. At that point, the computer will begin moving inactive blocks of memory (called pages) to the hard disk, freeing up RAM for active processes. If one of the pages on the hard disk needs to be accessed again, it will be moved back into RAM, and a different inactive page in RAM will be moved onto the hard disk (‘swapped’). The trade off is disks and SD cards are considerably slower than physical RAM, so when something needs to be swapped, there is a noticeable performance hit.
Unlike traditional swap, Android’s Memory Manager kills inactive processes to free up memory. Android signals to the process, then the process will usually write out a small bit of specific information about its state (for example, Google Maps may write out the map view coordinates; Browser might write the URL of the page being viewed) and then the process exits. When you next access that application, it is restarted: the application is loaded from storage, and retrieves the state information that it saved when it last closed. In some applications, this makes it seem as if the application never closed at all. This is not much different from traditional swap, except that Android apps are specially programed to write out very specific information, making Android’s Memory Manager more efficient that swap.
What you need:
- MiniTool Partition Wizard for SD Card Partitioning
- A MicroSD HC 4GB or higher class 6 or class 10
- MicroSD HC Card Adapter
- A card reader (if your pc doesn’t have card reader built in | USB Mount is not adviseable)
- Swapper2 from Google Play Store [DOWNLOAD]
- ADB Shell or terminal Emulator (to check if swap is activated)
- Make sure you have BusyBox installed
How to create Swap Partition
Using MiniTool Partition Wizard
- Plug in you MicroSD HC Card to your computer using the card adapter. (Do not use USB Mount)
- Open MiniTool Partition Wizard and look for the card
- Right Click on it and select Delete Partition
- Click on Apply to Delete the Partition
- Right Click on it again and select Create Partition
Set the partitions as follows:
Create as: Primary
File System: Fat32
Partition size: as much as you want!
Label: Android-EXT3 (2nd partition is for EXT which you can use for A2SD or Link2SD)
Create as: Primary
File System: EXT3 (be it a custom kernel or ROM with EXT4 support, use EXT3 still -play safe! )
Partition size: MIN: 20MB MAX: 512MB
Label: (do not put anything)
Create as: Primary
File System: Linux Swap
Partition size: MIN: 32MB MAX: 1024MB(1GB) RECOMMENDED: 256MB
- After creating partitions, click Apply to apply changes.
- Reboot to Recovery
- Go to Advanced and Debugging
- Select partition SD card and select the partition size that delights you
How to use Swap
For ROM Supporting SWAP scripts like CyanogenMod ROMs and AOKP ROMs , no need for swapper application , just make partitions as mentioned above and swap script will do the rest work, just try to see if it is working ,if not then follow this.
For Costom ROMs and AOSP ROMs For us to be able to use swap file or swap partition, we need to use Swapper2 which you can get from Google Play.
- Download and Install Swapper2 (of course)
- After installing, open Swapper2 and navigate to Menu > Settings
Swapper preferences: (for kernels that doesn’t have swap partition support)
- Run swapper at startup (put a check)
- Swap place: /sd card/swapfile.swp (you can place it in a folder if you don’t like a messy sd card structure)
- Swap size: MIN: 10 MB MAX: 256MB RECOMMENDED: 32MB (choose any)
- Swapiness: RECOMMENDED: 10MB SYSTEM DEFAULT: 60MB MAX: 100MB (choose any)
- Safe unmount (put a check)
- Safe remount (put a check)
Advanced preferences: (for Kernels that supports swap partition only)
Use swap partition (put a check)
Swap partition: /dev/block/mmcblk1p2
- After setting preferences, press back and tap on “ON” to turn on swap. Reboot afterwards
UPDATE : AN IMPORTANT HINT:
Thanks to mr.bitman for drawing attention to this part:
For users with swap enabled kernel. When i tried swapper2 with three partitions (fat32/ext3/swap) and used your mountpoint (Swap partition: /dev/block/mmcblk1p2) swapper formatted on startup the ext3-partition (used by Link2SD or others) and I ended up with 2(!) swap-partitions and a crippeld system. Then i changed the mountpoint to: “/dev/block/mmcblk1p3″ (because it’s the third partition on the sd)..
How can I tell if swap is running?
Go to the terminal emulator – or open adb shell – and run ‘free’.
It looks like this (with anything other than zeros in the swap line), you do have swap:
in treminal emultor:
in adb shell :