[G1 Android Development] pinetreehater:
Final Results

The video, though nice, is quite academic at this point. It is through the devotion and hard work of Cyanogen et al that we get to reap the benefits of such fantastic performance enhancing tweaks.

Previously, I video taped two G1s, both with CyanogenMod 3.9.7. One had CompCache and a backing swap of 32mb. The other had stock CM image without any advanced caching. The result was that stock G1 appeared not only markedly faster, but went longer without a reload of the browser. There is some debate that the use of a backing swap skewed the results.

Some of my thoughts at the time:

It seems like the CompCache is fast initially, but after time it appears that caching is forced out of internal memory, requiring a refresh/page loads.
​

The second video was the same two units, and the same ROM. For this comparison, one phone had had a stock image and one phone had a Linux-swap of 32mb enabled. Predictably, this configuration led to the phone providing much quicker response when the Swap file was used.

For the final test, both phones were flashed to Cyanogen's 3.9.10 ROM. According to the author, he has patched a portion of the Kernel which, in theory, should provide better CompCache enabled performance.

One phone was loaded with a user.conf and userinit.sh that provided the following Linux Swap configuration [FONT=&quot]

[/FONT]

sh /system/sd/userinit.sh -s
=== user.conf ===
*** general ***
apps2sd=0
media2sd=0

*** CompCache ***
compcache_en=0
cc_memlimit=0
cc_disksize=32
cc_backingswap_en=0
cc_backingswap=/dev/block/mmcblk0p3
swappiness=60

*** Linux Swap ***
linux_swap_en=1
linux_swap_partition=/dev/block/mmcblk0p3

*** VM ***
sys_vm_en=0
page_cluster=0
laptop_mode=0
dirty_expire_centisecs=3000
dirty_writeback_centisecs=500
dirty_background_ratio=5
dirty_ratio=10

*** CPU ***
proc_cpu_en=0
scaling_min_freq=245760
scaling_max_freq=528000
sampling_rate=2000000
powersave_bias=0
up_threshold=35

=== Linux Swap status ===
Linux SWAP enabled on /dev/block/mmcblk0p3
Linux Swap: swappiness - 60(system) 60(user)
#

(this is available as Linux_swap.zip below)

The other phone was setup for ONLY compcache performance and produced the following output:

*** CompCache ***
compcache_en=1
cc_memlimit=0
cc_disksize=32
cc_backingswap_en=0
cc_backingswap=/dev/block/mmcblk0p3
swappiness=60

*** Linux Swap ***
linux_swap_en=0
linux_swap_partition=/dev/block/mmcblk0p3

*** VM ***
sys_vm_en=0
page_cluster=0
laptop_mode=0
dirty_expire_centisecs=3000
dirty_writeback_centisecs=500
dirty_background_ratio=5
dirty_ratio=10

*** CPU ***
proc_cpu_en=0
scaling_min_freq=245760
scaling_max_freq=528000
sampling_rate=2000000
powersave_bias=0
up_threshold=35

=== CompCache status ===
CompCache version 0.6+
Compcache enabled
CompCache: DiskSize 32768(system) 32768(user)
CompCache: cc_swappiness - 60(system) 60(user)

=== CompCache status output ===
DiskSize: 32768 kB
NumReads: 125
NumWrites: 798
FailedReads: 0
FailedWrites: 0
InvalidIO: 0
NotifyFree: 17
PagesDiscard: 0
ZeroPages: 58
GoodCompress: 65 %
NoCompress: 3 %
PagesStored: 723
PagesUsed: 295
OrigDataSize: 2892 kB
ComprDataSize: 1019 kB
MemUsedTotal: 1180 kB
#
#

(this is available as CompCache_0.6.zip below)

***the only tweak besides the respective caches was the changing of CPU_up_threshold from 40(stock) to 35.

Again, I used a combination of a browser loaded to Valdosta.edu and Sherpa, Camera, and Camcorder to try to cause reloads (interestingly, Imeem didn't cause reloads either...we're getting there!)

In summary, the CompCache enabled phone was marginally faster than the phone with the Linux-swap, though both types had their moments. Overall, the tweaks Cyanogen have made seem to keep the data in cache very well...even many hours and program executions later.

The Linux partition enabled phone did well, too. However, the difficulty involved in partitioning an SD (for some) and the need to employ fast type 6 SD cards (Linux swaps seem to be affected by slow SD cards more so than CompCache...although it certainly doesn't hurt) means that CompCache should be the choice for easy, reliable, advanced caching.

Seems like the only question left to answer is if a backing swap helps or hinders the compcache....

Cyanogen, I want to personally thank you for doing whatever you did to make CompCache work better...personally, the changes you made allows me to use CompCache and reclaim that repartitioned space for the swap.

I know not everyone is convinced CompCache was having problems. And to you I say, "I very glad it worked out for you". For others, myself included, Compcache ALWAYS bogged down eventually.

Compcache vs. Stock

G1 with Linux swap vs. plain CM 3.9.7 ROM

CompCache 0.6 VS Linux Swap GRAND FINALE