[Xperia Arc General] gu5t3r:
I think the gaming performance would be the same between zram and swap, but zram would be faster for returning from games and switching between applications.

As of version ICS .587 on Arc S I can use zram on stock kernel, so I enabled zram partition of 100 MB. (stock had 60, I had 80 before 100)

When you check stats files in folder /sys/block/zram0/ and compare mem_used_total and orig_data_size you see that 100MB of zram can be filled with about 92 MB of swap data and it uses 35 MB of real RAM. (when free shows that swap is full, orig_data_size has value of about 92 MB)

Compression ratio varies from 2.3:1 to 2.9:1. (when comparing orig_data_size / mem_used_total)

So I guess when game is started, unneeded ram data is compressed in zram swap, which leaves 92-35=57 MB more for the game.

Disadvantage to real swap is (aside more use of cpu), I guess, is that the bigger the zram is, you have less of "live" ram. On my Arc S, I have 339MB of ram, so 339-35=303 MB of "live" ram.

Real swap would leave 92 MB more for the game, but game would start slower (and you would return slower to home or other apps) because ram is needed to put on sd while game is accessing data from same sd card. Another minus reason is sd degradation.

Plus reason for me is that I have Silicon Power Lifetime warranty SDHC card.

I think I will try using 100MB zram + 50MB swap, with higher priority on zram, so swap doesn't get used if it is not needed.

You can check priorities with cat /proc/swaps in console, but in smanager output data didn't get separated so I used cat /proc/swaps | tr -s "\t" " " to replace tabs that smanager didn't show with spaces.

I created script for easier swap monitoring that has output like this:

root@android:/ # exec /system/bin/sh '/mnt/sdcard/Scripts/test_swapz.sh'

========================================
/proc/sys/vm/swappiness = 20
========================================
--------------/proc/swaps---------------
Filename Type Size Used Priority
/dev/zram0 partition 102400 102388 -1
========================================
------------------free------------------
total used free
Mem: 339 313 26
-/+ buffers: 313 26
Swap: 100 99 0
========================================
-----------/sys/block/zram0/------------
compr_data_size = 31.2047 mb
mem_used_total = 32.0508 mb
orig_data_size = 91.7539 mb

compression ratio (ods/cds) = 2.9404
real compr. ratio (ods/mut) = 2.8628

saving by rcr calc = 59.8687 mb
(max possible ram saved by zram)

live real savings = 59.7031 mb
(amount of ram saved by zram)
========================================

little bit of code modification, v2 output:

root@android:/ # exec /system/bin/sh '/mnt/sdcard/Scripts/test_swapz.sh'

========================================
/proc/sys/vm/swappiness = 20
========================================
--------------/proc/swaps---------------
Filename Type Size Used Priority
/dev/zram0 partition 113664 62568 -1
========================================
------------------free------------------
total used free shrd buff
Mem: 339.9 319.5 20.3 0.0 2.5
-/+: 317.0 22.8
Swap: 111.0 61.1 49.9
========================================
-----------/sys/block/zram0/------------
compr_data_size = 19.2876 mb
mem_used_total = 23.0547 mb
orig_data_size = 53.7500 mb

compression ratio (ods/cds) = 2.7868
real compr. ratio (ods/mut) = 2.3314

saving by rcr calc = 58.1592 mb
(max possible ram saved by zram)

live real savings = 30.6953 mb
(amount of ram saved by zram)

Note that you won't see zram part if /sys/block/zram0/ directory does not exist.